This document describes how to integrate the GME server-side recording feature through custom recording.
GME provides server-side recording capabilities for voice chat audio streams to help you implement various scenarios, including content retention, management, and reproduction. In full recording mode, you can record all voice chat rooms in the application. In custom recording mode, you can record the specified room. In both recording modes, you can record the mixed stream by room or single stream by user. Recording files will be stored in COS under your account.
This document describes how to develop and integrate custom recording. To enable full recording for your application, see Full Recording.
Note:
- Using GME's server-side recording feature will incur recording service fees. Billing for this feature at Tencent Cloud International will officially start on April 1, 2023. For billing details, see Purchase Guide.
- Recording files will be stored in COS under your account, and COS bills will be generated based on your specific usage information such as storage volume, duration, and access frequency. For billing details, see Billing Overview.
You can specify RoomID to record the mixed stream or a user in a room to record a single stream in the server API.
For the ID of the room to be recorded, you can specify players to be recorded in a allowlist and players not to be recorded in a blocklist through server API parameters.
StartRecord() Starts recording
This API is used to specify single-stream recording or mixed-stream recording, RoomID
of the room to be recorded, and the subscribed allowlist/blocklist of user IDs.
StopRecord() Ends recording
This API is used to end recording for a taskid
. If you don't record the taskid
, you can use DescribeTaskInfo()
to get the taskid
of the ongoing recording task in the specified room.
ModifyRecordInfo() Updates the recording information
This API is used to update the recording information of a taskid
such as recording type and subscribed allowlist/blocklist of user IDs. If you don't record the taskid
, you can use DescribeTaskInfo()
to get the taskid
of the ongoing recording task in the specified room.
DescribeTaskInfo() Queries the room recording information
This API is used to query the recording information of the specified room such as taskid
of the ongoing recording task and subscribed allowlist/blocklist of user IDs.
DescribeRecordInfo() Queries the recording task information
This API is used to query the task information of a taskid
such as recording type, recorded room ID, recorded user ID, and recording file information.
With GME's server-side recording, recording files will be stored in the specified bucket in COS under your account. You need to specify the bucket region. For the specific available regions, see Regions and Access Endpoints.
bizid: GME application ID, which can be obtained in the GME console.
roomid: Voice chat room ID, which is defined and passed in to the GME SDK when you use the voice chat service.
userid: Player ID, which is defined and passed in to the GME SDK when you use the voice chat service.
taskid: Recording task ID, which is generated by the GME recording service. Each recording task has a unique task ID.
id: Serial number of a recording task segment, which starts from 0
.
Log in to the GME console, click Service Management on the left sidebar, locate the target application, and click Set to enter the Details page.
In the Voice Recording Service section, click Modify and select Enable.
When you activate the recording service for the first time, GME will request access to your COS service. You need to grant the access in the pop-up window to activate the server-side recording service.
Click Bind next to Recording File Bucket.
In the Bind Bucket pop-up window, you can bind an existing COS bucket (created in the COS console in advance) or create a bucket.
After setting the above configuration items, click Save, and the recording service will be activated. If you no longer need the service, select Disable for the recording service in the console to avoid incurring additional fees.
If a callback URL is configured in step 1, you can receive recording task event callbacks.
You need to call relevant APIs based on your actual business needs. When designing the call time sequence and process, note that:
RoomId
only. If the specified RoomId
doesn't exist, the recording task will fail to be created.An audio file can be generated in several minutes after a recording task stops. You need to log in to the COS console to view and manage recording files.
Was this page helpful?