FMLiveSwitchVideoTrack Class Reference

A video track. More...

Instance Methods

(void) - addElement:
 Adds an element. More...
 
(void) - addOnSize:
 Adds a handler that is raised whenever the video's frame size is known, once per frame. More...
 
(void) - addOnSizeChange:
 Adds a handler that is raised whenever the video's frame size changes. More...
 
(FMLiveSwitchSize *) - addOnSizeChangeWithBlock
 Adds a handler that is raised whenever the video's frame size changes. More...
 
(void) - addOnSizeChangeWithBlock:
 Adds a handler that is raised whenever the video's frame size changes. More...
 
(FMLiveSwitchSize *) - addOnSizeWithBlock
 Adds a handler that is raised whenever the video's frame size is known, once per frame. More...
 
(void) - addOnSizeWithBlock:
 Adds a handler that is raised whenever the video's frame size is known, once per frame. More...
 
(NSMutableArray *) - arrayFromInputs:
 Creates an array of inputs from a list of inputs. More...
 
(NSMutableArray *) - arrayFromOutputs:
 Creates an array of outputs from a list of outputs. More...
 
(NSMutableArray *) - arrayFromSinks:
 Creates an array of sinks from a list of sinks. More...
 
(FMLiveSwitchVideoBranch *) - branchFromTracks:
 Creates a branch from an array of tracks. More...
 
(bool) - destroy
 Destroys this media track. More...
 
(NSMutableArray *) - elements
 Gets the elements. More...
 
(FMLiveSwitchFuture< FMLiveSwitchVideoBuffer * > *) - grabFrame
 Grabs the next raw video frame. More...
 
(instancetype) - init
 Initializes a new instance of the FMLiveSwitchVideoTrack class. More...
 
(instancetype) - initWithElement:
 Initializes a new instance of the FMLiveSwitchVideoTrack class. More...
 
(instancetype) - initWithTracks:
 Initializes a new instance of the FMLiveSwitchVideoTrack class. More...
 
(bool) - isBranchWithElement:
 Determines whether the specified element is a branch. More...
 
(bool) - isInputWithElement:
 Determines whether the specified element is an input. More...
 
(bool) - isOutputWithElement:
 Determines whether the specified element is an output. More...
 
(bool) - isPipeWithElement:
 Determines whether the specified element is a pipe. More...
 
(bool) - isSinkWithElement:
 Determines whether the specified element is a sink. More...
 
(bool) - isSourceWithElement:
 Determines whether the specified element is a source. More...
 
(bool) - isStreamWithElement:
 Determines whether the specified element is a stream. More...
 
(NSString *) - label
 Gets a label that identifies this class. More...
 
(void) - removeOnSize:
 Removes a handler that is raised whenever the video's frame size is known, once per frame. More...
 
(void) - removeOnSizeChange:
 Removes a handler that is raised whenever the video's frame size changes. More...
 
(FMLiveSwitchSize *) - size
 Gets the size of the last processed video frame, if known. More...
 
- Instance Methods inherited from FMLiveSwitchMediaTrack
(TSink) - activeSink
 Gets the active sink. More...
 
(void) - addElement:
 Adds an element. More...
 
(void) - addOnDestroyed:
 Adds a handler that is raised when the track is destroyed. More...
 
(void) - addOnMuted:
 Adds a handler that is raised when the track is muted. More...
 
(void) - addOnStarted:
 Adds a handler that is raised when the track is started. More...
 
(void) - addOnStopped:
 Adds a handler that is raised when the track is stopped. More...
 
(void) - addOnUnmuted:
 Adds a handler that is raised when the track is unmuted. More...
 
(NSMutableArray *) - arrayFromInputs:
 Creates an array of inputs from a list of inputs. More...
 
(NSMutableArray *) - arrayFromOutputs:
 Creates an array of outputs from a list of outputs. More...
 
(NSMutableArray *) - arrayFromSinks:
 Creates an array of sinks from a list of sinks. More...
 
