Skip to content

Releases: awslabs/amazon-kinesis-video-streams-producer-sdk-cpp

Release 3.4.2 of the Amazon Kinesis Video C++ Producer SDK

10 Oct 21:20
7acf272
Compare
Choose a tag to compare

Release 3.4.1 of the Amazon Kinesis Video C++ Producer SDK

05 Sep 18:46
8e59b31
Compare
Choose a tag to compare

Bug fixes:

  • Fixed timestamp precision in log lines to appropriately represent 3-digit places in millisecond portion

Release 3.4.0 of the Amazon Kinesis Video C++ Producer SDK

25 Aug 21:07
072ed19
Compare
Choose a tag to compare

What’s new:

  • Added install to CMake to allow using CPP SDK as a dependency in other projects
  • Added support for China (Beijing) region
  • kvssink specific improvements:
    • New signal stream-client-metric to get client and stream metrics. Ensure to enable this feature through the get-kvs-metrics property
    • New signal stream-error to get error codes returned while streaming. This gives application more control over reacting to non-recoverable errors
    • New signal fragment-ack to listen in on incoming fragment ACKs. Useful to track if the fragments are getting persisted and relevant application decision making
    • Allow configuring timeout values while stopping streaming through the stop-stream-timeout property
    • Allow backfilling support through the use-original-pts property for offline streaming mode
    • Disable stream creation through SDK if it does not exist through the allow-create-stream property
    • Allow user agent configuration through the the user-agent property
    • Allow setting CURL connection and completion timeouts for service call via connection-timeout and completion-timeout
    • Allow setting CURL connection and completion timeouts for IoT credential provider as part of iot-certificate property. Add connection-timeout and completion-timeout attributes within the iot-certificate property

Sample:

  • New gstreamer sample demonstrating use of kvssink : kvssink_gstreamer_sample

Bug fixes

  • Fixed user agent string to be SDK and version specific
  • Enable API result caching by default
  • Allow stopping of gstreamer pipeline in the middle of a run as a method to support event reactions

Version bumps:

  • OpenSSL updated from 1.1.1g to 1.1.1t
  • Log4cplus update from 1.2.2 to 2.0.1

Release 3.3.1 of the Amazon Kinesis Video C++ Producer SDK

21 May 03:17
70f74f1
Compare
Choose a tag to compare

Release 3.3.1 of the Amazon Kinesis Video C++ Producer SDK

Platforms tested on

  • Linux
  • Windows
  • MacOS

Release tagged at: 70f74f1

Whats new:

Changes in the JNI layer now allow Java SDK users to

  • set automaticStreamingFlags
  • set storePressurePolicy

Changes in Producer C: 79da5b6d6ad67560cc08530f967e9187a6d1c594

  • Resetting stream will not purge the API caching entries

PIC Commit: c8325887faa3a4a296c4367b281c778be69875b6

Release 3.3.0 of the Amazon Kinesis Video C++ Producer SDK

27 Mar 16:34
2b343c9
Compare
Choose a tag to compare

Platforms tested on

  • Linux
  • Windows
  • MacOS

Release tagged at: 2b343c9 (2b343c9)
Whats new:

  • New API putEventMetadata for events feature
  • Updated sample to demonstrate putEventMetadata()
  • CMake updated from 2.8 → 3.6.3
  • IOT_THING_NAME supported in kvssink
  • File logging feature exposed to Producer Java SDK via JNI

Changes in Producer C: 79da5b6d6ad67560cc08530f967e9187a6d1c594

  • New APIs to support creating StreamInfo provider with audio and video codecs

Changes in PIC Commit: c8325887faa3a4a296c4367b281c778be69875b6 (awslabs/amazon-kinesis-video-streams-pic@c832588)

  • Exponential backoff support on redundant state machine errors.
  • Support for events feature

Release 3.2.0 of the Amazon Kinesis Video C++ Producer SDK

19 Jul 21:09
00ba9cf
Compare
Choose a tag to compare

Platforms tested on

Linux
Windows
MacOS

Release tagged at: 00ba9cf

Whats new:

  • Expose new property elementaryFrameRate to provide consumers an accurate frame rate measurement.

Bug fixes:

  • Fix potential memory leak issues with kvssink GStreamer plugin

Changes in Producer C: 99c1a8cd8cec88f99c9c4ce3944b53ae341d1491

  • 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.

