Skip to content

Commit

Permalink
80c69a4 Release note for v1.4.1
Browse files Browse the repository at this point in the history
9db77d4 update log4cplus download link
4612489 use min-install-script for java jni build
  • Loading branch information
chehefen committed May 8, 2018
1 parent 9da2019 commit 9798413
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 29 deletions.
56 changes: 29 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,19 +36,19 @@ Please install the following additional build tools before proceeding with `./in
After you've downloaded the code from GitHub, you can build it on Mac OS or Ubuntu using `./install-script` (which is inside the `kinesis-video-native-build` directory).

**Important** Change *current working directory* to the `kinesis-video-native-build` directory first. Then run the `./install-script` from that directory.

This will produce the core library, the JNI library, unit tests executable and the sample GStreamer application. The script will download and build the dependent open source components in the 'downloads' directory (within `kinesis-video-native-build` directory)and link against it.

#### Build the binaries using system versions
The bulk of the install script is building the open source dependencies. The project is based on **CMake**. So the open source components building can be skipped if the system versions can be used for linking.
The bulk of the install script is building the open source dependencies. The project is based on **CMake**. So the open source components building can be skipped if the system versions can be used for linking.

Running
Running

```
$ cmake .
$ cmake .
$ make
```
from the `kinesis-video-native-build` directory will build and link the SDK.
from the `kinesis-video-native-build` directory will build and link the SDK.
The `./min-install-script` inside the `kinesis-video-native-build` captures these steps for installing the Kinesis Video Streams Producer SDK with the system versions for linking.

#### Build the binaries using the dependent libraries from source
Expand Down Expand Up @@ -98,14 +98,14 @@ Many platforms come with a cert file with a lot of the well-known public certs i
## Install Steps for Ubuntu 17.x using apt-get
The following are the steps to install the build-time prerequisites for Ubuntu 17.x

Install **git**:
Install **git**:

```
```
$ sudo apt-get install git
$ git --version
git version 2.14.1
```
Install **cmake**:
Install **cmake**:
```
$ sudo apt-get install cmake
$ cmake --version
Expand All @@ -125,7 +125,7 @@ Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
```
Install **automake**:
Install **automake**:
```
$ sudo apt-get install automake
$ automake --version
Expand All @@ -138,7 +138,7 @@ There is NO WARRANTY, to the extent permitted by law.
Written by Tom Tromey <tromey@redhat.com>
and Alexandre Duret-Lutz <adl@gnu.org>.
```
Install **g++**:
Install **g++**:
```
$ sudo apt-get install g++
$ g++ --version
Expand All @@ -147,7 +147,7 @@ Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
```
Install **curl**:
Install **curl**:
```
$ sudo apt-get install curl
$ curl --version
Expand All @@ -156,13 +156,13 @@ Release-Date: 2017-08-14
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP UnixSockets HTTPS-proxy PSL
```
Install **pkg-config**:
Install **pkg-config**:
```
$ sudo apt-get install pkg-config
$ pkg-config --version
0.29.1
```
Install **flex**:
Install **flex**:
```
$ sudo apt-get install flex
$ flex --version
Expand All @@ -179,19 +179,19 @@ Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
```
Install **Open JDK**:
Install **Open JDK**:
```
$ sudo apt-get install openjdk-8-jdk
$ java -showversion
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.17.10.2-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
```
Set **JAVA_HOME** environment variable:
Set **JAVA_HOME** environment variable:
```
$ export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
```
Run the build script: (within `kinesis-video-native-build` folder)
Run the build script: (within `kinesis-video-native-build` folder)
```
./install-script
```
Expand All @@ -217,7 +217,7 @@ The GStreamer demo app will be built in `kinesis_video_gstreamer_sample_app` in
Usage: AWS_ACCESS_KEY_ID=<SAMPLEKEY> AWS_SECRET_ACCESS_KEY=<SAMPLESECRET> ./kinesis_video_gstreamer_sample_app -w <width> -h <height> -f <framerate> -b <bitrateInKBPS> <my_stream_name>
```
* **A.** If resolution is provided then the sample will try to check if the camera supports that resolution. If it does detect that the camera can supprt the resolution supplied in command line, then streaming starts; else, it will fail with an error msg `Resolution not supported`

* **B.** If no resolution is specified, the demo will try to use these three resolutions **1920x1080, 1280x720 and 640x480** in that order (highest resolution first) and will **start streaming** once the camera supported resolution is detected.

#### GStreamer RTSP demo application
Expand All @@ -244,7 +244,7 @@ Define `HEAP_DEBUG` and `LOG_STREAMING` C-defines by uncommenting the appropriat

#### Additional Examples

For additional examples on using Kinesis Video Streams Java SDK and Kinesis Video Streams Parsing Library refer:
For additional examples on using Kinesis Video Streams Java SDK and Kinesis Video Streams Parsing Library refer:

##### [Kinesis Video Streams Producer Java SDK](https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-java/blob/master/README.md)
##### [Kinesis Video Streams Parser Library](https://github.com/aws/amazon-kinesis-video-streams-parser-library/blob/master/README.md)
Expand All @@ -257,15 +257,15 @@ For additional examples on using Kinesis Video Streams Java SDK and Kinesis Vid
### Troubleshooting

##### Ubuntu builds link issues
Ubuntu bulds link against the system versions of the open source component libraries or missing .so files (./start in the kinesis-video-native-build directory shows linkage against system versions of the open source libraries).We are working on providing fix but the immediate steps to remedy is to run
Ubuntu bulds link against the system versions of the open source component libraries or missing .so files (./start in the kinesis-video-native-build directory shows linkage against system versions of the open source libraries).We are working on providing fix but the immediate steps to remedy is to run

```
rm -rf ./kinesis-video-native-build/CMakeCache.txt ./kinesis-video-native-build/CMakeFiles
```
and run
```
and run
```
./install-script
```
```
to rebuild and re-link the project only.

##### Library not found error when running the demo application
Expand All @@ -291,7 +291,7 @@ $ls /dev/video*
{not found}
```
```
$vcgencmd get_camera
$vcgencmd get_camera
```
Example output:
```
Expand All @@ -305,7 +305,7 @@ if the driver does not detect the camera then
$sudo modprobe bcm2835-v4l2
```
```
$ls /dev/video*
$ls /dev/video*
{lists the device}
```

