please select
Conference
  • Overview
  • Web
    • Run Sample Demo
    • Integration
    • UI Customization
    • Conference Control
    • In-Conference Chat
    • On-Cloud Recording
    • AI Noise Suppression
    • Robot Streaming
    • Virtual Background
    • More Features
      • Floating Window
      • Text Watermark
    • API Documentation
      • RoomKit API
      • RoomEngine API
        • API Overview
        • TUIRoomEngine
        • TUIRoomEvents
        • TUIRoomEngine Defines
    • FAQs
  • iOS
    • Run Sample Demo
    • Integration
    • UI Customization
    • Conference Control
    • In-Conference Chat
    • On-Cloud Recording
    • AI Noise Suppression
    • Robot Streaming
    • More Features
      • Floating Window
    • API Documentation
      • RoomKit API
      • RoomEngine API
        • API Overview
        • TUIRoomEngine
        • TUIRoomObserver
        • Type Definition
    • FAQs
  • Android
    • Run Sample Demo
    • Integration
    • UI Customization
    • Conference Control
    • In-Conference Chat
    • On-Cloud Recording
    • AI Noise Suppression
    • Robot Streaming
    • More Features
      • Floating Window
    • API Documentation
      • RoomKit API
      • RoomEngine API
        • API Overview
        • TUIRoomEngine
        • TUIRoomObserver
        • Type Definition
    • FAQs
  • Electron
    • Run Sample Demo
    • Integration
    • UI Customization
    • Conference Control
    • In-Conference Chat
    • On-Cloud Recording
    • AI Noise Suppression
    • Robot Streaming
    • More Features
      • Floating Window
      • Text Watermark
    • API Documentation
      • RoomKit API
      • RoomEngine API
        • API Overview
        • TUIRoomEvent
        • TUIRoomEngine
        • TUIRoomEngine Defines
    • FAQs
  • Flutter
    • Run Sample Demo
    • Integration
    • UI Customization
    • Conference Control
    • In-Conference Chat
    • On-Cloud Recording
    • AI Noise Suppression
    • Robot Streaming
    • More Features
      • Floating Window
    • API Documentation
      • RoomKit API
      • RoomEngine API
        • API Overview
        • TUIRoomEngine
        • TUIRoomObserver
        • Type Definition
    • FAQs
  • Overview
    • Overview
  • Activate the Service
  • Pricing
    • Free Minutes
    • Conference Monthly Packages
    • Billing Explanation for Subscription Package Duration
    • Pay-as-you-go
      • Billing of Audio and Video Duration
      • Billing of On-Cloud Recording and Recording Delivery
      • Billing of MixTranscoding and Relay to CDN
  • Server APIs
    • REST API
      • RESTful API Overview
      • RESTful API List
      • Room Management
        • Create a Room
        • Destroy a Room
        • Update the Room Information
        • Get the Room Information
      • User Management
        • Get the Room Member List
        • Update the Room Member Information
        • Change the Room Ownership
        • Mark Room Members
        • Ban Room Members
        • Unban Room Members
        • Get the Banned Room Member List
        • Remove Room Member
      • Seat Management
        • Get the Seat List
        • Pick User on the Seat
        • Kick User off the Seat
        • Lock the Seat
    • Third-Party Callback
      • Callback Overview
      • Callback Command List
      • Callback Configuration
        • Query Callback Configuration
        • Create Callback Configuration
        • Update Callback Configuration
        • Delete Callback Configuration
      • Room Related
        • After a Room Is Created
        • After a Room Is Destroyed
        • After the Room Information Is Updated
      • User Related
        • After a Room Is Entered
        • After a Room Is Left
      • Seat Connection Related
        • After the Seat List Is Changed
  • Error Code
Conference

On-Cloud Recording

This article introduces how to quickly use TUIRoomKit's cloud recording feature to help developers achieve diversified needs such as archiving and reviewing important content in video conferencing, online education, live interactive, and other scenarios. We provide two solutions for you to choose from: Automatic Recording and RESTful API-Based Recording.

Scheme 1. Automatic Recording (Recommended)

We recommend using the automatic recording solution, which does not require the business side to start and stop the recording. The Tencent Cloud Real-Time Audio and Video backend manages the recording tasks, and it automatically records when there is audio and video stream uploading during the call. The access process is fast and simple. You can complete it in the following steps:
1. Find the application of the target SDKAppId in Application Management in the TRTC console and enter the Advanced Feature page.
2. In the Advanced Function configuration page, you can see the option for On-cloud recording configuration. Click on Global Auto-Recording to enter the configuration popup window.



3. In the configuration popup window,You can customize the recording template as needed. 。



Note:
Global automatic recording only supports single-stream recording (i.e., each host records a single file). Once enabled, it only applies to newly created rooms and does not take effect for rooms created before the automatic recording feature is enabled. If you need to record the screen after mixing multiple streams, please use the RESTful API-Based recording.
Global automatic recording supports recording up to 25 hosts in a room. If there are more than 25 hosts, they will be sorted by the time they enter the room, and the first 25 hosts will be recorded (if you need to record more than 25 hosts in a single stream, please refer to the RESTful API-Based recording).
After enabling the global automatic recording feature, the automatic start recording task will be triggered after the conference starts and there is audio and video uploading. After the conference ends, the recording will automatically stop. If you leave the room abnormally due to network or other situations, our recording backend will automatically stop the recording task according to the MaxIdleTime value you set (idle waiting time, default 5s) to avoid causing additional billing losses.

Scheme 2. RESTful API-Based Recording

If the automatic recording scheme doesn't meet your needs, you can also use the more flexible RESTful API-based recording scheme. In this scheme, you can record and subscribe to a specified anchor in the room, customize the layout of mixed streams, and update the layout and subscription during recording. However, using its features requires using it together with the business backend service and performing complex integration operations:
1. Find the application of the target SDKAppId in Application Management in the TRTC console and enter the Advanced Feature page.
2. On the Advanced Features configuration page, you can see the options for cloud recording configuration. Enable the cloud recording feature. Here, it is recommended to turn off Global Automatic Recording, which defaults to Manual Custom Recording, that is, RESTful API-based recording mode.



3. Afterward, you can call the REST API (CreateCloudRecording) to start the cloud recording. Here, it is recommended that you can listen to the notification events of TUIRoomObserver and start recording when the meeting starts.
Note:
Under manual recording, you can go to the console to configure the callback address to receive recording callback events, please see Recording Callback Description.




FAQs

1. Can the two recording solutions be used simultaneously?

The Automatic Recording Solution and REST API Recording Solution do not conflict and can be used simultaneously. However, two recording files and fees will be generated.

2. How do I view recorded files?

Log in to the VOD console, select Video/Audio Management on the left sidebar, click Search by prefix above the list, select Search by prefix, and enter the keyword in the search box. The recording filenames are in the following formats:
The filename format of an MP4 single-stream recording file: <SdkAppId>_<RoomId>_UserId_s_<UserId>_UserId_e_<MediaId>_<Index>.mp4
The filename format of an MP4 mixed-stream recording file: <SdkAppId>_<RoomId>_<Index>.mp4