Interface IMedia<TIAudioTrack, TIVideoTrack>
Media interface.
Namespace: FM.LiveSwitch
Assembly: FM.LiveSwitch.dll
Syntax
public interface IMedia<TIAudioTrack, TIVideoTrack>
where TIAudioTrack : IAudioTrack where TIVideoTrack : IVideoTrack
Type Parameters
Name | Description |
---|---|
TIAudioTrack | |
TIVideoTrack |
Properties
AudioGain
Gets or sets a value indicating the audio gain (input amplification). If there are multiple audio tracks in a custom media stack, this property is bound to the first audio track.
Declaration
double AudioGain { get; set; }
Property Value
Type | Description |
---|---|
System.Double |
AudioLevelInterval
Gets or sets the interval in milliseconds between OnAudioLevel events.
Declaration
int AudioLevelInterval { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
AudioMuted
Gets or sets a value indicating whether the audio is muted. If there are multiple audio tracks in a custom media stack, this property is bound to the first audio track.
Declaration
bool AudioMuted { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
AudioTrack
Gets the audio track. If there are multiple audio tracks in a custom media stack, this property is bound to the first audio track.
Declaration
TIAudioTrack AudioTrack { get; }
Property Value
Type | Description |
---|---|
TIAudioTrack |
AudioTracks
Gets the audio tracks.
Declaration
TIAudioTrack[] AudioTracks { get; }
Property Value
Type | Description |
---|---|
TIAudioTrack[] |
AudioVolume
Gets or sets a value indicating the audio volume (output resistance). If there are multiple audio tracks in a custom media stack, this property is bound to the first audio track.
Declaration
double AudioVolume { get; set; }
Property Value
Type | Description |
---|---|
System.Double |
Id
Gets or sets the identifier.
Declaration
string Id { get; set; }
Property Value
Type | Description |
---|---|
System.String |
VideoMuted
Gets or sets a value indicating whether the video is muted. If there are multiple video tracks in a custom media stack, this property is bound to the first video track.
Declaration
bool VideoMuted { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
VideoSize
Gets the size of the last processed video frame, if known. If there are multiple video tracks in a custom media stack, this property is bound to the first video track.
Declaration
Size VideoSize { get; }
Property Value
Type | Description |
---|---|
Size |
VideoTrack
Gets the video track. If there are multiple video tracks in a custom media stack, this property is bound to the first video track.
Declaration
TIVideoTrack VideoTrack { get; }
Property Value
Type | Description |
---|---|
TIVideoTrack |
VideoTracks
Gets the video tracks.
Declaration
TIVideoTrack[] VideoTracks { get; }
Property Value
Type | Description |
---|---|
TIVideoTrack[] |
Methods
Destroy()
Destroys this media stack.
Declaration
void Destroy()
GrabVideoFrame()
Gets the next raw video frame. If there are multiple video tracks in a custom media stack, this method calls into the first video track.
Declaration
Future<VideoBuffer> GrabVideoFrame()
Returns
Type | Description |
---|---|
Future<VideoBuffer> | A future video buffer. |
Events
OnAudioDestroyed
Raised when the audio track is destroyed. If there are multiple audio tracks in a custom media stack, this event is only triggered by the first audio track.
Declaration
event Action0 OnAudioDestroyed
Event Type
Type | Description |
---|---|
Action0 |
OnAudioLevel
Raised periodically when the audio's level is calculated. If there are multiple audio tracks in a custom media stack, this event is only triggered by the first audio track.
Declaration
event Action1<double> OnAudioLevel
Event Type
Type | Description |
---|---|
Action1<System.Double> |
OnVideoDestroyed
Raised when the video track is destroyed. If there are multiple video tracks in a custom media stack, this event is only triggered by the first video track.
Declaration
event Action0 OnVideoDestroyed
Event Type
Type | Description |
---|---|
Action0 |
OnVideoSize
Raised whenever the video's frame size is known, once per frame. If there are multiple video tracks in a custom media stack, this event is only triggered by the first video track.
Declaration
event Action1<Size> OnVideoSize
Event Type
Type | Description |
---|---|
Action1<Size> |
OnVideoSizeChange
Raised whenever the video's frame size changes. If there are multiple video tracks in a custom media stack, this event is only triggered by the first video track.
Declaration
event Action1<Size> OnVideoSizeChange
Event Type
Type | Description |
---|---|
Action1<Size> |