(FMLiveSwitchFuture< id > *) - changeSinkOutput:
 Changes the sink output while the media track is active. More...
 
(FMLiveSwitchFuture< id > *) - changeSourceInput:
 Changes the source input while the media track is active. More...
 
(bool) - deactivated
 Gets a value indicating whether this track is deactivated. More...
 
(bool) - disabled
 Gets a value indicating whether this track is disabled. More...
 
(NSString *) - externalId
 Gets the external identifier. More...
 
(NSMutableArray< TIElement > *) - findElementsWithWhere:
 Finds elements in the track. More...
 
(NSMutableArray< TIElement > *) - findElementsWithWhere:recurse:
 Finds elements in this track. More...
 
(TIElement) - findElementsWithWhereBlock
 Finds elements in the track. More...
 
(NSMutableArray< TIElement > *) - findElementsWithWhereBlock:
 Finds elements in the track. More...
 
(NSMutableArray< TIElement > *) - findElementsWithWhereBlock:recurse:
 Finds elements in this track. More...
 
(TIElement) - findElementsWithWhereBlockAndRecurse
 Finds elements in this track. More...
 
(TIElement) - findElementWithWhere:
 Finds an element in the track. More...
 
(TIElement) - findElementWithWhere:recurse:
 Finds an element in this track. More...
 
(TIElement) - findElementWithWhereBlock
 Finds an element in the track. More...
 
(TIElement) - findElementWithWhereBlock:
 Finds an element in the track. More...
 
(TIElement) - findElementWithWhereBlock:recurse:
 Finds an element in this track. More...
 
(TIElement) - findElementWithWhereBlockAndRecurse
 Finds an element in this track. More...
 
(TIElement) - firstElement
 Gets the first element. More...
 
(FMLiveSwitchFuture< NSMutableArray * > *) - getSinkOutputs
 Gets the available sink outputs. More...
 
(FMLiveSwitchFuture< NSMutableArray * > *) - getSourceInputs
 Gets the available source inputs. More...
 
(NSString *) - id
 Gets the identifier. More...
 
(TIInput) - input
 Gets the first input, if this track has inputs. More...
 
(TFormat) - inputFormat
 Gets the input format. More...
 
(NSMutableArray *) - inputs
 Gets the track inputs. More...
 
(bool) - isBranched
 Gets a value indicating whether this track's last element is a branch. More...
 
(bool) - isBranchWithElement:
 Determines whether the specified element is a branch. More...
 
(bool) - isEmpty
 Gets a value indicating whether this instance is empty. More...
 
(bool) - isInputWithElement:
 Determines whether the specified element is an input. More...
 
(bool) - isOutputWithElement:
 Determines whether the specified element is an output. More...
 
(bool) - isPipeWithElement:
 Determines whether the specified element is a pipe. More...
 
(bool) - isSinkWithElement:
 Determines whether the specified element is a sink. More...
 
(bool) - isSourceWithElement:
 Determines whether the specified element is a source. More...
 
(bool) - isStreamWithElement:
 Determines whether the specified element is a stream. More...
 
(bool) - isTerminated
 Gets a value indicating whether this track's last element is a sink. More...
 
(TIElement) - lastElement
 Gets the last element. More...
 
(bool) - muted
 Gets a value indicating whether any of the elements in this track are muted. More...
 
(TTrack) - next:
 Adds an element to this track. More...
 
(TTrack) - nextWithBranch:
 Branches out to several tracks. More...
 
(TTrack) - nextWithTracks:
 Branches out to several tracks. More...
 
(TIOutput) - output
 Gets the first output, if this track has outputs. More...
 
(TFormat) - outputFormat
 Gets the output format. More...
 
(NSMutableArray *) - outputs
 Gets the track outputs. More...
 
(bool) - paused
 Gets a value indicating whether this track is paused. More...
 
(bool) - persistent
 Gets a value indicating whether this instance is persistent. More...
 
(NSString *) - pipelineJson
 Gets the pipeline JSON using the first element as a starting point. More...
 
