Release Notes for the Recording SDK

There is a new release of the Developer Center! If you'd like to check it out, please click  here

Release Notes for the Recording SDK

Overview

The Agora Recording SDK records communication and live broadcast contents based on the Agora Native SDK or/and Agora Web SDK.

Compatibility

This component package is compatible with the following SDKs:

SDK Description
The Agora Native SDK The Recording SDK is compatible with the Agora Native SDK v1.7.0 or later. If any user in the channel uses the Agora SDK v1.6, the whole channel will not be able to record.
The Agora Web SDK The Recording SDK is compatible with the Agora Web SDK v1.12.0 or later.

Known Issues and Limitations

  • When you record using an Android client, the image is turned upside down when you switch from the front-facing camera to the rear one.
  • If the user calls leaveChannel() in the channel to stop recording, the recording file ends with a period of silence decided by the idleLimitSec field set for the config when calling joinChannel().
  • The recorded voice or video files are not encrypted. To be compliant with HIPPA, you need to encrypt the disk with a disk encryption tool, such as cryptsetup.
  • The recording SDK only stores the original video passed from the client’s side. When creating the mp4 media file, the SDK adjusts the rotation once according to the rotation information noted in the uid_xxx.txt file. In other words, no matter how many times the video rotates, the Recording SDK rotates it only once according to the first rotation information found in the uid_xxx.txt file. You can change the converting script according to the rotation information in the uid_xxx.txt file to generate the rotated video. Agora plans to add a new feature that enables video rotation by the converting script in version 2.3.

v2.2.2 (Released Aug. 1, 2018)

New Functions

Note

The package you downloaded supports both Java and C++.

Improvements

  • The name of screenshots will be uid_YmdHMS_ms.jpg instead of uid_YmdHMS.jpg.
  • The transcoding script supports auto rotation.
  • The structure of the java folder is modified.

Issues Fixed

  • webm recording time abnormality
  • Memory leak
  • multi-party intercommunication bug
  • h.264 parser bug
  • A/V out of sync

v2.2.1 (Released June. 5, 2018)

New Functions

See Document Revision History for the document changes.

Note

The package you downloaded supports both Java and C++.

Improvements

  • Improved the performance of the communication mode. The number of recording channels that a system supports with the same performance has increased by 150%.
  • Improved the efficiency to find the port.
  • The time to find the port is no longer part of the idle time.

Issues Fixed

  • Port conflicts when the search for the port takes too long and exceeds the idle time. As a result, the port is not connected.

v2.2.0 (Released May 4th, 2018)

See Document Revision History for the document changes.

Note

The package you downloaded supports both Java and C++.

Issues Fixed

  • Fixed the issue of oversized logs.
  • Fixed abnormal issues that occurred when recording fast-forward videos.
  • Fixed intermittent failures.
  • Performance improvements.
  • Fixed some crashes.

v2.1.0 (Released Mar. 7, 2018)

New Functions

Function Description
Recording Mode Supported selecting auto or manual mode when joining a channel to flexibly control the recording.
Control Recording Added interfaces to unbind the operation of joining a channel and recording. If the auto-recording mode is used, the recording starts when a user joins the channel. If the manual-recording mode is used, you can control when to start and stop the recording.
Mix Raw Audio Supported the function of mixing raw audio data.
Java Recording API Supported Java APIs for recording.

Improvements

Improvement Description
Transcoding Script Supported the setting of the transcoding frame rate and resolution, either in picture-in-picture or single-stream mode.

Issues Fixed

  • Occasional recording file transcoding failures.
  • Occasionally the video screen turns upside down.
  • Occasional abnormal audio during the recording.

v2.0 (Released Nov 21st, 2017)

For 2.0 Beta documentation, see 2.0 Document Center.

  • Optimized the raw data to support various formats:
    • Modified the decodeAudio and decodeVideo parameters, and added the VideoJpgFrame struct. For details, see Recording API.
    • Modified the getAudioFrame and getVideoFrame parameters. For details, see Recording Quickstart.
  • Added the captureInterval parameter to set the time interval of the captured screenshots. For details, see Recording API and Recording Quickstart.
  • Added the streamType parameter to support different video stream types. For details, see Recording API and Recording Quickstart.
  • Added the isVideoOnly parameter. For details, see Recording API and Recording Quickstart.
  • The transcoding scripts, once used, will generate a convert.log file under the same path as the voice/video file. For details, see How to Record.
  • Added the video rotating information in UID_HHMMSSMS.txt. For details, see How to Record.

v1.3 (Released Oct 20th, 2017)

New Functions:

  • Added the mixing the audio and video recording functions by adding the mixedVideoAudio and cfgFilePath parameters in the joinChannel() API.
  • Added the function of merging the audio and video file of the same UID as one, see Play the Recording Files for details.
  • Added the getProperties() API to get the recording path immediately after recording is started before joining any channel.
  • Modified the onError and onLeaveChannel callbacks.

v1.2 (Released Aug 21, 2017)

New Functions:

  • Supported the function of getting the audio and video raw data.
  • Supported the function of detecting sexually explicit content.
  • Provided a log file, recording_sys.log, to check failures.
  • Supported the recording channel timestamp, that is, the first user who starts recording in the channel.

v1.1 (Released July 25, 2017)

New Functions:

  • Added recording at the web client side.
  • Added the real-time video mixing function.
  • Added a set of callback functions.
  • Modified the file format after transcoding.
  • Enabled the configure UDP port function.

Issues Fixed:

  • Wrong timestamps.
  • Transcoding failure.
  • Unable to playback VLC files.

v1.0.1 (Released June 27, 2017)

Fixed the crash when you set the channel profile of the recording as live broadcast.

v1.0.0 (Released June 15, 2017)

This is the first release of the Recording SDK with the following functions:

  • Communication and live broadcast scenarios.
  • Recording the voice and video of all users in a channel.
  • Recording the voice and video of all users in multiple channels simultaneously.
  • Recording the voice of all users in a channel or in multiple channels simultaneously.
  • Recording an encrypted channel if the application has integrated the Agora built-in encryption.
Is this page helpful?