- Optimized the authentication method
For versions ga01596a1c8 and above, AppSign is not passed when initializing the SDK, and the Token must be passed to the SDK through the SetCustomToken interface before logging in to the room. For details, please refer to Using Token Authentication.
For versions before ga01596a1c8, AppSign needs to be passed in when initializing the SDK.
- Adapt to H.265 solution
The complete H.265 encoding and decoding solution is launched, which is suitable for single-host live broadcast and multi-person interactive live broadcast scenarios. This plug-in is mainly adapted to the H.265 automatic downgrade (H.254 downgrade to H.264) capability of RTC products, and two files (one for H.254 and one for H.264) will be generated during Recording.
- Supports taking Snapshot of specified streams.
- When external capture, support capture Audio input source.
- During the Stream Mixing stream Recording process, the following functions are added:
- Support setting image Watermark.
- During Stream Mixing stream Recording, support pause/resume Recording .
- When Recording Stream Mixing streams, you can set a background image for the specified stream.
In order to reduce developers' understanding of the environment, the test environment was abandoned and the environment was used uniformly. In
gd2ef35d43f and above versions, the original [SetUseTestEnv] setting is abandoned to set whether to use the test environment interface. Developers can use it directly without setting the environment information.
- Support mixed-flow screen output image watermark and text watermark.
For related API, please refer to UpdateImageWaterMarkConfig
Recording supports m3u8 file format.
Support setting layout mode (cropped or black border).
Stream update callback adds stream creation time information.
Support external input video data setting bit rate.
Support external input video data as recording input source.
Time stamp correction of mixed stream recording video, more uniform, aligned with the frame rate.
Mixed stream recording supports more stream recording and fixes the previous bottleneck problem.
Optimized recording in MP3 format to fill mute data.
Optimized domain name resolution may take too long.
Fix the problem that the audio format of single-stream recording input stream is switched and the sound of the recording file is not available.
Increase the data cache, fix the problem that caused the system to get stuck when the IO time is long.
Fix the problem that OnRecordEnd may be called back multiple times.
Fix the problem that there is no callback recording failure when the single-stream recording exceeds the upper limit.
Fix the crash caused by inputting duplicate stream ID during mixed stream recording.
Fix the problem of unable to exit the room.
- Supports simultaneous generation of MP3 files corresponding to the mixed stream when single stream and mixed stream are recorded at the same time.
- Support separate recording of video and audio.
- Fix the bug that if you stop recording after the first recording and then start the second recording without logging out of the room, there will be no sound in the second recording file.
Login authentication function Added
SetCustomTokeninterface, used to set custom authentication information to verify the legitimacy of the user when logging in.
Set user information Added
SetUserinterface for setting user name related information.
Get the absolute timestamp of the start of the recording In online education scenarios, there may be cases where the teacher’s live stream is pushed and the whiteboard is edited at the same time. The customer can record the teacher’s live audio and video stream through the instant recording SDK, and obtain the absolute timestamp of the teacher when the recording starts, which is used for the teacher’s audio and video Alignment processing of recorded files and whiteboard data. (1) Added
onRecvMediaSideInfocallback, which can be sent to the media to receive secondary push information. (2) Add the
GetRecordLastMediaSideTimeinterface to get the time interval between the first received media secondary information packet and the first recording.
The push end periodically sends the secondary media information (fill in the current absolute timestamp) after starting the push, and after receiving it, the recording end subtracts the parsed timestamp from the time returned by
GetRecordLastMediaSideTimeto get the start recording Absolute timestamp.
Get information about the recording file Added
GetRecordStatusinterface to obtain the storage path, recorded duration, and file size of the recording file.
Added the function of setting watermark setting position, font color, and background color properties.
- Fix the bug that the error will not be called back when the flexible configuration fails to be pulled.
InitSDKwhen it fails, call
- When a stream is deleted in the mixed stream input, call back
- Fixed the problem of inaccurate callback error code when recording stopped after streaming failed.
- Fix the problem of inaccurate recording file duration when the stream is interrupted during single-stream recording.
OnStreamRecordDatacallback data is not the order in which to store recorded When data is being recorded, the offset position of the written data can be adjusted according to the
OnSeekcallback to ensure that the recorded data is a continuous audio and video.
- Mixed stream recording supports auto-fill video.
- Fix other known issues.
- Francis recorded
bGenerateMp3new configuration parameters, generate support Separate audio files are generated at the same time as the video files, that is, Mp3 and Mp4 files are generated at the same time.
The API changes in the
g99f5b93e version are as follows.