Releases: awslabs/amazon-kinesis-video-streams-producer-c
Releases · awslabs/amazon-kinesis-video-streams-producer-c
Release 1.6.0 of the Amazon Kinesis Video C Producer SDK
What's New
- Dual-stack endpoints support and IP filter options
- Bug fixes and improvements to automated testing
Note
Dual-stack endpoints are not currently supported yet by Kinesis Video Streams.
Bug fixes/improvements
- MacOS: Fixed an issue where the Homebrew OpenSSL was used for Curl instead of the locally-built one. (#478)
- Added a new constructor with client endpoint override parameter. (#480)
Samples
- Adjusted the putFrame loop to add the fragment metadata correctly. (#475)
- Fixed a non-null-terminated string issue in the sample frames file path. (#473)
- Demonstrated using the client endpoint override parameter via environment variable (
CONTROL_PLANE_URI). (#480)
Developer Enhancements
- Adjusted the clang-format action to upload the properly formatted files, and a patch file. (#469)
- Added 16 new CI combinations: run the 4 samples on Mac, Windows, Ubuntu (22.04 and 20.04) platforms. (#473)
- Automatically run valgrind on the samples as well on every pull request. (#484)
- Added a new script to perform fragment metadata verification, which runs on every pull request. (#475)
- Added a check that the putMedia connection rotation correctly appends the fragment metadata. (#475)
Note
The development branch containing commits between this release (v1.6.0) and v1.5.4 has been archived into the release-1.6.0 branch.
Release 1.5.4 of the Amazon Kinesis Video C Producer SDK
Dependency Updates
- The PIC version has been updated from 1.1.0 to 1.2.0 (#461)
Release 1.5.3 of the Amazon Kinesis Video C Producer SDK
Release 1.5.2 of the Amazon Kinesis Video C Producer SDK
Release 1.5.1 of the Amazon Kinesis Video C Producer SDK
Bug fixes:
- Fixed timestamp precision in log lines to appropriately represent 3-digit places in millisecond portion
- Added failure check in case the expiration field in file credential provider does not satisfy the format requirement
Release 1.5.0 of the Amazon Kinesis Video C Producer SDK
What’s new:
- Provision to disable creating stream if previously created or to disallow stream creation using the SDK with the StreamInfo.StreamCaps.allowStreamCreation
- New API to create default callback provider for IoT with CURL connection and completion timeouts: createCurlIotCredentialProviderWithTimeAndTimeout , createDefaultCallbacksProviderWithIotCertificateAndTimeouts and createIotAuthCallbacksWithTimeouts
- Added support for China (Beijing) region
- New API to set up log filtering with File logging callback provider: addFileLoggerWithFilteringPlatformCallbacksProvider
Sample:
- New sample to demonstrate offline streaming mode
- Existing video only sample modified to allow codec setting to H.264 or H.265 through command line
Bug fixes:
- Logging improvements
- Added checks for empty credentials to ensure we do not start the state machine unless valid credentials are set
- Fixed user agent string to be SDK and version specific
Version bumps:
- OpenSSL updated from 1.1.1g to 1.1.1t
Release 1.4.1 of the Amazon Kinesis Video C Producer SDK
Release 1.4.0 of the Amazon Kinesis Video C Producer SDK
Platforms tested on:
- Linux
- MacOS
- Windows
- x64
- ARMv5
Release tagged at: 1204f14
What’s new:
- Logging enhancements
What's new in PIC ref: afc15aff555090424d6b92ef316116e85004a479
- Fix for potential deadlock condition
- Fix state machine related issues
Release 1.3.0 of the Amazon Kinesis Video C Producer SDK
Platforms tested on:
- Linux
- MacOS
- Windows
- x64
- ARMv5
Release tagged at: 79da5b6
What’s new:
- Support for events feature with new API putKinesisVideoEventMetadata
- New APIs to support creating StreamInfo provider with audio and video codecs
- CMake updated from 2.8 → 3.6.3
What's new in PIC ref: c8325887faa3a4a296c4367b281c778be69875b6
- Exponential back off support on redundant state machine errors.
- Support for events feature
Release 1.2.0 of the Amazon Kinesis Video C Producer SDK
Platforms tested on:
- Linux
- MacOS
- Windows
- x64
- ARMv5
Release tagged at: 99c1a8c
What’s new:
- Added ability to create authentication callbacks based on existing credentials
- Added logic to prevent unnecessary calls to curl_easy_pause to pause connection by blocking thread which waits for new data, with exponential back off, for ~600ms. curl_easy_pause incurs a 1s or more penalty on unpause so we avoid this now which in most cases results in a significant decrease in end-to-end latency.
What's new in PIC ref: https://github.com/awslabs/amazon-kinesis-video-streams-pic/tree/296adbd889bf7a193dddc65341209863bf397554
- Added public API kinesisVideoStreamSetNalAdaptationFlags to set NALU adaptation flags prior to starting the stream
- Added elementaryFrameRate to client metrics to provide consumers an accurate frame rate
- Fixed a bug which impacted a scenario where IoT Credentials fail to refresh due to bad network and the state machine would get stuck and unable to self recover.
Known Issues:
- We call curl_easy_pause from a non curl thread which is not defined behavior. Alternative is to use a curl provided callback but this incurs an unacceptable amount of latency. The solution is to move to the curl MULTI interface.