Changes in PIC Commit: 296adbd889bf7a193dddc65341209863bf397554 (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.

Release 3.1.1 of the Amazon Kinesis Video C++ Producer SDK

23 Feb 18:55
2d653a2
Compare
Choose a tag to compare

Release 3.1.1 of the Amazon Kinesis Video C++ Producer SDK

Platforms tested on

Linux
Windows
MacOS

Release tagged at: 2d653a2

Whats new:

  • Introduced a new kvssink property disable-buffer-clipping to cater to some src/mux elements that produce non-standard segment start times
  • Added unit test for resetting and re-creating the stream
  • Added overloaded constructors for supplying the caching mode

Bug fixes:

  • Appropriately set frame order mode for intermittent producer scenario in multi track case

Changes in Producer C: f2a97fe6eaf78cbffd46ccfa5994bee2bebf99bf

  • Resetting stream will not purge the API caching entries

PIC Commit: df42dddc1d421d1e6bc47d5ebf7cd085446cbb69

Release 3.1.0 of the Amazon Kinesis Video C++ Producer SDK

03 Feb 21:27
2c80f14
Compare
Choose a tag to compare

Platforms tested on

  • Linux
  • Windows
  • MacOS

Release tagged at: #2c80f148a4817c1e9dd3226c53ed091fe64b49c4

Whats new:

  • Using v1.1.0 of producer C SDK
  • Build and Travis CI run improvements, removing sub-modules
  • Added developmer mini-documentation
  • Fixes in test, samples and JNI
  • Improved test coverage
  • Minor usability improvements

Changes in Producer C: (Commit d1095356712729d0489e56d1d0e27f5ce0a29fad)

  • Credential provider fixes and exposing targeted status codes on failures
  • Build and Travis CI run improvements, removing sub-modules
  • Added startup latency measure in the samples
  • MbedTLS support in common library
  • Continuous retry callbacks retry recovery on errors raised also from common library
  • Various stability and test fixes
  • Doxygen support
  • Clang format and enforcement
  • Improved test coverage

Changes in PIC: (Commit: df42dddc1d421d1e6bc47d5ebf7cd085446cbb69)

  • Automatic intermittent producer scenario support
  • File-backed content store implementation
  • Handling known bad encoder errors in NAL adaptation
  • Improvements in supporting different types of SPS NALs in H264 and H265
  • Fixing width and height extraction from SPS when chroma format is 4:4:2 and 4:4:4 with separate plane
  • Added IDR_N_LP processing in H265
  • Skipping non-Key-frame frames on start
  • Skipping non-Key-frame frames in the fragment on dropped frame
  • Skipping non-Key-frame frames after EoFR scenario
  • Fixes in recovery logic on pressure in an intermittent producer scenario to reduce INVALID_MKV_DATA error rate
  • Blocking shutdown for TimerQueue to solve potential data race conditions in the caller
  • Improved logging, reducing spew from control status codes
  • Realtime clock implementation and usage in WAIT functionality
  • File logger logic implementation in PIC
  • Re-alloc implementation fixes in instrumented allocators
  • Data race condition fixes in Streams array processing
  • Memory leak fixes in an edge case with EoFR
  • Various bug fixes for edge cases and stability
  • Clang format and enforcement
  • TSAN compliance in PIC
  • Improved test coverage

Known work items:

  • Doxygen support
  • GStreamer integration with event notifications

Release 3.0.0 (14th May 2020)

14 May 18:29
Compare
Choose a tag to compare

Platforms tested on

  • Linux
  • Windows
  • MacOS

Release tagged at: d4886cb

Whats new:

Changes in Producer C: (Commit a1aeef0827faf838c9f1df66083db1c3356fc1e0)

  • Tested on Windows
  • API Call caching support
  • MBedTLS support
  • Full TravisCI integration

Changes in PIC: (Commit: 8f0db7900d6e847ae8072ae5e8205ef81551c685)

  • Added logging of stream info when creating stream
  • Content view drops entire fragment when overflown
  • Added dropping tail frames policy on storage OOM
  • Fixed THREAD_SLEEP logic
  • Support for instrumented allocators to capture potential memory leaks while running an application
  • Expanded stream and client metrics - new stream metrics version is 1.
  • PIC exclusively tested on Windows
  • Build system enhanced
  • Full TravisCI integration

Known work items:

Release 2.1.0 of the Amazon Kinesis Video Streams Producer SDK for C++

04 Dec 00:20
Compare
Choose a tag to compare
  • Fix bug where iot and file credentials failed to get cycled promptly.
  • Reworked stream and client shutdown flow.
  • Other minor stability and bug fixes.