Class MediaSource

Definition

Namespace:
Tizen.Multimedia.Remoting
Assembly:
Tizen.Multimedia.Remoting.dll
API Level:
9

MediaSource is a base class for WebRTC sources.

C#
Copy
public abstract class MediaSource : IDisplayable<uint>
Inheritance
System.Object
MediaSource
Derived
Tizen.Multimedia.Remoting.MediaCustomSource

Constructors

View Source

MediaSource()

Initializes a new instance of the MediaSource class.

Declaration
C#
Copy
protected MediaSource()
API Level: 10
View Source

MediaSource(MediaType)

Initializes a new instance of the MediaSource class.

Declaration
C#
Copy
protected MediaSource(MediaType mediaType)
Parameters
Type Name Description
MediaType mediaType
API Level: 9

Properties

View Source

EncoderBitrate

Gets or sets the encoder bitrate of the current media source.

Declaration
C#
Copy
public int EncoderBitrate { get; set; }
Property Value
Type Description
Int32

A value that specifies the encoder bitrate.

Remarks

This API is not supported in MediaFileSource, MediaPacketSource.

Exceptions
Type Condition
System.ArgumentException

EncoderBitrate is less than or equal to zero.

System.InvalidOperationException

MediaSource is not attached yet.
-or-
This MediaSource is not Video. -or-
This MediaSource is not supported type of MediaSource.

ObjectDisposedException

The WebRTC has already been disposed.

API Level: 10
View Source

MediaType

Gets the type of MediaSource.

Declaration
C#
Copy
protected MediaType MediaType { get; }
Property Value
Type Description
MediaType MediaType
API Level: 9
View Source

Mute

Gets or sets the mute status of the current media source.

Declaration
C#
Copy
public bool Mute { get; set; }
Property Value
Type Description
Boolean

A value that specifies the mute status.

Remarks

This API is not supported in MediaFileSource, MediaPacketSource, MediaNullSource. (Since API level 10)

Exceptions
Type Condition
System.InvalidOperationException

MediaSource is not attached yet.
-or-
This MediaSource is not supported type of MediaSource. (Since API level 10)

ObjectDisposedException

The WebRTC has already been disposed.

API Level: 9
View Source

Pause

Gets or sets the pause status of current media source.

Declaration
C#
Copy
public bool Pause { get; set; }
Property Value
Type Description
Boolean

A value that specifies the pause status.

Exceptions
Type Condition
System.InvalidOperationException

MediaSource is not attached yet.
-or-
This MediaSource is not supported type of MediaSource. (Since API level 10)

ObjectDisposedException

The WebRTC has already been disposed.

API Level: 9
View Source

SupportedTransceiverCodecs

Retrieves the supported transceiver codecs.

Declaration
C#
Copy
public ReadOnlyCollection<TransceiverCodec> SupportedTransceiverCodecs { get; }
Property Value
Type Description
System.Collections.ObjectModel.ReadOnlyCollection<TransceiverCodec>

The transceiver codecs.

Remarks

This API is not supported in MediaFileSource, MediaPacketSource.
If user want to get supported codecs for each audio or video in MediaNullSource, please use GetSupportedTransceiverCodecs(MediaType) instead.

Exceptions
Type Condition
System.InvalidOperationException

This MediaSource is not supported type of MediaSource.

ObjectDisposedException

The WebRTC has already been disposed.

API Level: 10
View Source

TransceiverCodec

Gets or sets the transceiver codec of current media source.

Declaration
C#
Copy
public TransceiverCodec TransceiverCodec { get; set; }
Property Value
Type Description
TransceiverCodec

The transceiver codec.

Remarks

This API is not supported in MediaFileSource, MediaPacketSource.
If MediaNullSource, please use GetTransceiverCodec(MediaType) or SetTransceiverCodec(MediaType, TransceiverCodec) instead.
The WebRTC must be in the Idle state when transceiver codec is set.

Exceptions
Type Condition
System.InvalidOperationException

MediaSource is not attached yet.
-or-
This MediaSource is not supported type of MediaSource.
-or-
The WebRTC is not in the valid state.

ObjectDisposedException

The WebRTC has already been disposed.

API Level: 10
View Source

TransceiverDirection

Gets or sets the transceiver direction of current media source.

Declaration
C#
Copy
public TransceiverDirection TransceiverDirection { get; set; }
Property Value
Type Description
TransceiverDirection

A TransceiverDirection that specifies the transceiver direction.

Remarks

The default value is SendRecv except MediaNullSource.
If user want to set each audio, video direction in MediaFileSource, please use SetTransceiverDirection(MediaType, TransceiverDirection). (Since API level 10)
In MediaNullSource, only RecvOnly can be set.(Since API level 10)

Exceptions
Type Condition
System.InvalidOperationException

MediaSource is not attached yet.
-or-
SendOnly or SendRecv is set for MediaNullSource. (Since API level 10)

ObjectDisposedException

The WebRTC has already been disposed.

API Level: 9
View Source

VideoFrameRate

Gets or sets the video frame rate of the current media source.

Declaration
C#
Copy
public int VideoFrameRate { get; set; }
Property Value
Type Description
Int32

A value that specifies the video frame rate.

Remarks

This API is only supported in video media source, especially MediaCameraSource, MediaScreenSource, MediaTestSource.

Exceptions
Type Condition
System.ArgumentException

VideoFrameRate is less than or equal to zero.

System.InvalidOperationException

MediaSource is not attached yet.
-or-
This MediaSource is not Video. -or-
This MediaSource is not supported type of MediaSource.

ObjectDisposedException

The WebRTC has already been disposed.

API Level: 10
View Source

VideoResolution

Gets or sets the video resolution of the current media source.

Declaration
C#
Copy
public Size VideoResolution { get; set; }
Property Value
Type Description
Size

A value that specifies the video resolution.

Exceptions
Type Condition
System.InvalidOperationException

MediaSource is not attached yet.
-or-
This MediaSource is not Video. -or-
This MediaSource is not supported type of MediaSource.

ObjectDisposedException

The WebRTC has already been disposed.

API Level: 9

Methods

View Source

EnableAudioLoopback(AudioStreamPolicy)

Enables the audio loopback. The local audio will be played with policy.

Declaration
C#
Copy
public MediaStreamTrack EnableAudioLoopback(AudioStreamPolicy policy)
Parameters
Type Name Description
AudioStreamPolicy policy

The AudioStreamPolicy to apply.

Returns
Type Description
MediaStreamTrack MediaStreamTrack
Remarks

MediaSource does not support all AudioStreamType.
Supported types are Media, Voip, MediaExternalOnly.

Exceptions
Type Condition
System.ArgumentNullException

policy is null.

System.InvalidOperationException

MediaSource is not attached yet.
-or-
This MediaSource is not Audio

System.NotSupportedException

AudioStreamType of policy is not supported on the current platform.

ObjectDisposedException

policy or WebRTC has already been disposed.

View Source

EnableVideoLoopback(Display)

Enables the video loopback. The local video will be diaplayed in display.

Declaration
C#
Copy
public MediaStreamTrack EnableVideoLoopback(Display display)
Parameters
Type Name Description
Display display

The Display to apply.

Returns
Type Description
MediaStreamTrack MediaStreamTrack
Exceptions
Type Condition
System.ArgumentException

The display has already been assigned to another.

System.ArgumentNullException

display is null.

System.InvalidOperationException

MediaSource is not attached yet.
-or-
This MediaSource is not Video

ObjectDisposedException

The WebRTC has already been disposed.