程序包 rtc

类 MAudio


public class MAudio extends Module
房间中音频模块接口. 房间音频模块定义房间音频相关如麦克风、扬声器相关操作功能接口。
  • 字段详细资料

    • isOpenUsb

      public static boolean isOpenUsb
  • 方法详细资料

    • getAudio

      public static MAudio getAudio(Room room)
      获取音频模块接口
      返回:
      返回音频模块接口。
    • setListener

      public boolean setListener(MAudio.Listener listener)
      设置音频模块回调接口
      返回:
      返回错误代码。
    • setSubscribeListener

      public boolean setSubscribeListener(MAudio.SubscribeListener listener)
      设置音频订阅回调接口
      参数:
      listener -
      返回:
    • openMicrophone

      public int openMicrophone()
      打开本地麦克风发布到房间中
      返回:
      返回错误代码。
    • closeMicrophone

      public int closeMicrophone()
      关闭本地麦克风发布到房间中
      返回:
      返回错误代码。
    • getMicrophoneStatus

      public Device.DeviceStatus getMicrophoneStatus()
      获取本地麦克风状态
      返回:
      返回麦克风状态。
    • getMicrophoneStatus2

      public int getMicrophoneStatus2()
      获取本地麦克风状态
      返回:
      返回麦克风状态。
    • isOpenMicrophone

      public boolean isOpenMicrophone()
      判断本地麦克风是否已经打开
      返回:
      返回麦克风是否打开。
    • enableAutoRoute

      public static void enableAutoRoute(boolean enable)
      音频自适应开关
      参数:
      enable -
    • isAutoRoute

      public boolean isAutoRoute()
      自动路由音频设备(麦克风和扬声器)
      返回:
      返回是否自动路由
    • setAutoRoute

      public void setAutoRoute(boolean isOn)
      设置音频自动路由(麦克风和扬声器)
      参数:
      isOn -
    • isHandFree

      public boolean isHandFree()
      设置手机内置 听筒和扬声器切换
    • setHandFree

      public void setHandFree(boolean isOn)
      设置是否使用外放声音(扬声器和听筒之间切换)
      参数:
      isOn -
    • muteMicrophone

      public int muteMicrophone()
      本地麦克风静默
      返回:
      返回错误代码。
    • unmuteMicrophone

      public int unmuteMicrophone()
      本地麦克风取消静默
      返回:
      返回错误代码。
    • ismuteMicrophone

      public boolean ismuteMicrophone()
      判断本地麦克风是否静默
    • muteSpeaker

      public int muteSpeaker()
      本地扬声器静默
      返回:
      返回错误代码。
    • unmuteSpeaker

      public int unmuteSpeaker()
      本地扬声器取消静默
      返回:
      返回错误代码。
    • ismuteSpeaker

      public boolean ismuteSpeaker()
      判断本地扬声器是否静默
    • muteAudio

      public int muteAudio(String userId)
      静默指定用户的音频,该用户音频将不会播放出来
      参数:
      userId - 用户id
      返回:
    • unMuteAudio

      public int unMuteAudio(String userId)
      取消静默指定用户的音频,该用户音频将会播放出来
      参数:
      userId - 用户id
      返回:
    • isMutedAudio

      public boolean isMutedAudio(String userId)
      用户音频是否已静默
      参数:
      userId - 用户id
      返回:
    • getRemoteMicrophoneStatus

      public Device.DeviceStatus getRemoteMicrophoneStatus(String userId)
      获取远端麦克风状态
      返回:
      返回麦克风状态。
    • remotecmdOpenMicrophone

      public int remotecmdOpenMicrophone(String userId)
      命令远端用户打开麦克风
      返回:
      返回错误代码。
    • remotecmdCloseMicrophone

      public int remotecmdCloseMicrophone(String userId)
      命令远端用户关闭麦克风
      返回:
      返回错误代码。
    • remotecmdUnmuteMicrophone

      public int remotecmdUnmuteMicrophone(String userId)
      命令远端用户取消静默麦克风
      返回:
      返回错误代码。
    • remotecmdMuteMicrophone

      public int remotecmdMuteMicrophone(String userId)
      命令远端用户静默麦克风
      返回:
      返回错误代码。
    • monitorAudioLevel

      public int monitorAudioLevel()
      开启语音激励功能
      返回:
      返回错误代码。
    • unmonitorAudioLevel

      public int unmonitorAudioLevel()
      关闭语音激励
      返回:
      返回错误代码。
    • ismonitorAudioLevel

      public boolean ismonitorAudioLevel()
      判断是否开启语音激励
    • setMixerDataListener

      public int setMixerDataListener(MAudio.MixerDataListener cb)
      设置获取音频数据回调接口
      返回:
      返回错误代码。
    • setMixerDataListener

      public int setMixerDataListener(MAudio.MixerDataListener cb, int sampleRate, int channels)
    • getSpeakerVolume

      public int getSpeakerVolume()
      获取当前设备音量值
      返回:
    • setSpeakerVolume

      public void setSpeakerVolume(int value)
    • subscribe

      public int subscribe(String userId)
      订阅一个用户的音频
      返回:
      返回错误代码。
    • unsubscribe

      public int unsubscribe(String userId)
      取消订阅一个用户的音频
      返回:
      返回错误代码。
    • getPubAudioUsers

      public List<String> getPubAudioUsers()
      获取已经publish的音频用户
      返回:
      items 已经pub的用户列表。
    • isAudioPublished

      public boolean isAudioPublished(String userId)
      判断用户音频是否已经发布
      返回:
      返回是否是已发布的用户。
    • getSubAudioUsers

      public List<String> getSubAudioUsers()
      获取已经Subscrib的音频用户
      返回:
      items 已经sub的用户列表。
    • isAudioSubscribed

      public boolean isAudioSubscribed(String userId)
      判断用户音频是否已经订阅
      返回:
      返回是否是已订阅的用户。
    • getAudioUsbDeviceList

      public static Map<String,android.hardware.usb.UsbDevice> getAudioUsbDeviceList(android.content.Context context)
      获取USB中的音频设备,找了几个全向麦,发现有些并未安装规范定义class的值,目前是取列表的时候排除一些非audio设备
      返回:
    • openAudioUsbDevice

      public static void openAudioUsbDevice(android.hardware.usb.UsbDevice device)
      打开USB音频设备
      参数:
      device -
    • registerPCMDataListener

      public int registerPCMDataListener(String userId, int freq, int channels)
      注册某一路音频数据回调接口
      返回:
      返回错误代码。
    • unregisterPCMDataListener

      public int unregisterPCMDataListener(String userId)
      取消某一路音频数据回调接口
      返回:
      返回错误代码。
    • setPublishKeepAliveTime

      public void setPublishKeepAliveTime(int keepAliveTime)
      设置当前音频流推送的保活时长(单位为毫秒)
      参数:
      keepAliveTime - 保活时长 (单位为毫秒)。