MediaSyncEvent
open class MediaSyncEvent
| kotlin.Any | |
| ↳ | android.media.MediaSyncEvent |
The MediaSyncEvent class defines events that can be used to synchronize playback or capture actions between different players and recorders.
For instance, AudioRecord#startRecording(MediaSyncEvent) is used to start capture only when the playback on a particular audio session is complete. The audio session ID is retrieved from a player (e.g MediaPlayer, AudioTrack or ToneGenerator) by use of the getAudioSessionId() method.
Summary
Constants |
|
|---|---|
| static Int |
No sync event specified. |
| static Int |
The corresponding action is triggered only when the presentation is completed (meaning the media has been presented to the user) on the specified session. |
Public methods |
|
|---|---|
| open static MediaSyncEvent! |
createEvent(eventType: Int)Creates a synchronization event of the sepcified type. |
| open Int |
Gets the synchronization event audio session ID. |
| open Int |
getType()Gets the synchronization event type. |
| open MediaSyncEvent! |
setAudioSessionId(audioSessionId: Int)Sets the event source audio session ID. |
Constants
SYNC_EVENT_NONE
static val SYNC_EVENT_NONE: Int
No sync event specified. When used with a synchronized playback or capture method, the behavior is equivalent to calling the corresponding non synchronized method.
Value: 0
SYNC_EVENT_PRESENTATION_COMPLETE
static val SYNC_EVENT_PRESENTATION_COMPLETE: Int
The corresponding action is triggered only when the presentation is completed (meaning the media has been presented to the user) on the specified session. A synchronization of this type requires a source audio session ID to be set via setAudioSessionId(int) method.
Value: 1
Public methods
createEvent
open static fun createEvent(eventType: Int): MediaSyncEvent!
Creates a synchronization event of the sepcified type.
The type specifies which kind of event is monitored. For instance, event SYNC_EVENT_PRESENTATION_COMPLETE corresponds to the audio being presented to the user on a particular audio session.
| Parameters | |
|---|---|
eventType |
Int: the synchronization event type. |
| Return | |
|---|---|
MediaSyncEvent! |
the MediaSyncEvent created. |
| Exceptions | |
|---|---|
java.lang.IllegalArgumentException |
|
getAudioSessionId
open fun getAudioSessionId(): Int
Gets the synchronization event audio session ID.
| Return | |
|---|---|
Int |
the synchronization audio session ID. The returned audio session ID is 0 if it has not been set. |
getType
open fun getType(): Int
Gets the synchronization event type.
| Return | |
|---|---|
Int |
the synchronization event type. |
setAudioSessionId
open fun setAudioSessionId(audioSessionId: Int): MediaSyncEvent!
Sets the event source audio session ID.
The audio session ID specifies on which audio session the synchronization event should be monitored. It is mandatory for certain event types (e.g. SYNC_EVENT_PRESENTATION_COMPLETE). For instance, the audio session ID can be retrieved via MediaPlayer#getAudioSessionId() when monitoring an event on a particular MediaPlayer.
| Parameters | |
|---|---|
audioSessionId |
Int: the audio session ID of the event source being monitored. |
| Return | |
|---|---|
MediaSyncEvent! |
the MediaSyncEvent the method is called on. |
| Exceptions | |
|---|---|
java.lang.IllegalArgumentException |
|

