fm.liveswitch.ivf.VideoSink Class Reference

An IVF-file-based video sink. More...

Public Member Functions

void addOnFileClose (fm.liveswitch.IAction0 value)
 Adds a handler that is raised when an existing file is close in response to this sink being deactivated or destroyed. More...
 
void addOnFileOpen (fm.liveswitch.IAction0 value)
 Adds a handler that is raised when a new file is opened in response to this sink being activated and processing a frame. More...
 
long getBaseTimestamp ()
 Gets the base timestamp - the timestamp of the first frame processed by the recorder after being activated. More...
 
String getLabel ()
 Gets a label that identifies this class. More...
 
String getLastFilePath ()
 Gets the last known file path. More...
 
long getLastTimestamp ()
 Gets the last timestamp processed by the recorder. More...
 
String getOpenFilePath ()
 Gets the currently open file path. More...
 
String getPath ()
 Gets the path. More...
 
void removeOnFileClose (fm.liveswitch.IAction0 value)
 Removes a handler that is raised when an existing file is close in response to this sink being deactivated or destroyed. More...
 
void removeOnFileOpen (fm.liveswitch.IAction0 value)
 Removes a handler that is raised when a new file is opened in response to this sink being activated and processing a frame. More...
 
 VideoSink (String path)
 Initializes a new instance of the fm.liveswitch.ivf.VideoSink class. More...
 
 VideoSink (String path, fm.liveswitch.IVideoOutput input)
 Initializes a new instance of the fm.liveswitch.ivf.VideoSink class. More...
 
- Public Member Functions inherited from fm.liveswitch.VideoSink
void addOnProcessSizeChange (fm.liveswitch.IAction1< fm.liveswitch.Size > value)
 Adds a handler that is raised when a frame is about to be processed with a size that does not match the prior frame. More...
 
String getContent ()
 Gets the content descriptor. More...
 
fm.liveswitch.EncodingInfo getMaxInputEncoding ()
 Gets the maximum allowed input encoding. More...
 
double getMaxInputFrameRate ()
 Gets the maximum allowed input frame-rate, in fps. More...
 
int getMaxInputHeight ()
 Gets the maximum allowed input height. More...
 
double getMaxInputScale ()
 Gets the maximum allowed input scale. More...
 
fm.liveswitch.Size getMaxInputSize ()
 Gets the maximum allowed input size. More...
 
int getMaxInputWidth ()
 Gets the maximum allowed input width. More...
 
fm.liveswitch.EncodingInfo getMinInputEncoding ()
 Gets the minimum allowed input encoding. More...
 
double getMinInputFrameRate ()
 Gets the minimum allowed input frame-rate, in fps. More...
 
int getMinInputHeight ()
 Gets the minimum allowed input height. More...
 
double getMinInputScale ()
 Gets the minimum allowed input scale. More...
 
fm.liveswitch.Size getMinInputSize ()
 Gets the minimum allowed input size. More...
 
int getMinInputWidth ()
 Gets the minimum allowed input width. More...
 
boolean getOverConstrainedFrameRate ()
 Gets whether the sink frame-rate is over-constrained. More...
 
boolean getOverConstrainedHeight ()
 Gets whether the sink height is over-constrained. More...
 
boolean getOverConstrainedInput ()
 Gets whether the input is over-contrained. More...
 
boolean getOverConstrainedInputFrameRate ()
 Gets whether the minimum allowed input frame-rate exceeds the maximum allowed input frame-rate. More...
 
boolean getOverConstrainedInputHeight ()
 Gets whether the minimum allowed input height exceeds the maximum allowed input height. More...
 
boolean getOverConstrainedInputScale ()
 Gets whether the minimum allowed input scale exceeds the maximum allowed input scale. More...
 
boolean getOverConstrainedInputSize ()
 Gets whether the minimum allowed input size exceeds the maximum allowed input size. More...
 
boolean getOverConstrainedInputWidth ()
 Gets whether the minimum allowed input width exceeds the maximum allowed input width. More...
 