(void) - raiseOnMuted
 Raises the FMLiveSwitchMediaTrack`14addOnMuted: event. More...
 
(void) - raiseOnStarted
 Raises the FMLiveSwitchMediaTrack`14addOnStarted: event. More...
 
(void) - raiseOnStopped
 Raises the FMLiveSwitchMediaTrack`14addOnStopped: event. More...
 
(void) - raiseOnUnmuted
 Raises the FMLiveSwitchMediaTrack`14addOnUnmuted: event. More...
 
(void) - removeOnDestroyed:
 Removes a handler that is raised when the track is destroyed. More...
 
(void) - removeOnMuted:
 Removes a handler that is raised when the track is muted. More...
 
(void) - removeOnStarted:
 Removes a handler that is raised when the track is started. More...
 
(void) - removeOnStopped:
 Removes a handler that is raised when the track is stopped. More...
 
(void) - removeOnUnmuted:
 Removes a handler that is raised when the track is unmuted. More...
 
(void) - setDeactivated:
 Sets a value indicating whether this track is deactivated. More...
 
(void) - setExternalId:
 Sets the external identifier. More...
 
(void) - setMuted:
 Sets a value indicating whether any of the elements in this track are muted. More...
 
(void) - setPersistent:
 Sets a value indicating whether this instance is persistent. More...
 
(void) - setSinkOutput:
 Sets the current sink output. More...
 
(void) - setSourceInput:
 Sets the current source input. More...
 
(TSink) - sink
 Gets the sink, if the last element is a sink. More...
 
(FMLiveSwitchSinkOutput *) - sinkOutput
 Gets the current sink output. More...
 
(NSMutableArray *) - sinks
 Gets the sinks. More...
 
(TSource) - source
 Gets the source, if the first element is a source. More...
 
(FMLiveSwitchSourceInput *) - sourceInput
 Gets the current source input. More...
 
- Instance Methods inherited from <FMLiveSwitchIVideoOutput>
(double) - maxOutputFrameRate
 Gets the maximum allowed output frame-rate, in fps. More...
 
(int) - maxOutputHeight
 Gets the maximum allowed output height. More...
 
(double) - maxOutputScale
 Gets the maximum allowed output scale. More...
 
(FMLiveSwitchSize *) - maxOutputSize
 Gets the maximum allowed output size. More...
 
(int) - maxOutputWidth
 Gets the maximum allowed output width. More...
 
(double) - minOutputFrameRate
 Gets the minimum allowed output frame-rate, in fps. More...
 
(int) - minOutputHeight
 Gets the minimum allowed output height. More...
 
(double) - minOutputScale
 Gets the minimum allowed output scale. More...
 
(FMLiveSwitchSize *) - minOutputSize
 Gets the minimum allowed output size. More...
 
(int) - minOutputWidth
 Gets the minimum allowed output width. More...
 
(double) - targetOutputFrameRate
 Gets the target output frame-rate, in fps. More...
 
(int) - targetOutputHeight
 Gets the target output height. More...
 
(double) - targetOutputScale
 Gets the target output scale. More...
 
(FMLiveSwitchSize *) - targetOutputSize
 Gets the target output size. More...
 
(int) - targetOutputWidth
 Gets the target output width. More...
 
(FMLiveSwitchVideoType) - videoType
 Gets the video type. More...
 
- Instance Methods inherited from <FMLiveSwitchIMediaOutput>
(void) - addOnDisabledChange:
 Adds a handler that is raised when the Disabled property changes state. More...
 
(void) - addOnDisabledChangeWithCaller:
 Adds a handler that is raised when the Disabled property changes state. More...
 
