public abstract class AbstractMediaStreamController extends java.lang.Object implements IMediaStreamController
AbstractMediaStreamController
- base class for IMediaStreamController
implementation.IMediaStreamController.IListener, IMediaStreamController.ListenerAdapter
Constructor and Description |
---|
AbstractMediaStreamController()
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
addListener(IMediaStreamController.IListener listener)
Adds a new listener.
|
protected void |
fireOnAudioData(long timestamp,
MediaData data)
Fires 'On Audio Data' event.
|
protected void |
fireOnException(long timestamp,
IMediaStream stream,
java.lang.Exception e)
Fires 'On Exception' event.
|
protected void |
fireOnNotify(long timestamp,
java.lang.Object data)
Fires 'On Notify' event.
|
protected void |
fireOnRelease(long timestamp)
Fires 'On Release' event.
|
protected void |
fireOnStart(long timestamp,
IMediaStream stream)
Fires 'On Start' event.
|
protected void |
fireOnStop(long timestamp,
IMediaStream stream)
Fires 'On Stop' event.
|
protected void |
fireOnTimeout(long timestamp,
IMediaStream stream,
long timeout)
Fires 'On Timeout' event.
|
protected void |
fireOnVideoData(long timestamp,
MediaData data)
Fires 'On Video Data' event.
|
void |
play(IMediaStream stream,
long duration)
Starts media stream playback.
|
void |
release()
Stops media stream playback and releases resources.
|
void |
removeListener(IMediaStreamController.IListener listener)
Removes the listener.
|
public AbstractMediaStreamController()
public void play(IMediaStream stream, long duration)
IMediaStreamController
Note: If stream
is not specified (i.e. null
)
or the same as previous, then only duration is updated.
play
in interface IMediaStreamController
stream
- stream to playduration
- (in milliseconds), set -1
to play all the stream contentpublic void release()
IMediaStreamController
release
in interface IMediaStreamController
public void addListener(IMediaStreamController.IListener listener)
IMediaStreamController
Note: It is supposed that the number of listeners is relatively small.
addListener
in interface IMediaStreamController
listener
- listener to addpublic void removeListener(IMediaStreamController.IListener listener)
IMediaStreamController
Note: It is supposed that the number of listeners is relatively small.
removeListener
in interface IMediaStreamController
listener
- listener to removeprotected final void fireOnStart(long timestamp, IMediaStream stream)
timestamp
- time (in milliseconds since first start)stream
- protected final void fireOnAudioData(long timestamp, MediaData data)
timestamp
- time (in milliseconds since first start)data
- protected final void fireOnVideoData(long timestamp, MediaData data)
timestamp
- time (in milliseconds since first start)data
- protected final void fireOnNotify(long timestamp, java.lang.Object data)
timestamp
- time (in milliseconds since first start)data
- protected final void fireOnTimeout(long timestamp, IMediaStream stream, long timeout)
timestamp
- time (in milliseconds since first start)stream
- timeout
- protected final void fireOnException(long timestamp, IMediaStream stream, java.lang.Exception e)
timestamp
- time (in milliseconds since first start)stream
- e
- protected final void fireOnStop(long timestamp, IMediaStream stream)
timestamp
- time (in milliseconds since first start)stream
- protected final void fireOnRelease(long timestamp)
timestamp
- time (in milliseconds since first start)