public class MAudio extends Module
限定符和类型 | 类和说明 |
---|---|
static class |
MAudio.AudioInfo
语音激励信息结构.
|
static interface |
MAudio.Listener
房间中音频模块回调接口.
|
static interface |
MAudio.MixerDataListener
房间中音频混音数据回调接口.
|
class |
MAudio.PCMAudioDataBean |
static interface |
MAudio.SubscribeListener |
Module.Type
限定符和类型 | 方法和说明 |
---|---|
int |
closeMicrophone()
关闭本地麦克风发布到房间中
|
protected void |
dispose() |
static void |
enableAutoRoute(boolean enable) |
static MAudio |
getAudio(Room room)
获取音频模块接口
|
static java.util.Map<java.lang.String,UsbDevice> |
getAudioUsbDeviceList(Context context)
获取USB中的音频设备,找了几个全向麦,发现有些并未安装规范定义class的值,目前是取列表的时候排除一些非audio设备
|
Device.DeviceStatus |
getMicrophoneStatus()
获取本地麦克风状态
|
int |
getMicrophoneStatus2()
获取本地麦克风状态
|
java.util.List<java.lang.String> |
getPubAudioUsers()
获取已经publish的音频用户
|
Device.DeviceStatus |
getRemoteMicrophoneStatus(java.lang.String userId)
获取远端麦克风状态
|
int |
getSpeakerVolume() |
java.util.List<java.lang.String> |
getSubAudioUsers()
获取已经Subscrib的音频用户
|
void |
initNativeListener() |
boolean |
isAudioPublished(java.lang.String userId)
判断用户音频是否已经发布
|
boolean |
isAudioSubscribed(java.lang.String userId)
判断用户音频是否已经订阅
|
boolean |
isAutoRoute()
自动路由音频设备(麦克风和扬声器)
|
boolean |
isHandFree()
设置手机内置 听筒和扬声器切换
|
boolean |
ismonitorAudioLevel()
判断是否开启语音激励
|
boolean |
isMutedAudio(java.lang.String userId)
用户音频是否已静默
|
boolean |
ismuteMicrophone()
判断本地麦克风是否静默
|
boolean |
ismuteSpeaker()
判断本地扬声器是否静默
|
boolean |
isOpenMicrophone()
判断本地麦克风是否已经打开
|
int |
monitorAudioLevel()
开启语音激励功能
|
int |
muteAudio(java.lang.String userId)
静默指定用户的音频,该用户音频将不会播放出来
|
int |
muteMicrophone()
本地麦克风静默
|
int |
muteSpeaker()
本地扬声器静默
|
static void |
openAudioUsbDevice(UsbDevice device)
打开USB音频设备
|
int |
openMicrophone()
打开本地麦克风发布到房间中
|
int |
registerPCMDataListener(java.lang.String userId,
int freq,
int channels)
注册某一路音频数据回调接口
|
int |
remotecmdCloseMicrophone(java.lang.String userId)
命令远端用户关闭麦克风
|
int |
remotecmdMuteMicrophone(java.lang.String userId)
命令远端用户静默麦克风
|
int |
remotecmdOpenMicrophone(java.lang.String userId)
命令远端用户打开麦克风
|
int |
remotecmdUnmuteMicrophone(java.lang.String userId)
命令远端用户取消静默麦克风
|
void |
setAutoRoute(boolean isOn) |
void |
setHandFree(boolean isOn) |
boolean |
setListener(MAudio.Listener listener)
设置音频模块回调接口
|
int |
setMixerDataListener(MAudio.MixerDataListener cb)
设置获取音频数据回调接口
|
int |
setMixerDataListener(MAudio.MixerDataListener cb,
int sampleRate,
int channels) |
void |
setPublishKeepAliveTime(int keepAliveTime)
设置当前音频流推送的保活时长(单位为毫秒)
|
void |
setSpeakerVolume(int value) |
boolean |
setSubscribeListener(MAudio.SubscribeListener listener) |
int |
subscribe(java.lang.String userId)
订阅一个用户的音频
|
int |
unmonitorAudioLevel()
关闭语音激励
|
int |
unMuteAudio(java.lang.String userId)
取消静默指定用户的音频,该用户音频将会播放出来
|
int |
unmuteMicrophone()
本地麦克风取消静默
|
int |
unmuteSpeaker()
本地扬声器取消静默
|
int |
unregisterPCMDataListener(java.lang.String userId)
取消某一路音频数据回调接口
|
int |
unsubscribe(java.lang.String userId)
取消订阅一个用户的音频
|
createModule, getOwnerId, getOwnerName, getRoom, getType, getUserManager, getUserName, isSelfDevice, isSelfUser
protected MAudio(Room room)
public boolean setListener(MAudio.Listener listener)
public void initNativeListener()
public boolean setSubscribeListener(MAudio.SubscribeListener listener)
public int openMicrophone()
public int closeMicrophone()
public Device.DeviceStatus getMicrophoneStatus()
public int getMicrophoneStatus2()
public boolean isOpenMicrophone()
public static void enableAutoRoute(boolean enable)
public boolean isAutoRoute()
public void setAutoRoute(boolean isOn)
public boolean isHandFree()
public void setHandFree(boolean isOn)
public int muteMicrophone()
public int unmuteMicrophone()
public boolean ismuteMicrophone()
public int muteSpeaker()
public int unmuteSpeaker()
public boolean ismuteSpeaker()
public int muteAudio(java.lang.String userId)
userId
- 用户idpublic int unMuteAudio(java.lang.String userId)
userId
- 用户idpublic boolean isMutedAudio(java.lang.String userId)
userId
- 用户idpublic Device.DeviceStatus getRemoteMicrophoneStatus(java.lang.String userId)
public int remotecmdOpenMicrophone(java.lang.String userId)
public int remotecmdCloseMicrophone(java.lang.String userId)
public int remotecmdUnmuteMicrophone(java.lang.String userId)
public int remotecmdMuteMicrophone(java.lang.String userId)
public int monitorAudioLevel()
public int unmonitorAudioLevel()
public boolean ismonitorAudioLevel()
public int setMixerDataListener(MAudio.MixerDataListener cb)
public int setMixerDataListener(MAudio.MixerDataListener cb, int sampleRate, int channels)
public int getSpeakerVolume()
public void setSpeakerVolume(int value)
public int subscribe(java.lang.String userId)
public int unsubscribe(java.lang.String userId)
public java.util.List<java.lang.String> getPubAudioUsers()
public boolean isAudioPublished(java.lang.String userId)
public java.util.List<java.lang.String> getSubAudioUsers()
public boolean isAudioSubscribed(java.lang.String userId)
@Nullable public static java.util.Map<java.lang.String,UsbDevice> getAudioUsbDeviceList(Context context)
public static void openAudioUsbDevice(UsbDevice device)
device
- public int registerPCMDataListener(java.lang.String userId, int freq, int channels)
public int unregisterPCMDataListener(java.lang.String userId)
public void setPublishKeepAliveTime(int keepAliveTime)
keepAliveTime
- 保活时长 (单位为毫秒)。