(id- addOnDisabledChangeWithCallerWithBlock
 Adds a handler that is raised when the Disabled property changes state. More...
 
(void) - addOnDisabledChangeWithCallerWithBlock:
 Adds a handler that is raised when the Disabled property changes state. More...
 
(void) - addOnPausedChange:
 Adds a handler that is raised when the Paused property changes state. More...
 
(void) - addOnProcessControlFrames:
 Adds a handler that is raised when control frames are processed. More...
 
(NSMutableArray *) - addOnProcessControlFramesWithBlock
 Adds a handler that is raised when control frames are processed. More...
 
(void) - addOnProcessControlFramesWithBlock:
 Adds a handler that is raised when control frames are processed. More...
 
(void) - addOnRaiseControlFrameResponses:
 Adds a handler that is raised when a control frame response is raised. More...
 
(NSMutableArray *) - addOnRaiseControlFrameResponsesWithBlock
 Adds a handler that is raised when a control frame response is raised. More...
 
(void) - addOnRaiseControlFrameResponsesWithBlock:
 Adds a handler that is raised when a control frame response is raised. More...
 
(void) - addOnRaiseFrame:
 Adds a handler that is raised when a frame is raised. More...
 
(FMLiveSwitchMediaFrame *) - addOnRaiseFrameWithBlock
 Adds a handler that is raised when a frame is raised. More...
 
(void) - addOnRaiseFrameWithBlock:
 Adds a handler that is raised when a frame is raised. More...
 
(NSString *) - content
 Gets the content descriptor. More...
 
(int) - getCcmSequenceNumber
 Gets the CCM sequence number. More...
 
(long long) - getPipelineSystemDelayWithOutputFormat:
 Gets the total pipeline system delay in ticks for a given media format. More...
 
(void) - incrementCcmSequenceNumber
 Increments the CCM sequence number. More...
 
(int) - maxOutputBitrate
 Gets the maximum allowed output bitrate, in kbps. More...
 
(FMLiveSwitchEncodingInfo *) - maxOutputEncoding
 Gets the maximum allowed output encoding. More...
 
(int) - minOutputBitrate
 Gets the minimum allowed output bitrate, in kbps. More...
 
(FMLiveSwitchEncodingInfo *) - minOutputEncoding
 Gets the minimum allowed output encoding. More...
 
(bool) - outputDeactivated
 Gets whether output is deactivated. More...
 
(bool) - outputMuted
 Gets whether output is muted. More...
 
(NSString *) - outputRtpStreamId
 Gets the output RTP stream identifier. More...
 
(bool) - outputSynchronizable
 Gets whether output is synchronizable. More...
 
(long long) - outputSynchronizationSource
 Gets the output synchronization source. More...
 
(void) - processControlFrames:
 Processes control frames. More...
 
(FMLiveSwitchError *) - processSdpMediaDescriptionFromOutputWithMediaDescription:isOffer:isLocalDescription:
 Processes a local SDP media description from an output. More...
 
(void) - processSourceStatsFromOutputWithSourceStats:
 Processes source stats from an output. More...
 
(void) - processTrackStatsFromOutputWithTrackStats:
 Processes track stats from an output. More...
 
(void) - removeOnDisabledChange:
 Removes a handler that is raised when the Disabled property changes state. More...
 
(void) - removeOnDisabledChangeWithCaller:
 Removes a handler that is raised when the Disabled property changes state. More...
 
(void) - removeOnPausedChange:
 Removes a handler that is raised when the Paused property changes state. More...
 
(void) - removeOnProcessControlFrames:
 Removes a handler that is raised when control frames are processed. More...
 
(void) - removeOnRaiseControlFrameResponses:
 Removes a handler that is raised when a control frame response is raised. More...
 
(void) - removeOnRaiseFrame:
 Removes a handler that is raised when a frame is raised. More...
 
(long long) - systemDelay
 Gets the system delay in ticks. More...
 
(int) - targetOutputBitrate
 Gets the target output bitrate, in kbps. More...
 
(FMLiveSwitchEncodingInfo *) - targetOutputEncoding
 Gets the target output encoding. More...
 
- Instance Methods inherited from <FMLiveSwitchIOutput>
(void) - addOutput:
 Adds an output. More...
 
(void) - addOutputs:
 Adds some outputs. More...
 
(NSObject< FMLiveSwitchIInput > *) - output
 Gets the output. More...
 
(FMLiveSwitchMediaFormat *) - outputFormat
 Gets the output format. More...
 
(NSMutableArray *) - outputs
 Gets the outputs. More...
 
(NSString *) - pipelineJsonFromOutput
 Gets the pipeline JSON from an output. More...
 
(bool) - removeOutput:
 Removes an output. More...
 
(void) - removeOutputs
 Removes all outputs. More...
 
(void) - removeOutputs:
 Removes some outputs. More...
 
- Instance Methods inherited from <FMLiveSwitchIElement>
(NSString *) - externalId
 Gets the external identifier. More...
 
(NSString *) - id
 Gets the identifier. More...
 
(NSString *) - pipelineJson
 Gets the pipeline JSON with this as the central point. More...
 
(void) - setExternalId:
 Sets the external identifier. More...
 
- Instance Methods inherited from <FMLiveSwitchIMediaElement>
(bool) - deactivated
 Gets a value indicating whether this instance is deactivated. More...
 
(bool) - disabled
 Gets a value indicating whether this instance is disabled. More...
 
(bool) - muted
 Gets a value indicating whether this instance is muted. More...
 
(bool) - paused
 Gets a value indicating whether this instance is paused. More...
 
(bool) - persistent
 Gets a value indicating whether this instance is persistent. More...
 
(void) - setDeactivated:
 Sets a value indicating whether this instance is deactivated. More...
 
(void) - setMuted:
 Sets a value indicating whether this instance is muted. More...
 

Class Methods

(FMLiveSwitchVideoTrack *) + videoTrack
 Initializes a new instance of the FMLiveSwitchVideoTrack class. More...
 
(FMLiveSwitchVideoTrack *) + videoTrackWithElement:
 Initializes a new instance of the FMLiveSwitchVideoTrack class. More...
 
(FMLiveSwitchVideoTrack *) + videoTrackWithTracks:
 Initializes a new instance of the FMLiveSwitchVideoTrack class. More...
 
- Class Methods inherited from FMLiveSwitchMediaTrack
(FMLiveSwitchMediaTrack *) + mediaTrack
 

Additional Inherited Members

- Protected Attributes inherited from FMLiveSwitchMediaTrack
 __pad0__: FMLiveSwitchMediaTrackBase<FMLiveSwitchIMediaTrack
 
 FMLiveSwitchIMediaElement
 

Detailed Description

A video track.

Method Documentation

◆ addElement:

- (void) addElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Adds an element.

Parameters
element

◆ addOnSize:

- (void) addOnSize: (FMLiveSwitchAction1< FMLiveSwitchSize * > *)  value

Adds a handler that is raised whenever the video's frame size is known, once per frame.

◆ addOnSizeChange:

- (void) addOnSizeChange: (FMLiveSwitchAction1< FMLiveSwitchSize * > *)  value

Adds a handler that is raised whenever the video's frame size changes.

◆ addOnSizeChangeWithBlock

- (FMLiveSwitchSize*) addOnSizeChangeWithBlock

Adds a handler that is raised whenever the video's frame size changes.

◆ addOnSizeChangeWithBlock:

- (void) addOnSizeChangeWithBlock: (void(^)(FMLiveSwitchSize *))  valueBlock

Adds a handler that is raised whenever the video's frame size changes.

◆ addOnSizeWithBlock

- (FMLiveSwitchSize*) addOnSizeWithBlock

Adds a handler that is raised whenever the video's frame size is known, once per frame.

◆ addOnSizeWithBlock:

- (void) addOnSizeWithBlock: (void(^)(FMLiveSwitchSize *))  valueBlock

Adds a handler that is raised whenever the video's frame size is known, once per frame.

◆ arrayFromInputs:

- (NSMutableArray*) arrayFromInputs: (NSMutableArray< NSObject< FMLiveSwitchIVideoInput > * > *)  inputs

Creates an array of inputs from a list of inputs.

Parameters
inputsThe list of inputs.

◆ arrayFromOutputs:

- (NSMutableArray*) arrayFromOutputs: (NSMutableArray< NSObject< FMLiveSwitchIVideoOutput > * > *)  outputs

Creates an array of outputs from a list of outputs.

Parameters
outputsThe list of outputs.

◆ arrayFromSinks:

- (NSMutableArray*) arrayFromSinks: (NSMutableArray< FMLiveSwitchVideoSink * > *)  sinks

Creates an array of sinks from a list of sinks.

Parameters
sinksThe list of sinks.

◆ branchFromTracks:

- (FMLiveSwitchVideoBranch*) branchFromTracks: (NSMutableArray *)  tracks

Creates a branch from an array of tracks.

Parameters
tracksThe tracks.

Implements FMLiveSwitchMediaTrack.

◆ destroy

- (bool) destroy

Destroys this media track.

Implements FMLiveSwitchMediaTrack.

◆ elements

- (NSMutableArray*) elements

Gets the elements.

Implements FMLiveSwitchMediaTrack.

◆ grabFrame

Grabs the next raw video frame.

◆ init

- (instancetype) init

Initializes a new instance of the FMLiveSwitchVideoTrack class.

Implements FMLiveSwitchMediaTrack.

◆ initWithElement:

- (instancetype) initWithElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Initializes a new instance of the FMLiveSwitchVideoTrack class.

Parameters
elementThe element.

◆ initWithTracks:

- (instancetype) initWithTracks: (NSMutableArray *)  tracks

Initializes a new instance of the FMLiveSwitchVideoTrack class.

Parameters
tracksThe branch of tracks.

◆ isBranchWithElement:

- (bool) isBranchWithElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Determines whether the specified element is a branch.

Parameters
elementThe element.

◆ isInputWithElement:

- (bool) isInputWithElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Determines whether the specified element is an input.

Parameters
elementThe element.

◆ isOutputWithElement:

- (bool) isOutputWithElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Determines whether the specified element is an output.

Parameters
elementThe element.

◆ isPipeWithElement:

- (bool) isPipeWithElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Determines whether the specified element is a pipe.

Parameters
elementThe element.

◆ isSinkWithElement:

- (bool) isSinkWithElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Determines whether the specified element is a sink.

Parameters
elementThe element.

◆ isSourceWithElement:

- (bool) isSourceWithElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Determines whether the specified element is a source.

Parameters
elementThe element.

◆ isStreamWithElement:

- (bool) isStreamWithElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Determines whether the specified element is a stream.

Parameters
elementThe element.

◆ label

- (NSString*) label

Gets a label that identifies this class.

Implements FMLiveSwitchMediaTrack.

◆ removeOnSize:

- (void) removeOnSize: (FMLiveSwitchAction1< FMLiveSwitchSize * > *)  value

Removes a handler that is raised whenever the video's frame size is known, once per frame.

◆ removeOnSizeChange:

- (void) removeOnSizeChange: (FMLiveSwitchAction1< FMLiveSwitchSize * > *)  value

Removes a handler that is raised whenever the video's frame size changes.

◆ size

- (FMLiveSwitchSize*) size

Gets the size of the last processed video frame, if known.

◆ videoTrack

+ (FMLiveSwitchVideoTrack*) videoTrack

Initializes a new instance of the FMLiveSwitchVideoTrack class.

◆ videoTrackWithElement:

+ (FMLiveSwitchVideoTrack*) videoTrackWithElement: (NSObject< FMLiveSwitchIVideoElement > *)  element

Initializes a new instance of the FMLiveSwitchVideoTrack class.

Parameters
elementThe element.

◆ videoTrackWithTracks:

+ (FMLiveSwitchVideoTrack*) videoTrackWithTracks: (NSMutableArray *)  tracks

Initializes a new instance of the FMLiveSwitchVideoTrack class.

Parameters
tracksThe branch of tracks.