实现打分
更新时间: 2025/09/09 09:59:48
打分功能是指在线 K 歌场景中,通过采集和分析用户的演唱数据,对用户的歌唱表现进行实时评分的功能。该功能需要正确配置音频帧参数以确保准确捕获和处理歌唱数据。
前提条件
已实现 加入和离开 RTC 房间。
实现打分功能
-
在加入房间前调用
setChannelProfile
接口,设置房间场景为kNERtcChannelProfileKaraoke
场景。 -
若需要使用打分功能,您需要设置
RecordingAudioFrame
的混流参数。
- 调用
channels
接口,设置音频推流声道为 2。 - 调用
sampleRate
接口,设置设备采样率为 48000。
- 接收
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 为采集音频数据
}
此文档是否对你有帮助?