实现打分

更新时间: 2025/09/09 09:59:48

打分功能是指在线 K 歌场景中,通过采集和分析用户的演唱数据,对用户的歌唱表现进行实时评分的功能。该功能需要正确配置音频帧参数以确保准确捕获和处理歌唱数据。

前提条件

已实现 加入和离开 RTC 房间

实现打分功能

  1. 在加入房间前调用 setChannelProfile 接口,设置房间场景为 kNERtcChannelProfileKaraoke 场景。

  2. 若需要使用打分功能,您需要设置 RecordingAudioFrame 的混流参数。

  • 调用 channels 接口,设置音频推流声道为 2。
  • 调用 sampleRate 接口,设置设备采样率为 48000。
  1. 接收 onNERtcEngineAudioFrameDidRecord 音频采集回调,对音频数据进行处理并打分,若使用云信曲库,请参考 歌曲评分 实现打分,若使用其他曲库,需要获取采集数据后自行实现。

示例代码如下:

//设置音频数据观测器
[[NERtcEngine sharedEngine] setAudioFrameObserver:self];

//设置音频采集回调格式
NERtcAudioFrameRequestFormat *aFormat = [[NERtcAudioFrameRequestFormat alloc] init];
aFormat.channels = 2;
aFormat.sampleRate = 48000;
aFormat.mode = kNERtcAudioFrameOpModeReadWrite;
[[NERtcEngine sharedEngine] setRecordingAudioFrameParameters:aFormat];

// 接收音频采集回调
- (void)onNERtcEngineAudioFrameDidRecord:(NERtcAudioFrame *)frame {
    //frame.data 为采集音频数据 
}
此文档是否对你有帮助?
有帮助
去反馈
  • 前提条件
  • 实现打分功能