Expand All @@ -320,7 +320,7 @@ $ sudo reboot
* Raspberry PI GStreamer assertion on gst_value_set_fraction_range_full: assertion 'gst_util_fraction_compare (numerator_start, denominator_start, numerator_end, denominator_end) < 0' failed. The uv4l service running in the background. Kill the service and restart the sample app.


##### Raspberry PI seg fauls after some time running on `libx264.so`.
##### Raspberry PI seg fauls after some time running on `libx264.so`.
Rebuilding the `libx264.so` library and **re-linking the demo application** fixes the issue.

##### Curl SSL issue - "unable to get local issuer certificate"
Expand All @@ -341,13 +341,15 @@ make install


## Release Notes
#### Release 1.4.1 (8th May 2018)
* Update log4cplus download link in install-script
#### Release 1.4.0 (25th April 2018)
* Fix for crash caused by latest Mac tool chain issue
* Fix for callbacks returning incorrect custom data in gstreamer sample app
* Support for custom logger
* Fix for multiple callbacks when triggering connection staleness
#### Release 1.3.1 (5th April 2018)
* Fixed video source negotiation error caused by camera with fractional fps
* Fixed video source negotiation error caused by camera with fractional fps
* Docker suport for RTSP streaming
#### Release 1.3.0 (15th March 2018)
* Fixed producer intermittent termination issue for some edge cases involving re-streaming on error.
Expand Down
2 changes: 1 addition & 1 deletion kinesis-video-native-build/install-script
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ if [ ! -f $DOWNLOADS/local/lib/liblog4cplus.dylib ]; then
echo "log4cplus lib not found. Installing"
if [ ! -f $DOWNLOADS/log4cplus-1.2.0.tar.xz ]; then
cd $DOWNLOADS
curl -L "https://versaweb.dl.sourceforge.net/project/log4cplus/log4cplus-stable/1.2.0/log4cplus-1.2.0.tar.xz" -o "log4cplus-1.2.0.tar.xz"
curl -L "https://sourceforge.net/projects/log4cplus/files/log4cplus-stable/1.2.0/log4cplus-1.2.0.tar.xz" -o "log4cplus-1.2.0.tar.xz"
fi
cd $DOWNLOADS
tar -xvf log4cplus-1.2.0.tar.xz
Expand Down
2 changes: 1 addition & 1 deletion kinesis-video-native-build/min-install-script
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ if [ ! -f $DOWNLOADS/local/lib/liblog4cplus.dylib ]; then
echo "log4cplus lib not found. Installing"
if [ ! -f $DOWNLOADS/log4cplus-1.2.0.tar.xz ]; then
cd $DOWNLOADS
curl -L "https://versaweb.dl.sourceforge.net/project/log4cplus/log4cplus-stable/1.2.0/log4cplus-1.2.0.tar.xz" -o "log4cplus-1.2.0.tar.xz"
curl -L "https://sourceforge.net/projects/log4cplus/files/log4cplus-stable/1.2.0/log4cplus-1.2.0.tar.xz" -o "log4cplus-1.2.0.tar.xz"
fi
cd $DOWNLOADS
tar -xvf log4cplus-1.2.0.tar.xz
Expand Down

0 comments on commit 9798413

Please sign in to comment.