boolean getOverConstrainedScale ()
 Gets whether the sink scale is over-constrained. More...
 
boolean getOverConstrainedSize ()
 Gets whether the sink size is over-constrained. More...
 
boolean getOverConstrainedWidth ()
 Gets whether the sink width is over-constrained. More...
 
fm.liveswitch.VideoType getVideoType ()
 Gets the video type. More...
 
void removeOnProcessSizeChange (fm.liveswitch.IAction1< fm.liveswitch.Size > value)
 Removes a handler that is raised when a frame is about to be processed with a size that does not match the prior frame. More...
 
 VideoSink ()
 Initializes a new instance of the fm.liveswitch.VideoSink class. More...
 
 VideoSink (fm.liveswitch.VideoFormat inputFormat)
 Initializes a new instance of the fm.liveswitch.VideoSink class. More...
 
- Public Member Functions inherited from fm.liveswitch.MediaSinkBase
String getExternalId ()
 Gets the external identifier. More...
 
String getId ()
 Gets the identifier. More...
 
String getTag ()
 Gets optional data to associate with this instance. More...
 
void setExternalId (String value)
 Sets the external identifier. More...
 
void setTag (String value)
 Sets optional data to associate with this instance. More...
 
- Public Member Functions inherited from fm.liveswitch.Dynamic
java.util.HashMap< String, Object > getDynamicProperties ()
 Gets all dynamic properties on this instance. More...
 
Object getDynamicValue (String key)
 Gets a property value from the local cache. More...
 
void setDynamicValue (String key, Object value)
 Sets a property value in the local cache. More...
 
boolean unsetDynamicValue (String key)
 Removes a property value from the local cache. More...
 
- Public Member Functions inherited from fm.liveswitch.IElement
abstract String getExternalId ()
 Gets the external identifier. More...
 
abstract String getId ()
 Gets the identifier. More...
 
abstract String getPipelineJson ()
 Gets the pipeline JSON with this as the central point. More...
 
abstract void setExternalId (String value)
 Sets the external identifier. More...
 
- Public Member Functions inherited from fm.liveswitch.IMediaElement
abstract boolean destroy ()
 Destroys this instance. More...
 
abstract boolean getDeactivated ()
 Gets a value indicating whether this instance is deactivated. More...
 
abstract boolean getDisabled ()
 Gets a value indicating whether this instance is disabled. More...
 
abstract boolean getMuted ()
 Gets a value indicating whether this instance is muted. More...
 
abstract boolean getPaused ()
 Gets a value indicating whether this instance is paused. More...
 
abstract boolean getPersistent ()
 Gets a value indicating whether this instance is persistent. More...
 
abstract void setDeactivated (boolean value)
 Sets a value indicating whether this instance is deactivated. More...
 
abstract void setMuted (boolean value)
 Sets a value indicating whether this instance is muted. More...
 

Protected Member Functions

void doDestroy ()
 Destroys this instance. More...
 
void doProcessFrame (fm.liveswitch.VideoFrame frame, fm.liveswitch.VideoBuffer inputBuffer)
 Processes a frame. More...
 
- Protected Member Functions inherited from fm.liveswitch.VideoSink
fm.liveswitch.IVideoOutputCollection createOutputCollection (fm.liveswitch.IVideoInput input)
 Creates an output collection. More...
 
void doPreProcessFrame (fm.liveswitch.VideoFrame frame, fm.liveswitch.VideoBuffer inputBuffer)
 Pre-processes a frame. More...
 
void setMaxInputEncoding (fm.liveswitch.EncodingInfo value)
 Sets the maximum allowed input encoding. More...
 
void setMaxInputFrameRate (double value)
 Sets the maximum allowed input frame-rate, in fps. More...
 
void setMaxInputScale (double value)
 Sets the maximum allowed input scale. More...
 
void setMaxInputSize (fm.liveswitch.Size value)
 Sets the maximum allowed input size. More...
 
void setMinInputEncoding (fm.liveswitch.EncodingInfo value)
 Sets the minimum allowed input encoding. More...
 
