/// Enables the video loopback. The local video will be diaplayed in <paramref name="display"/>.
/// </summary>
/// <param name="display">The <see cref="Display"/> to apply.</param>
+ /// <feature>http://tizen.org/feature/display</feature>
+ /// <exception cref="NotSupportedException">The required feature is not supported.</exception>
/// <exception cref="ArgumentException">The display has already been assigned to another.</exception>
/// <exception cref="ArgumentNullException"><paramref name="display"/> is null.</exception>
/// <exception cref="InvalidOperationException">
{
uint trackId = 0;
+ if (!Features.IsSupported(WebRTCFeatures.Display))
+ {
+ throw new NotSupportedException("Display feature is not supported.");
+ }
if (!SourceId.HasValue)
{
throw new InvalidOperationException("MediaSource is not attached yet. Call AddSource() first.");
/// If remote track, <see cref="Display"/> must be set in <see cref="WebRTC.TrackAdded"/> event.<br/>
/// The display is created with <see cref="MediaView"/>.
/// </remarks>
+ /// <feature>http://tizen.org/feature/display</feature>
+ /// <exception cref="NotSupportedException">The required feature is not supported.</exception>
/// <exception cref="ObjectDisposedException">The WebRTC has already been disposed of.</exception>
/// <exception cref="ArgumentException">The value has already been assigned to another WebRTC.</exception>
/// <exception cref="InvalidOperationException">
/// <since_tizen> 9 </since_tizen>
public Display Display
{
- get => _display;
+ get
+ {
+ if (!Features.IsSupported(WebRTCFeatures.Display))
+ {
+ throw new NotSupportedException("Display feature is not supported.");
+ }
+
+ return _display;
+ }
set
{
+ if (!Features.IsSupported(WebRTCFeatures.Display))
+ {
+ throw new NotSupportedException("Display feature is not supported.");
+ }
+
if (Type != MediaType.Video)
{
throw new InvalidOperationException("This property is only for video track.");
/// <remarks>
/// This property is meaningful only in overlay or EVAS surface display type.
/// </remarks>
+ /// <feature>http://tizen.org/feature/display</feature>
+ /// <exception cref="NotSupportedException">The required feature is not supported.</exception>
/// <value>A <see cref="WebRTCDisplayMode"/> that specifies the display mode.</value>
/// <exception cref="ArgumentException">Display mode type is incorrect.</exception>
/// <exception cref="InvalidOperationException"><see cref="Display"/> is not set.</exception>
{
get
{
+ if (!Features.IsSupported(WebRTCFeatures.Display))
+ {
+ throw new NotSupportedException("Display feature is not supported.");
+ }
+
if (Type != MediaType.Video)
{
throw new InvalidOperationException("This property is only for video track.");
}
set
{
+ if (!Features.IsSupported(WebRTCFeatures.Display))
+ {
+ throw new NotSupportedException("Display feature is not supported.");
+ }
+
if (Type != MediaType.Video)
{
throw new InvalidOperationException("This property is only for video track.");
/// <remarks>
/// This property is meaningful only in overlay or EVAS surface display type.
/// </remarks>
+ /// <feature>http://tizen.org/feature/display</feature>
+ /// <exception cref="NotSupportedException">The required feature is not supported.</exception>
/// <exception cref="InvalidOperationException"><see cref="Display"/> is not set.</exception>
/// <since_tizen> 9 </since_tizen>
public bool DisplayVisible
{
get
{
+ if (!Features.IsSupported(WebRTCFeatures.Display))
+ {
+ throw new NotSupportedException("Display feature is not supported.");
+ }
+
if (Type != MediaType.Video)
{
throw new InvalidOperationException("This property is only for video track.");
}
set
{
+ if (!Features.IsSupported(WebRTCFeatures.Display))
+ {
+ throw new NotSupportedException("Display feature is not supported.");
+ }
+
if (Type != MediaType.Video)
{
throw new InvalidOperationException("This property is only for video track.");
/// <param name="source">The media sources to add.</param>
/// <feature>http://tizen.org/feature/camera</feature>
/// <feature>http://tizen.org/feature/microphone</feature>
+ /// <feature>http://tizen.org/feature/display</feature>
/// <privilege>http://tizen.org/privilege/camera</privilege>
/// <privilege>http://tizen.org/privilege/mediastorage</privilege>
/// <privilege>http://tizen.org/privilege/externalstorage</privilege>
/// <param name="sources">The media sources to add.</param>
/// <feature>http://tizen.org/feature/camera</feature>
/// <feature>http://tizen.org/feature/microphone</feature>
+ /// <feature>http://tizen.org/feature/display</feature>
/// <privilege>http://tizen.org/privilege/camera</privilege>
/// <privilege>http://tizen.org/privilege/mediastorage</privilege>
/// <privilege>http://tizen.org/privilege/externalstorage</privilege>