更新时间:2024-01-25 GMT+08:00
分享

音频管理

muteLocalAudio

- (int)muteLocalAudio:(BOOL)mute;

功能说明

设置是否关闭本地音频流发送。

请求参数

mute:YES表示关闭音频流发送,NO表示开启音频流发送。

返回参数
  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HWRtcErrorCode
  • 默认开启本地音频发流。
  • 关闭本地音频发流,不影响本地音频采集。
  • 远端用户订阅该用户时,远端用户会收到onRemoteAudioStateChange远端流状态变化回调。

enableLocalAudioStream

- (int)enableLocalAudioStream:(BOOL)enable;

功能说明

设置是否开启本地麦克风采集音频。

请求参数

enable:YES表示开启,NO表示关闭。

返回参数
  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HWRtcErrorCode
  • 默认开启,关闭不会影响音频流发送。
  • 远端用户订阅该用户时,远端用户会收到onRemoteAudioStateChange远端流状态变化回调。

muteRemoteAudio

- (int)muteRemoteAudio:(NSString *)userid muted:(BOOL)muted;

功能说明

订阅或取消订阅对应远端用户的音频流。同一时间所有房间最多只能接收17路音频流。

请求参数

  • userid : 远端用户的id,唯一的标识。
  • muted:YES表示取消订阅,NO表示订阅。默认值 NO。

返回参数

  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HWRtcErrorCode

muteAllRemoteAudio

- (int)muteAllRemoteAudio:(BOOL)muted;

功能说明

订阅或取消订阅当前房间全部用户的音频流。

请求参数

muted:YES表示取消订阅,NO表示订阅。

返回参数

  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HWRtcErrorCode
  • 取消所有音频流接收,同时也会取消接收新加入用户的音频流。
  • 开启所有音频流接收,同时也会开启接收新加入用户的音频流。
  • 默认开启所有音频流接收。

setVolumeNotifyInterval

- (int)setVolumeNotifyInterval:(int)volInterval;

功能说明

指定音量提示的时间间隔, 设置后按时间间隔触发回调,包括用户音量回调onUserVolumeStatsNotify,本地采集音量回调onLocalVolumeChangedNotify

请求参数

volInterval:间隔时间, 0 关闭音量上报不再触发回调 。volInterval取值范围为[100 10000]ms。建议设置为2000ms,默认值为2000ms。

返回参数

  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HWRtcErrorCode

adjustRecordingVolume

- (int)adjustRecordingVolume:(unsigned int)volume;

功能说明

调整录制音量值。

请求参数

volume:音量值,取值范围为[0,100],默认音量值为10, 此接口不会影响系统音量。

返回参数
  • 0:方法调用成功。
  • >0:方法调用失败,具体请参见HWRtcErrorCode

adjustPlaybackVolume

- (int)adjustPlaybackVolume:(unsigned int)volume;
- (int)adjustPlaybackVolume:(NSString *)userid volume :(unsigned int)volume;

功能说明

设置扬声器播放的音量。

请求参数

  • volume:范围为[0-100],其中10表示原始音量。
  • userid:用户id。
返回参数
  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HWRtcErrorCode

不影响系统音量。

setShareComputerSound

- (int)setShareComputerSound:(BOOL)enable;

功能说明

共享声音。

请求参数

enable:YES表示开启,NO表示关闭。 默认关闭。

返回参数

  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HRTCErrorCode
  • 用户需要提交工单联系华为云技术客服获取共享音频驱动。
  • 安装驱动有两种方式推荐,任选其一:

    由于第二种方法无法覆盖安装驱动,因此建议您使用第一种集成方式,以对应驱动的版本更新。

    • 在安装集成了SDK的应用时,一同安装驱动。执行如下脚本:
      sudo installer -pkg "pkg安装包全路径+文件名" -target /Library/Audio/Plug-Ins
    • 应用启动共享功能时,让SDK自主安装,此时需要做前置动作:将驱动放置在用户的Documents/Resource文件夹(如果Documents目录下没有Resource文件夹,则需要创建),需要用户权限来安装驱动,安装完成后需要重启应用。安装成功后,之后打开共享功能无需再安装。
  • SDK无法检测到应用的卸载动作,所以需要应用层面在卸载时删除驱动缓存,执行如下脚本:
    sudo rm -rf /Library/Audio/Plug-Ins/HAL/HWMeetAudioDevice.driver
    sudo launchctl kickstart -k system/com.apple.audio.coreaudiod
  • 检测驱动安装是否成功:
    1. 查看/Library/Audio/Plug-Ins/HAL/HWMeetAudioDevice.driver是否存在。
    2. 查看系统设置偏好-声音-输出一栏,是否切换为hw驱动作为输出。该检查方式只有在启动了共享时才可查看。

sendAudioSeiMsg

- (int)sendAudioSeiMsg:(NSString *)message repeateCount:(int)repeateCount;

功能说明

发送音频SEI消息。通过音频SEI可将自定义信息嵌入到音频流中,发送给其他用户。

请求参数

  • message:发送的内容。长度为1-500字节。
  • repeateCount:发送次数(1-10)。根据需要填发送次数,一般发1次。

返回参数

  • 0:方法调用成功。
  • < 0:方法调用失败。具体请参见HRTCErrorCode

setDefaultSpeakerModel

- (int)setDefaultSpeakerModel:(HWRtcSpeakerModel)speakerModel;

功能说明

设置默认的声音播放模式,在房间外调用。

请求参数

speakerModel:声音播放模式,具体请参见HWRtcSpeakerModel。默认值为HWRtcSpeakerModelSpeaker。

返回参数

  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HRTCErrorCode

setAudioFrameRecordParameters

- (int)setAudioFrameRecordParameters:(int)sampleRate channel:(int)channel mode:(HWRTCAudioOperateMode)mode samplesPerCall:(int)samplesPerCall;

功能说明

设置采集回调参数,配合setAudioFrameObserver的onAudioFrameRecord使用。

请求参数

  • sampleRate:onAudioFrameRecord中返回的采样率,可设置为8000,16000,32000,44100,48000。
  • channel:声道,1表示单声道,2表示双声道。
  • mode:可读可写模式,具体请参见HWRTCAudioOperateMode
  • samplesPerCall:每次回调的单声道样点数(小于(sampleRate/100)*channel*2*3, 大于(sample/(100*3))*channel*2)。

返回参数

  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HRTCErrorCode

setAudioConfig

- (int)setAudioConfig:(HWRtcAudioQualityLevel)level scene:(HWRtcAudioSceneType)scene;

功能说明

设置使用场景。该接口需要在joinRoom前调用。

此接口可在initWithConfig接口设置场景后改变音频场景,暂不支持初始化scene设置音乐再通过此接口设置为会议。

请求参数

返回参数
  • 0:方法调用成功。
  • > 0:方法调用失败。具体请参见HWRtcErrorCode

相关文档