Class MediaPipe<TIOutput, TIOutputCollection, TIInput, TIInputCollection, TPipe, TFrame, TBuffer, TBufferCollection, TFormat>
A media pipe.
Inheritance
Implements
Inherited Members
Namespace: FM.LiveSwitch
Assembly: FM.LiveSwitch.dll
Syntax
public abstract class MediaPipe<TIOutput, TIOutputCollection, TIInput, TIInputCollection, TPipe, TFrame, TBuffer, TBufferCollection, TFormat> : Dynamic, IMediaOutput<TIOutput, TIInput, TFrame, TBuffer, TBufferCollection, TFormat>, IOutput<TIOutput, TIInput, TFrame, TBuffer, TBufferCollection, TFormat>, IMediaInput<TIOutput, TIInput, TFrame, TBuffer, TBufferCollection, TFormat>, IInput<TIOutput, TIInput, TFrame, TBuffer, TBufferCollection, TFormat>, IMediaElement, IElement where TIOutput : class, IMediaOutput<TIOutput, TIInput, TFrame, TBuffer, TBufferCollection, TFormat> where TIOutputCollection : IMediaOutputCollection<TIOutput, TIInput, TFrame, TBuffer, TBufferCollection, TFormat, TIOutputCollection> where TIInput : class, IMediaInput<TIOutput, TIInput, TFrame, TBuffer, TBufferCollection, TFormat> where TIInputCollection : IMediaInputCollection<TIOutput, TIInput, TFrame, TBuffer, TBufferCollection, TFormat, TIInputCollection> where TPipe : MediaPipe<TIOutput, TIOutputCollection, TIInput, TIInputCollection, TPipe, TFrame, TBuffer, TBufferCollection, TFormat>, TIOutput, TIInput where TFrame : MediaFrame<TBuffer, TBufferCollection, TFormat, TFrame> where TBuffer : MediaBuffer<TFormat, TBuffer> where TBufferCollection : MediaBufferCollection<TBuffer, TBufferCollection, TFormat> where TFormat : MediaFormat<TFormat>
Type Parameters
| Name | Description |
|---|---|
| TIOutput | The type of the output interface. |
| TIOutputCollection | The type of the output interface collection. |
| TIInput | The type of the input interface. |
| TIInputCollection | The type of the input interface collection. |
| TPipe | The type of the pipe. |
| TFrame | The type of the frame. |
| TBuffer | The type of the buffer. |
| TBufferCollection | The type of the buffer collection. |
| TFormat | The type of the format. |
Constructors
MediaPipe(TFormat)
Initializes a new instance of the MediaPipe<TIOutput, TIOutputCollection, TIInput, TIInputCollection, TPipe, TFrame, TBuffer, TBufferCollection, TFormat> class.
Declaration
public MediaPipe(TFormat outputFormat)
Parameters
| Type | Name | Description |
|---|---|---|
| TFormat | outputFormat | The output format. |
MediaPipe(TFormat, TFormat, LogContext)
Initializes a new instance of the MediaPipe<TIOutput, TIOutputCollection, TIInput, TIInputCollection, TPipe, TFrame, TBuffer, TBufferCollection, TFormat> class.
Declaration
public MediaPipe(TFormat inputFormat, TFormat outputFormat, LogContext logContext)
Parameters
| Type | Name | Description |
|---|---|---|
| TFormat | inputFormat | The input format. |
| TFormat | outputFormat | The output format. |
| LogContext | logContext | The log Ccontext. |
Properties
AllowDiagnosticTimer
Gets whether this media pipe is allowed to be timed.
Declaration
protected virtual bool AllowDiagnosticTimer { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
AllowDurationTimer
Gets whether this media pipe duration is allowed to be timed.
Declaration
protected virtual bool AllowDurationTimer { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
AllowInputRateTimer
Gets whether this media pipe input rate is allowed to be timed.
Declaration
protected virtual bool AllowInputRateTimer { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
AllowOutputRateTimer
Gets whether this media pipe output rate is allowed to be timed.
Declaration
protected virtual bool AllowOutputRateTimer { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
CanChangeBitrate
Gets whether this pipe can change the output bitrate.
Declaration
protected virtual bool CanChangeBitrate { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
CanPauseBitrate
Gets whether this pipe can pause the output bitrate.
Declaration
protected virtual bool CanPauseBitrate { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Content
Gets the content descriptor.
Declaration
public virtual string Content { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
Deactivated
Gets or sets a value indicating whether this pipe is deactivated. A pipe is deactivated if it's input and output are deactivated. Alias for InputDeactivated and OutputDeactivated.
Declaration
public bool Deactivated { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
DeactivatedByApplication
Gets or sets whether this pipe is deactivated because the application has requested it.
Declaration
public bool DeactivatedByApplication { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
DeactivatedByServer
Gets or sets whether this pipe is deactivated because the server has requested it.
Declaration
public bool DeactivatedByServer { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Disabled
Gets a value indicating whether this pipe is disabled. A pipe is automatically disabled if it is deactivated or if all of its outputs are disabled. A disabled pipe will not accept frames raised by its inputs.
Declaration
public virtual bool Disabled { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
ExternalId
Gets or sets the external identifier.
Declaration
public string ExternalId { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Id
Gets the identifier.
Declaration
public string Id { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
Input
Gets or sets the input.
Declaration
public TIOutput Input { get; set; }
Property Value
| Type | Description |
|---|---|
| TIOutput |
InputDeactivated
Gets or sets whether input is deactivated.
Declaration
public bool InputDeactivated { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
InputFormat
Gets the input format.
Declaration
public TFormat InputFormat { get; }
Property Value
| Type | Description |
|---|---|
| TFormat |
InputMuted
Gets or sets whether input is muted.
Declaration
public bool InputMuted { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
InputRtpStreamId
Gets or sets the input RTP stream identifier. If the input RTP stream identifier is null (unset), then getting this property returns the first valid output RTP stream identifier from the array of Inputs, or null if they are all unset.
Declaration
public string InputRtpStreamId { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Inputs
Gets or sets the inputs.
Declaration
public TIOutput[] Inputs { get; set; }
Property Value
| Type | Description |
|---|---|
| TIOutput[] |
InputSynchronizationSource
Gets or sets the input synchronization source. If the input synchronization source is -1 (unset), then getting this property returns the first valid output synchronization source from the array of Inputs, or -1 if they are all unset.
Declaration
public long InputSynchronizationSource { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int64 |
IsMixer
Gets whether this pipe processes media from different sources.
Declaration
protected virtual bool IsMixer { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Label
Gets a label that identifies this class.
Declaration
public abstract string Label { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
LogContext
Gets or sets the log context.
Declaration
public LogContext LogContext { get; protected set; }
Property Value
| Type | Description |
|---|---|
| LogContext |
MaxInputBitrate
Gets or sets the maximum allowed input bitrate, in kbps. A value of -1 indicates unset (no maximum).
Declaration
public virtual int MaxInputBitrate { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
MaxInputEncoding
Gets or sets the max input encoding.
Declaration
public virtual EncodingInfo MaxInputEncoding { get; protected set; }
Property Value
| Type | Description |
|---|---|
| EncodingInfo |
MaxOutputBitrate
Gets or sets the maximum allowed output bitrate, in kbps. A value of -1 indicates unset (no maximum).
Declaration
public virtual int MaxOutputBitrate { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
MaxOutputEncoding
Gets or sets the max output encoding.
Declaration
public virtual EncodingInfo MaxOutputEncoding { get; protected set; }
Property Value
| Type | Description |
|---|---|
| EncodingInfo |
MinInputBitrate
Gets or sets the minimum allowed output bitrate, in kbps. A value of -1 indicates unset (no minimum).
Declaration
public virtual int MinInputBitrate { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
MinInputEncoding
Gets or sets the min input encoding.
Declaration
public virtual EncodingInfo MinInputEncoding { get; protected set; }
Property Value
| Type | Description |
|---|---|
| EncodingInfo |
MinOutputBitrate
Gets or sets the minimum allowed output bitrate, in kbps. A value of -1 indicates unset (no minimum).
Declaration
public virtual int MinOutputBitrate { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
MinOutputEncoding
Gets or sets the min output encoding.
Declaration
public virtual EncodingInfo MinOutputEncoding { get; protected set; }
Property Value
| Type | Description |
|---|---|
| EncodingInfo |
Muted
Gets or sets whether output is muted. Alias for OutputMuted.
Declaration
public bool Muted { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Output
Gets or sets the output.
Declaration
public TIInput Output { get; set; }
Property Value
| Type | Description |
|---|---|
| TIInput |
OutputDeactivated
Gets or sets whether output is deactivated.
Declaration
public bool OutputDeactivated { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
OutputFormat
Gets the output format.
Declaration
public TFormat OutputFormat { get; }
Property Value
| Type | Description |
|---|---|
| TFormat |
OutputMuted
Gets or sets whether output is muted.
Declaration
public bool OutputMuted { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
OutputRtpStreamId
Gets or sets the output RTP stream identifier. If the output RTP stream identifier is null (unset), then getting this property returns the InputRtpStreamId.
Declaration
public string OutputRtpStreamId { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Outputs
Gets or sets the outputs.
Declaration
public TIInput[] Outputs { get; set; }
Property Value
| Type | Description |
|---|---|
| TIInput[] |
OutputSynchronizable
Gets or sets whether output is synchronizable.
Declaration
public bool OutputSynchronizable { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
OutputSynchronizationSource
Gets or sets the output synchronization source. If the output synchronization source is -1 (unset), then getting this property returns the InputSynchronizationSource.
Declaration
public long OutputSynchronizationSource { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int64 |
OverConstrained
Gets whether this pipe is over-constrained. A pipe is over-constrained if either it's input or output is over-constrained.
Declaration
public bool OverConstrained { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
OverConstrainedBitrate
Gets whether the pipe bitrate is over-constrained. A pipe bitrate is over-constrained if the input bitrate or output bitrate is over-constrained.
Declaration
public bool OverConstrainedBitrate { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
OverConstrainedInput
Gets whether the input is over-contrained. An input is over-constrained if it's input bitrate is over-contrained.
Declaration
public virtual bool OverConstrainedInput { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
OverConstrainedInputBitrate
Gets whether the minimum allowed input bitrate exceeds the maximum allowed input bitrate.
Declaration
public bool OverConstrainedInputBitrate { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
OverConstrainedOutput
Gets whether the output is over-constrained. An output is over-constrained if it's output bitrate is over-contrained.
Declaration
public virtual bool OverConstrainedOutput { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
OverConstrainedOutputBitrate
Gets whether the minimum allowed output bitrate exceeds the maximum allowed output bitrate.
Declaration
public bool OverConstrainedOutputBitrate { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Paused
Gets a value indicating whether this pipe is paused.
Declaration
public bool Paused { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Persistent
Gets or sets a value indicating whether this instance is persistent.
If true, this instance will not be destroyed unless
Destroy() is called explicitly on this instance.
It will survive destruction of any parent elements that are
being destroyed.
Declaration
public bool Persistent { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
PipelineJson
Gets the pipeline JSON with this as the central point.
Declaration
public string PipelineJson { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
PipelineJsonBase
Gets the pipeline JSON base.
Declaration
protected string PipelineJsonBase { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
PipelineJsonFromInput
Gets the pipeline JSON from an input.
Declaration
public virtual string PipelineJsonFromInput { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
PipelineJsonFromOutput
Gets the pipeline JSON from an output.
Declaration
public virtual string PipelineJsonFromOutput { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
PipelineJsonInputs
Gets the pipeline JSON inputs.
Declaration
protected string PipelineJsonInputs { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
PipelineJsonOutputs
Gets the pipeline JSON outputs.
Declaration
protected string PipelineJsonOutputs { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
ProcessFramePolicy
Gets or sets the ProcessFramePolicy for this media input.
Declaration
public ProcessFramePolicy ProcessFramePolicy { get; set; }
Property Value
| Type | Description |
|---|---|
| ProcessFramePolicy |
State
Gets the state.
Declaration
public MediaPipeState State { get; }
Property Value
| Type | Description |
|---|---|
| MediaPipeState |
SynchronizationSource
Gets or sets the output synchronization source. Alias for OutputSynchronizationSource.
Declaration
public long SynchronizationSource { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int64 |
SystemDelay
Gets or sets the system delay in ticks.
Declaration
public long SystemDelay { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Int64 |
Tag
Gets or sets optional data to associate with this instance.
Declaration
public string Tag { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
TargetOutputBitrate
Gets or sets the target output bitrate, in kbps. A value of -1 indicates unset (no target).
Declaration
public virtual int TargetOutputBitrate { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
TargetOutputEncoding
Gets or sets the target output encoding.
Declaration
public virtual EncodingInfo TargetOutputEncoding { get; protected set; }
Property Value
| Type | Description |
|---|---|
| EncodingInfo |
Methods
AddInput(TIOutput)
Adds an input.
Declaration
public void AddInput(TIOutput input)
Parameters
| Type | Name | Description |
|---|---|---|
| TIOutput | input | The input. |
AddInputs(TIOutput[])
Adds some inputs.
Declaration
public void AddInputs(TIOutput[] inputs)
Parameters
| Type | Name | Description |
|---|---|---|
| TIOutput[] | inputs | The inputs. |
AddOutput(TIInput)
Adds an output.
Declaration
public void AddOutput(TIInput output)
Parameters
| Type | Name | Description |
|---|---|---|
| TIInput | output | The output. |
AddOutputs(TIInput[])
Adds some outputs.
Declaration
public void AddOutputs(TIInput[] outputs)
Parameters
| Type | Name | Description |
|---|---|---|
| TIInput[] | outputs | The outputs. |
CreateFrame(TBuffer)
Creates a frame.
Declaration
protected abstract TFrame CreateFrame(TBuffer buffer)
Parameters
| Type | Name | Description |
|---|---|---|
| TBuffer | buffer | The buffer. |
Returns
| Type | Description |
|---|---|
| TFrame |
CreateInputCollection(TIOutput)
Creates an input collection.
Declaration
protected abstract TIInputCollection CreateInputCollection(TIOutput output)
Parameters
| Type | Name | Description |
|---|---|---|
| TIOutput | output | The output. |
Returns
| Type | Description |
|---|---|
| TIInputCollection |
CreateOutputCollection(TIInput)
Creates an output collection.
Declaration
protected abstract TIOutputCollection CreateOutputCollection(TIInput input)
Parameters
| Type | Name | Description |
|---|---|---|
| TIInput | input | The input. |
Returns
| Type | Description |
|---|---|
| TIOutputCollection |
Destroy()
Destroys this instance.
Declaration
public bool Destroy()
Returns
| Type | Description |
|---|---|
| System.Boolean |
DoDestroy()
Destroys this instance.
Declaration
protected abstract void DoDestroy()
DoPostProcessFrame(TFrame, TBuffer)
Post-processes a frame.
Declaration
protected virtual void DoPostProcessFrame(TFrame frame, TBuffer inputBuffer)
Parameters
| Type | Name | Description |
|---|---|---|
| TFrame | frame | The frame. |
| TBuffer | inputBuffer | The input buffer. |
DoPreProcessFrame(TFrame, TBuffer)
Pre-processes a frame.
Declaration
protected virtual void DoPreProcessFrame(TFrame frame, TBuffer inputBuffer)
Parameters
| Type | Name | Description |
|---|---|---|
| TFrame | frame | The frame. |
| TBuffer | inputBuffer | The input buffer. |
DoProcessControlFrameResponses(MediaControlFrame[])
Processes control frame responses.
Declaration
protected virtual void DoProcessControlFrameResponses(MediaControlFrame[] controlFrameResponses)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame[] | controlFrameResponses | The control frame responses. |
DoProcessControlFrames(MediaControlFrame[])
Processes control frames.
Declaration
protected virtual void DoProcessControlFrames(MediaControlFrame[] controlFrames)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame[] | controlFrames | The control frames. |
DoProcessFrame(TFrame, TBuffer)
Processes a frame.
Declaration
protected abstract void DoProcessFrame(TFrame frame, TBuffer inputBuffer)
Parameters
| Type | Name | Description |
|---|---|---|
| TFrame | frame | The frame. |
| TBuffer | inputBuffer | The input buffer. |
DoProcessSdpMediaDescription(MediaDescription, Boolean, Boolean)
Processes an SDP media description.
Declaration
protected virtual Error DoProcessSdpMediaDescription(MediaDescription mediaDescription, bool isOffer, bool isLocalDescription)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaDescription | mediaDescription | The media description. |
| System.Boolean | isOffer | if set to |
| System.Boolean | isLocalDescription | if set to |
Returns
| Type | Description |
|---|---|
| Error |
DoProcessSinkStatsFromInput(MediaSinkStats)
Processes sink stats from an input.
Declaration
protected virtual void DoProcessSinkStatsFromInput(MediaSinkStats sinkStats)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaSinkStats | sinkStats | The sink stats. |
DoProcessSourceStatsFromOutput(MediaSourceStats)
Processes source stats from an output.
Declaration
protected virtual void DoProcessSourceStatsFromOutput(MediaSourceStats sourceStats)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaSourceStats | sourceStats | The source stats. |
DoProcessTrackStatsFromInput(MediaTrackStats)
Processes track stats from an input.
Declaration
protected virtual void DoProcessTrackStatsFromInput(MediaTrackStats trackStats)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaTrackStats | trackStats | The track stats. |
DoProcessTrackStatsFromOutput(MediaTrackStats)
Processes track stats from an output.
Declaration
protected virtual void DoProcessTrackStatsFromOutput(MediaTrackStats trackStats)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaTrackStats | trackStats | The track stats. |
GetCcmSequenceNumber()
Gets the CCM sequence number.
Declaration
public int GetCcmSequenceNumber()
Returns
| Type | Description |
|---|---|
| System.Int32 |
GetPipelineSystemDelay(TFormat)
Gets the total pipeline system delay in ticks for a given output format.
Declaration
public long GetPipelineSystemDelay(TFormat outputFormat)
Parameters
| Type | Name | Description |
|---|---|---|
| TFormat | outputFormat | The output format. |
Returns
| Type | Description |
|---|---|
| System.Int64 | The total pipeline system delay in ticks. |
HasInput(TIOutput)
Determines whether this pipe has the specified input.
Declaration
public bool HasInput(TIOutput input)
Parameters
| Type | Name | Description |
|---|---|---|
| TIOutput | input | The input. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
HasOutput(TIInput)
Determines whether this pipe has the specified output.
Declaration
public bool HasOutput(TIInput output)
Parameters
| Type | Name | Description |
|---|---|---|
| TIInput | output | The output. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
IncrementCcmSequenceNumber()
Increments the CCM sequence number.
Declaration
public void IncrementCcmSequenceNumber()
InputAdded(TIOutput)
Called when an input is added.
Declaration
protected virtual void InputAdded(TIOutput input)
Parameters
| Type | Name | Description |
|---|---|---|
| TIOutput | input | The input. |
InputRemoved(TIOutput)
Called when an input is removed.
Declaration
protected virtual void InputRemoved(TIOutput input)
Parameters
| Type | Name | Description |
|---|---|---|
| TIOutput | input | The input. |
OutputAdded(TIInput)
Called when an output is added.
Declaration
protected virtual void OutputAdded(TIInput output)
Parameters
| Type | Name | Description |
|---|---|---|
| TIInput | output | The output. |
OutputCanProcessFrame(TIInput)
Determines whether an output can process a frame from this pipe.
Declaration
protected virtual bool OutputCanProcessFrame(TIInput output)
Parameters
| Type | Name | Description |
|---|---|---|
| TIInput | output | The output. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
OutputRemoved(TIInput)
Called when an output is removed.
Declaration
protected virtual void OutputRemoved(TIInput output)
Parameters
| Type | Name | Description |
|---|---|---|
| TIInput | output | The output. |
ProcessBuffer(TBuffer)
Processes a buffer, returning a future that is resolved when processing is complete. The resolved future will contain a buffer that MUST be freed, as it is not known whether the underlying implementation is using data buffer pooling.
Declaration
public Future<TBuffer> ProcessBuffer(TBuffer buffer)
Parameters
| Type | Name | Description |
|---|---|---|
| TBuffer | buffer | The buffer. |
Returns
| Type | Description |
|---|---|
| Future<TBuffer> |
ProcessControlFrame(MediaControlFrame)
Processes a control frame.
Declaration
public void ProcessControlFrame(MediaControlFrame controlFrame)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame | controlFrame | The control frame. |
ProcessControlFrameResponse(MediaControlFrame)
Processes a control frame response.
Declaration
public void ProcessControlFrameResponse(MediaControlFrame controlFrameResponse)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame | controlFrameResponse | The control frame response. |
ProcessControlFrameResponses(MediaControlFrame[])
Processes control frame responses.
Declaration
public void ProcessControlFrameResponses(MediaControlFrame[] controlFrameResponses)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame[] | controlFrameResponses | The control frame responses. |
ProcessControlFrames(MediaControlFrame[])
Processes control frames.
Declaration
public void ProcessControlFrames(MediaControlFrame[] controlFrames)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame[] | controlFrames | The control frames. |
ProcessFrame(TFrame)
Processes a frame.
Declaration
public virtual bool ProcessFrame(TFrame frame)
Parameters
| Type | Name | Description |
|---|---|---|
| TFrame | frame | The frame. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
ProcessSdpMediaDescriptionFromInput(MediaDescription, Boolean, Boolean)
Processes an SDP media description from an input.
Declaration
public Error ProcessSdpMediaDescriptionFromInput(MediaDescription mediaDescription, bool isOffer, bool isLocalDescription)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaDescription | mediaDescription | The media description. |
| System.Boolean | isOffer | if set to |
| System.Boolean | isLocalDescription | if set to |
Returns
| Type | Description |
|---|---|
| Error |
ProcessSdpMediaDescriptionFromOutput(MediaDescription, Boolean, Boolean)
Processes an SDP media description from an output.
Declaration
public Error ProcessSdpMediaDescriptionFromOutput(MediaDescription mediaDescription, bool isOffer, bool isLocalDescription)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaDescription | mediaDescription | The media description. |
| System.Boolean | isOffer | if set to |
| System.Boolean | isLocalDescription | if set to |
Returns
| Type | Description |
|---|---|
| Error |
ProcessSinkStatsFromInput(MediaSinkStats)
Processes sink stats from an input.
Declaration
public void ProcessSinkStatsFromInput(MediaSinkStats sinkStats)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaSinkStats | sinkStats | The sink stats. |
ProcessSourceStatsFromOutput(MediaSourceStats)
Processes source stats from an output.
Declaration
public void ProcessSourceStatsFromOutput(MediaSourceStats sourceStats)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaSourceStats | sourceStats | The source stats. |
ProcessTrackStatsFromInput(MediaTrackStats)
Processes track stats from an input.
Declaration
public void ProcessTrackStatsFromInput(MediaTrackStats trackStats)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaTrackStats | trackStats | The track stats. |
ProcessTrackStatsFromOutput(MediaTrackStats)
Processes track stats from an output.
Declaration
public void ProcessTrackStatsFromOutput(MediaTrackStats trackStats)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaTrackStats | trackStats | The track stats. |
RaiseControlFrame(MediaControlFrame)
Raises a control frame.
Declaration
protected void RaiseControlFrame(MediaControlFrame controlFrame)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame | controlFrame | The control frame. |
RaiseControlFrame(MediaControlFrame, TIOutput[])
Raises a control frame.
Declaration
protected void RaiseControlFrame(MediaControlFrame controlFrame, TIOutput[] inputs)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame | controlFrame | The control frame. |
| TIOutput[] | inputs | The inputs. |
RaiseControlFrameResponse(MediaControlFrame)
Raises a control frame response.
Declaration
protected void RaiseControlFrameResponse(MediaControlFrame controlFrameResponse)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame | controlFrameResponse | The control frame response. |
RaiseControlFrameResponse(MediaControlFrame, TIInput[])
Raises a control frame response.
Declaration
protected void RaiseControlFrameResponse(MediaControlFrame controlFrameResponse, TIInput[] outputs)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame | controlFrameResponse | The control frame response. |
| TIInput[] | outputs | The outputs. |
RaiseControlFrameResponses(MediaControlFrame[])
Raises control frame responses.
Declaration
protected void RaiseControlFrameResponses(MediaControlFrame[] controlFrameResponses)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame[] | controlFrameResponses | The control frame responses. |
RaiseControlFrameResponses(MediaControlFrame[], TIInput[])
Raises control frame responses.
Declaration
protected void RaiseControlFrameResponses(MediaControlFrame[] controlFrameResponses, TIInput[] outputs)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame[] | controlFrameResponses | The control frame responses. |
| TIInput[] | outputs | The outputs. |
RaiseControlFrames(MediaControlFrame[])
Raises control frames.
Declaration
protected void RaiseControlFrames(MediaControlFrame[] controlFrames)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame[] | controlFrames | The control frames. |
RaiseControlFrames(MediaControlFrame[], TIOutput[])
Raises control frames.
Declaration
protected void RaiseControlFrames(MediaControlFrame[] controlFrames, TIOutput[] inputs)
Parameters
| Type | Name | Description |
|---|---|---|
| MediaControlFrame[] | controlFrames | The control frames. |
| TIOutput[] | inputs | The inputs. |
RaiseDisabledChange()
Raises the OnDisabledChange event.
Declaration
protected void RaiseDisabledChange()
RaiseFrame(TFrame)
Raises a frame.
Declaration
protected virtual void RaiseFrame(TFrame frame)
Parameters
| Type | Name | Description |
|---|---|---|
| TFrame | frame | The frame. |
RemoveInput(TIOutput)
Removes an input.
Declaration
public bool RemoveInput(TIOutput input)
Parameters
| Type | Name | Description |
|---|---|---|
| TIOutput | input | The input. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
RemoveInputs()
Removes all inputs.
Declaration
public void RemoveInputs()
RemoveInputs(TIOutput[])
Removes some inputs.
Declaration
public void RemoveInputs(TIOutput[] inputs)
Parameters
| Type | Name | Description |
|---|---|---|
| TIOutput[] | inputs | The inputs. |
RemoveOutput(TIInput)
Removes an output.
Declaration
public bool RemoveOutput(TIInput output)
Parameters
| Type | Name | Description |
|---|---|---|
| TIInput | output | The output. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
RemoveOutputs()
Removes all outputs.
Declaration
public void RemoveOutputs()
RemoveOutputs(TIInput[])
Removes some outputs.
Declaration
public void RemoveOutputs(TIInput[] outputs)
Parameters
| Type | Name | Description |
|---|---|---|
| TIInput[] | outputs | The outputs. |
ToString()
Returns a string that represents this instance.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| System.String |
Overrides
TrySetInputFormat(TFrame)
Sets the input format, if not set, using the frame's last buffer format.
Declaration
protected bool TrySetInputFormat(TFrame frame)
Parameters
| Type | Name | Description |
|---|---|---|
| TFrame | frame | The frame. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
|
UpdateLogContext(LogContext)
Updates the log context.
Declaration
public void UpdateLogContext(LogContext context)
Parameters
| Type | Name | Description |
|---|---|---|
| LogContext | context |
Events
OnDisabledChange
Raised when the Disabled property changes state.
Declaration
public event Action0 OnDisabledChange
Event Type
| Type | Description |
|---|---|
| Action0 |
OnDisabledChangeWithCaller
Raised when the Disabled property changes state.
Declaration
public event Action1<object> OnDisabledChangeWithCaller
Event Type
| Type | Description |
|---|---|
| Action1<System.Object> |
OnPausedChange
Raised when the Paused property changes state.
Declaration
public event Action0 OnPausedChange
Event Type
| Type | Description |
|---|---|
| Action0 |
OnProcessControlFrameResponses
Raised when control frame responses are processed.
Declaration
public event Action1<MediaControlFrame[]> OnProcessControlFrameResponses
Event Type
| Type | Description |
|---|---|
| Action1<MediaControlFrame[]> |
OnProcessControlFrames
Raised when control frames are processed.
Declaration
public event Action1<MediaControlFrame[]> OnProcessControlFrames
Event Type
| Type | Description |
|---|---|
| Action1<MediaControlFrame[]> |
OnProcessedControlFrameResponses
Raised when control frame responses have been processed.
Declaration
public event Action1<MediaControlFrame[]> OnProcessedControlFrameResponses
Event Type
| Type | Description |
|---|---|
| Action1<MediaControlFrame[]> |
OnProcessedControlFrames
Raised when control frames have been processed.
Declaration
public event Action1<MediaControlFrame[]> OnProcessedControlFrames
Event Type
| Type | Description |
|---|---|
| Action1<MediaControlFrame[]> |
OnProcessedFrame
Raised when a frame has been processed.
Declaration
public event Action1<TFrame> OnProcessedFrame
Event Type
| Type | Description |
|---|---|
| Action1<TFrame> |
OnProcessFrame
Raised when a frame is being processed.
Declaration
public event Action1<TFrame> OnProcessFrame
Event Type
| Type | Description |
|---|---|
| Action1<TFrame> |
OnProcessFrameException
Raised when an exception is thrown while processing a frame.
Declaration
public event Action2<TFrame, Exception> OnProcessFrameException
Event Type
| Type | Description |
|---|---|
| Action2<TFrame, System.Exception> |
OnRaiseControlFrameResponses
Raised when control frame responses are raised.
Declaration
public event Action1<MediaControlFrame[]> OnRaiseControlFrameResponses
Event Type
| Type | Description |
|---|---|
| Action1<MediaControlFrame[]> |
OnRaiseControlFrames
Raised when control frames are raised.
Declaration
public event Action1<MediaControlFrame[]> OnRaiseControlFrames
Event Type
| Type | Description |
|---|---|
| Action1<MediaControlFrame[]> |
OnRaisedControlFrameResponses
Raised when control frame responses have been raised.
Declaration
public event Action1<MediaControlFrame[]> OnRaisedControlFrameResponses
Event Type
| Type | Description |
|---|---|
| Action1<MediaControlFrame[]> |
OnRaisedControlFrames
Raised when control frames have been raised.
Declaration
public event Action1<MediaControlFrame[]> OnRaisedControlFrames
Event Type
| Type | Description |
|---|---|
| Action1<MediaControlFrame[]> |
OnRaisedFrame
Raised when a frame has been raised.
Declaration
public event Action1<TFrame> OnRaisedFrame
Event Type
| Type | Description |
|---|---|
| Action1<TFrame> |
OnRaiseFrame
Raised when a frame is being raised.
Declaration
public event Action1<TFrame> OnRaiseFrame
Event Type
| Type | Description |
|---|---|
| Action1<TFrame> |
OnStateChange
Raised when the state changes.
Declaration
public event Action1<TPipe> OnStateChange
Event Type
| Type | Description |
|---|---|
| Action1<TPipe> |