Class ScreenMirroring
Definition
- Namespace:
- Tizen.Multimedia.Remoting
- Assembly:
- Tizen.Multimedia.Remoting.dll
Provides the ability to connect to and disconnect from a screen mirroring source, start, pause, and resume the screen mirroring as a sink.
public class ScreenMirroring : IDisposable
- Inheritance
-
objectScreenMirroring
- Implements
-
System.IDisposable
Constructors
View SourceScreenMirroring()
Initializes a new instance of the ScreenMirroring class.
Declaration
public ScreenMirroring()
Exceptions
| Type | Condition |
|---|---|
| System.NotSupportedException | The feature is not supported. |
Properties
View SourceAudioInfo
Gets the negotiated audio info.
Declaration
public ScreenMirroringAudioInfo AudioInfo { get; }
Property Value
| Type | Description |
|---|---|
| ScreenMirroringAudioInfo |
DisplayMode
Gets or sets the display mode.
Declaration
public ScreenMirroringDisplayMode DisplayMode { get; set; }
Property Value
| Type | Description |
|---|---|
| ScreenMirroringDisplayMode |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
DisplayRoi
Gets or sets the display position and size of the receiver screen view.
Declaration
public Rectangle DisplayRoi { get; set; }
Property Value
| Type | Description |
|---|---|
| Rectangle |
Remarks
DisplayRoi will be applied when DisplayMode is CustomRoi.
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentOutOfRangeException | DisplayRoi.X or DisplayRoi.Y is less than 0. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
See Also
View SourceDisplayRotation
Gets or sets the display rotation.
Declaration
public Rotation DisplayRotation { get; set; }
Property Value
| Type | Description |
|---|---|
| Rotation |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
SourceDeviceType
Gets or sets the source device type.
Declaration
public ScreenMirroringDeviceType SourceDeviceType { get; set; }
Property Value
| Type | Description |
|---|---|
| ScreenMirroringDeviceType |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
VideoInfo
Gets the negotiated video info.
Declaration
public ScreenMirroringVideoInfo VideoInfo { get; }
Property Value
| Type | Description |
|---|---|
| ScreenMirroringVideoInfo |
Methods
View SourceConnectAsync(string, uint)
Creates the connection and ready for receiving data from a mirroring source with the given port.
Declaration
public Task ConnectAsync(string sourceIp, uint port)
Parameters
| Type | Name | Description |
|---|---|---|
| string | sourceIp | The source ip address to connect. |
| uint | port | The port number to connect. The max value is 65535. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous operation. |
Remarks
The state must be Prepared state by Prepare(Display, ScreenMirroringResolutions).
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentException |
|
| System.ArgumentNullException |
|
| System.ArgumentOutOfRangeException |
|
| System.InvalidOperationException | The current state is not in the valid. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
| System.UnauthorizedAccessException | Caller does not have required permission. |
ConnectAsync(string)
Creates the connection and ready for receiving data from a mirroring source.
Declaration
public Task ConnectAsync(string sourceIp)
Parameters
| Type | Name | Description |
|---|---|---|
| string | sourceIp | The source ip address to connect. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous operation. |
Remarks
The state must be Prepared state by
Prepare(Display, ScreenMirroringResolutions).
The default port number is 2022.
If you want to connect using different port number, please use ConnectAsync(string, uint).
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentException |
|
| System.ArgumentNullException |
|
| System.InvalidOperationException | The current state is not in the valid. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
| System.UnauthorizedAccessException | Caller does not have required permission. |
See Also
View SourceDisconnect()
Disconnects from the source.
Declaration
public void Disconnect()
Remarks
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The current state is not in the valid. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
| System.UnauthorizedAccessException | Caller does not have required permission. |
Dispose()
Releases all resource used by the ScreenMirroring object.
Declaration
public void Dispose()
Remarks
Call Dispose() when you are finished using the ScreenMirroring. The Dispose() method leaves the ScreenMirroring in an unusable state. After calling Dispose(), you must release all references to the ScreenMirroring so the garbage collector can reclaim the memory that the ScreenMirroring was occupying.
Dispose(bool)
Releases the resources used by the ScreenMirroring.
Declaration
protected virtual void Dispose(bool disposing)
Parameters
| Type | Name | Description |
|---|---|---|
| bool | disposing | true to release both managed and unmanaged resources; false to release only unmanaged resources. |
~ScreenMirroring()
Finalizes an instance of the ScreenMirroring class.
Declaration
protected ~ScreenMirroring()
PauseAsync()
Pauses mirroring from the source.
Declaration
public Task PauseAsync()
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous operation. |
Remarks
The state must be Playing state by StartAsync().
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The current state is not in the valid. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
| System.UnauthorizedAccessException | Caller does not have required permission. |
Prepare(Display, ScreenMirroringResolutions)
Prepares the screen mirroring with the specified display and resolutions.
Declaration
public void Prepare(Display display, ScreenMirroringResolutions resolutions)
Parameters
| Type | Name | Description |
|---|---|---|
| Display | display | The display where the mirroring will be played on. |
| ScreenMirroringResolutions | resolutions | The desired resolutions. |
Remarks
The state must be Idle.
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentException |
|
| System.ArgumentNullException |
|
| System.InvalidOperationException | The current state is not in the valid. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
Prepare(Display)
Prepares the screen mirroring with the specified display.
Declaration
public void Prepare(Display display)
Parameters
| Type | Name | Description |
|---|---|---|
| Display | display | The display where the mirroring will be played on. |
Remarks
The state must be Idle.
All supported resolutions will be candidates.
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentException |
|
| System.ArgumentNullException |
|
| System.InvalidOperationException | The current state is not in the valid. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
ResumeAsync()
Resumes mirroring from the source.
Declaration
public Task ResumeAsync()
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous operation. |
Remarks
The state must be Paused state by PauseAsync().
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The current state is not in the valid. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
| System.UnauthorizedAccessException | Caller does not have required permission. |
StartAsync()
Starts mirroring from the source.
Declaration
public Task StartAsync()
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous operation. |
Remarks
The state must be Connected state by ConnectAsync(string).
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The current state is not in the valid. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
| System.UnauthorizedAccessException | Caller does not have required permission. |
Unprepare()
Unprepares the screen mirroring.
Declaration
public void Unprepare()
Remarks
The state must be Prepared, or Disconnected.
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | The current state is not in the valid. |
| System.ObjectDisposedException | The ScreenMirroring has already been disposed. |
Events
View SourceErrorOccurred
Occurs when an error occurs.
Declaration
public event EventHandler<ScreenMirroringErrorOccurredEventArgs> ErrorOccurred
Event Type
| Type | Description |
|---|---|
| System.EventHandler<TEventArgs><ScreenMirroringErrorOccurredEventArgs> |
StateChanged
Occurs when the state is changed.
Declaration
public event EventHandler<ScreenMirroringStateChangedEventArgs> StateChanged
Event Type
| Type | Description |
|---|---|
| System.EventHandler<TEventArgs><ScreenMirroringStateChangedEventArgs> |