com.opentok.android.AudioDeviceManager
public class AudioDeviceManager extends Object
Use the AudioDeviceManager to set a custom audio device to be used by the app. The audio device manages access to the audio capturing and rendering hardware.
You can only define a single audio capture source and rendering target for
the app. You cannot set these individually for each publisher and subscriber.
You can, however, set the audio bitrate for a published stream using the
PublisherKit.Builder.audioBitrate(int) method.
Constructor Summary
Constructors
Constructor
Description
AudioDeviceManager()
Constructs a new AudioDeviceManager instance.
AudioDeviceManager(android.content.Context context)
Constructs a new AudioDeviceManager instance.
Method Summary
All MethodsStatic MethodsInstance MethodsConcrete Methods
Modifier and Type
Method
Description
static BaseAudioDevice
getAudioDevice()
Gets the BaseAudioDevice instance.
BaseAudioDevice.AudioFocusManager
getAudioFocusManager()
Gets the AudioFocusManager instance, if the current audio device supports it.
static void
setAudioDevice(BaseAudioDevice device)
Sets the audio device to be used.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Constructor Details
AudioDeviceManager
public AudioDeviceManager()
Constructs a new AudioDeviceManager instance.
AudioDeviceManager
public AudioDeviceManager(android.content.Context context)
Constructs a new AudioDeviceManager instance.
Parameters:
: context - the context used for managing audio devices.
This should be the application-level context to avoid
memory leaks or unintended behavior related to activity lifecycles.
Method Details
setAudioDevice
public static void setAudioDevice(BaseAudioDevice device) throws IllegalStateException
Sets the audio device to be used.
You must call this method before you connect to a session. Additionally, this is a global operation that must persist throughout the lifetime of an application.
If you do not call this method, the app uses the Android device's microphone and speaker.
Parameters:
: device - The BaseAudioDevice interface implementation.
Throws:
: IllegalStateException
getAudioDevice
public static BaseAudioDevice getAudioDevice()
Gets the BaseAudioDevice instance.
Returns:
: id The BaseAudioDevice instance.
getAudioFocusManager
public BaseAudioDevice.AudioFocusManager getAudioFocusManager()
Gets the AudioFocusManager instance, if the current audio device supports it.
This requires having instantiated object via AudioDeviceManager(Context context),
otherwise the method returns null. This returns the same instance as the getAudioDevice() method
if it conforms to the AudioFocusManager interface. Otherwise, it returns null.
Note: Currently only the default audio device implements this interface.
Returns:
: The AudioFocusManager implementation, or null if unsupported.
See Also: : - Creating a VoIP app using the Android ConnectionService