Download SDK
The Local Server Recording SDK is provided by ZEGOCLOUD. You can obtain the SDK for Linux clients on this page. For compliance matters, see the ZEGOCLOUD Privacy Policy.
Download locally Linux - C++
Improvements
- Optimized the SDK package structure and integration process
- Optimized the Client API comments and removed some APIs: UploadLog, SetUseTestEnv
Bug fixes
- Fixed some known issues
Bug fixes
Fixed an occasional issue where the DNS query thread could get stuck, which might cause recording to fail.
New features
- Optimized the authentication method
In versions ga01596a1c8 and above, do not pass AppSign when initializing the SDK. Before logging in to a room, you must pass the Token to the SDK through the SetToken API. For details, see Authenticate with Token.
In versions earlier than ga01596a1c8, AppSign must be passed when initializing the SDK.
New features
-
Adapted to the overall H.265 solution
The complete H.265 encoding/decoding solution is now available, applicable to single-host live streaming and multi-host interactive live streaming scenarios. This plugin mainly adapts to the H.265 automatic fallback (H.265 falling back to H.264) capability of the RTC product, and two files (one H.265 file and one H.264 file) are generated during recording.
-
Supports taking screenshots of specified streams.
-
Supports capturing audio input sources during external capture.
-
During mixed-stream recording, the following features are added:
- Supports setting image watermarks.
- Supports pausing/resuming recording during mixed-stream recording.
- Supports setting a background image for specified streams during mixed-stream recording.
Deprecations
To make environment configuration easier for developers, the test environment has been deprecated, and the production environment is used uniformly. In versions gd2ef35d43f and above, the original [SetUseTestEnv] API for setting whether to use the test environment is deprecated. Developers no longer need to set environment information and can use it directly.
New features
- Supports outputting image watermarks and text watermarks in the mixed-stream view.
For related APIs, see UpdateImageWaterMarkConfig
New features
-
Recording supports the m3u8 file format.
-
Supports setting the layout mode (cropping or black bars).
-
The stream update callback adds the stream creation time information.
-
Supports setting the bitrate for externally input video data.
-
Supports using externally input video data as the recording input source.
Improvements
-
Corrected the video timestamps of mixed-stream recording, making them more uniform and aligned with the frame rate.
-
Mixed-stream recording supports recording more streams, fixing the previous bottleneck issue.
-
Optimized MP3 format recording so that silent data can be padded.
-
Optimized the issue where domain name resolution might take too long.
Bug fixes
-
Fixed the issue where the recorded file had no sound after the audio format of the input stream was switched during single-stream recording.
-
Increased the data cache, fixing the issue where the process could get stuck when system I/O took a long time.
-
Fixed the issue where OnRecordEnd might be triggered multiple times.
-
Fixed the issue where no recording failure callback was triggered when single-stream recording exceeded the upper limit.
-
Fixed the crash issue caused by duplicate input stream IDs during mixed-stream recording.
-
Fixed the issue where the room could not be exited.
New features
- Supports generating the MP3 file corresponding to the mixed stream while recording single streams and the mixed stream at the same time.
- Supports recording video and audio separately.
Bug fixes
- Fixed the bug where, without logging out of the room, stopping the first recording and then starting the second recording caused the second recorded file to have no sound.
New features
- Login authentication
Added the SetToken API for setting custom authentication information to verify the legitimacy of the user upon login. - Setting user information
Added the SetUser API for setting the username and related information. - Obtaining the absolute timestamp when recording starts
In online education scenarios, the teacher may publish the live stream while editing the whiteboard at the same time. You can use the ZEGO recording SDK to record the teacher's live audio/video stream and obtain the absolute timestamp relative to the teacher's client when recording starts, which is used to align the teacher's audio/video recording files with the whiteboard data.
(1) Added the onRecvMediaSideInfo callback, through which the media side information sent by the publishing client can be received.
(2) Added the GetRecordLastMediaSideTime API to get the time interval between the most recently received media side information packet and the first recorded packet.
After the publishing client starts publishing, it periodically sends media side information (with the current absolute timestamp filled in). After the recording client receives it, the parsed timestamp minus the time returned by GetRecordLastMediaSideTime is the absolute timestamp when recording starts.
- Obtaining information about recording files
Added the GetRecordStatus API for getting the storage path, recorded duration, and file size of the recording file. - Added the ability to set watermark attributes such as position, font color, and background color.
Bug fixes
- Fixed the bug where no error callback was triggered when pulling the flexible configuration failed.
- Fixed the bug where the LoginRoom callback returned success when the InitSDK call failed.
- When a stream is removed from the mixed-stream input, the OnMixStreamRecordUpdate callback is triggered.
Bug fixes
- Fixed the issue where the error code in the callback was inaccurate when stopping recording after stream pulling failed.
- Fixed the issue where the duration of the recording file was inaccurate when stream interruption occurred during single-stream recording.
Improvements
- Added the OnSeek callback. Since the data returned by the OnStreamRecordData callback is not sequential, you can adjust the write offset according to the
OnSeekcallback when saving the recorded data, to ensure the recorded data is a continuous audio/video segment. - Mixed-stream recording supports automatic blank video filling.
- Fixed other known issues.
Improvements
- The ZegoMixStreamRecordConfig parameter of the mixed-stream recording StartRecordMixStream API adds the
bGenerateMp3configuration, supporting generating a separate audio file while generating the video file, that is, generating both MP3 and MP4 files.
**API **cleanup
The following API changes were made in version g99f5b93e.
Changes:
