com.smaxe.uv.stream.support
Class MediaStreamController

java.lang.Object
  extended by com.smaxe.uv.stream.support.AbstractMediaStreamController
      extended by com.smaxe.uv.stream.support.MediaStreamController
All Implemented Interfaces:
IMediaStreamController

public final class MediaStreamController
extends AbstractMediaStreamController

MediaStreamController - IMediaStreamController implementation.

Author:
Andrei Sochirca

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.smaxe.uv.stream.IMediaStreamController
IMediaStreamController.IListener, IMediaStreamController.ListenerAdapter
 
Constructor Summary
MediaStreamController()
          Constructor.
MediaStreamController(int buffer, int audioDelay, int videoDelay)
          Constructor.
MediaStreamController(int buffer, int audioDelay, int videoDelay, java.util.concurrent.ScheduledExecutorService scheduler)
          Constructor.
 
Method Summary
 void play(IMediaStream playStream, long playDuration)
          Starts media stream playback.
 void release()
          Stops media stream playback and releases resources.
 void setAudioDelay(int delay)
          Sets audio delay.
 void setFirstMediaFrameRtime(int rtime)
          Sets first media frame rtime value (starting with second IMediaStream).
 void setScheduler(java.util.concurrent.ScheduledExecutorService scheduler)
          Sets the bean.
 void setTimeout(int timeout)
          Sets timeout (time after which the stream without data is stopped).
 void setVideoDelay(int delay)
          Sets video delay.
 
Methods inherited from class com.smaxe.uv.stream.support.AbstractMediaStreamController
addListener, fireOnAudioData, fireOnException, fireOnNotify, fireOnRelease, fireOnStart, fireOnStop, fireOnTimeout, fireOnVideoData, removeListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MediaStreamController

public MediaStreamController()
Constructor.


MediaStreamController

public MediaStreamController(int buffer,
                             int audioDelay,
                             int videoDelay)
Constructor.

Parameters:
buffer - buffer length (in milliseconds)
audioDelay - audio stream delay (in milliseconds)
videoDelay - video stream delay (in millisecods)

MediaStreamController

public MediaStreamController(int buffer,
                             int audioDelay,
                             int videoDelay,
                             java.util.concurrent.ScheduledExecutorService scheduler)
Constructor.

Parameters:
buffer - buffer length (in milliseconds)
audioDelay - audio stream delay (in milliseconds)
videoDelay - video stream delay (in millisecods)
scheduler - scheduler (scheduler will be released on controller release)
Method Detail

setAudioDelay

public void setAudioDelay(int delay)
Sets audio delay.

Parameters:
delay -

setFirstMediaFrameRtime

public void setFirstMediaFrameRtime(int rtime)
Sets first media frame rtime value (starting with second IMediaStream).

Parameters:
rtime -

setVideoDelay

public void setVideoDelay(int delay)
Sets video delay.

Parameters:
delay -

setTimeout

public void setTimeout(int timeout)
Sets timeout (time after which the stream without data is stopped).

Parameters:
timeout -

setScheduler

public void setScheduler(java.util.concurrent.ScheduledExecutorService scheduler)
Sets the bean.

Parameters:
scheduler -

play

public void play(IMediaStream playStream,
                 long playDuration)
Description copied from interface: IMediaStreamController
Starts media stream playback.

Note: If stream is not specified (i.e. null) or the same as previous, then only duration is updated.

Specified by:
play in interface IMediaStreamController
Overrides:
play in class AbstractMediaStreamController
Parameters:
playStream - stream to play
playDuration - (in milliseconds), set -1 to play all the stream content

release

public void release()
Description copied from interface: IMediaStreamController
Stops media stream playback and releases resources.

Specified by:
release in interface IMediaStreamController
Overrides:
release in class AbstractMediaStreamController