void setMinInputFrameRate (double value)
 Sets the minimum allowed input frame-rate, in fps. More...
 
void setMinInputScale (double value)
 Sets the minimum allowed input scale. More...
 
void setMinInputSize (fm.liveswitch.Size value)
 Sets the minimum allowed input size. More...
 
void setVideoType (fm.liveswitch.VideoType value)
 Sets the video type. More...
 
- Protected Member Functions inherited from fm.liveswitch.MediaSinkBase
 MediaSinkBase ()
 
- Protected Member Functions inherited from fm.liveswitch.Dynamic
 Dynamic ()
 
- Protected Member Functions inherited from fm.liveswitch.Serializable
boolean getIsDirty ()
 Gets a value indicating whether this instance is dirty. More...
 
 Serializable ()
 Initializes a new instance of the fm.liveswitch.Serializable class. More...
 
void setIsDirty (boolean value)
 Sets a value indicating whether this instance is dirty. More...
 

Detailed Description

An IVF-file-based video sink.

Constructor & Destructor Documentation

◆ VideoSink() [1/2]

fm.liveswitch.ivf.VideoSink.VideoSink ( String  path)

Initializes a new instance of the fm.liveswitch.ivf.VideoSink class.

Parameters
pathThe path.

◆ VideoSink() [2/2]

fm.liveswitch.ivf.VideoSink.VideoSink ( String  path,
fm.liveswitch.IVideoOutput  input 
)

Initializes a new instance of the fm.liveswitch.ivf.VideoSink class.

Parameters
pathThe path.
inputThe input.

Member Function Documentation

◆ addOnFileClose()

void fm.liveswitch.ivf.VideoSink.addOnFileClose ( fm.liveswitch.IAction0  value)

Adds a handler that is raised when an existing file is close in response to this sink being deactivated or destroyed.

◆ addOnFileOpen()

void fm.liveswitch.ivf.VideoSink.addOnFileOpen ( fm.liveswitch.IAction0  value)

Adds a handler that is raised when a new file is opened in response to this sink being activated and processing a frame.

◆ doDestroy()

void fm.liveswitch.ivf.VideoSink.doDestroy ( )
protected

Destroys this instance.

◆ doProcessFrame()

void fm.liveswitch.ivf.VideoSink.doProcessFrame ( fm.liveswitch.VideoFrame  frame,
fm.liveswitch.VideoBuffer  inputBuffer 
)
protected

Processes a frame.

Parameters
frameThe frame.
inputBufferThe input buffer.

◆ getBaseTimestamp()

long fm.liveswitch.ivf.VideoSink.getBaseTimestamp ( )

Gets the base timestamp - the timestamp of the first frame processed by the recorder after being activated.

This timestamp will change each time a new file is created in response to the sink being activated.

◆ getLabel()

String fm.liveswitch.ivf.VideoSink.getLabel ( )

Gets a label that identifies this class.

Implements fm.liveswitch.IMediaElement.

◆ getLastFilePath()

String fm.liveswitch.ivf.VideoSink.getLastFilePath ( )

Gets the last known file path.

◆ getLastTimestamp()

long fm.liveswitch.ivf.VideoSink.getLastTimestamp ( )

Gets the last timestamp processed by the recorder.

◆ getOpenFilePath()

String fm.liveswitch.ivf.VideoSink.getOpenFilePath ( )

Gets the currently open file path.

◆ getPath()

String fm.liveswitch.ivf.VideoSink.getPath ( )

Gets the path.

◆ removeOnFileClose()

void fm.liveswitch.ivf.VideoSink.removeOnFileClose ( fm.liveswitch.IAction0  value)

Removes a handler that is raised when an existing file is close in response to this sink being deactivated or destroyed.

◆ removeOnFileOpen()

void fm.liveswitch.ivf.VideoSink.removeOnFileOpen ( fm.liveswitch.IAction0  value)

Removes a handler that is raised when a new file is opened in response to this sink being activated and processing a frame.