Fixed format errors related to new line and <para> tag.
Added missing tags.
Fixed typos and so on.
Change-Id: I3913ad79d9a54ed71abdb906271cdd55c31ffa83
Signed-off-by: coderhyme <jhyo.kim@samsung.com>
/// <remarks>The recorder privilege(http://tizen.org/privilege/recorder) is required.</remarks>
public abstract class AudioCaptureBase : IDisposable
{
+ /// <summary>
+ /// Specifies the minimum value allowed for the audio capture.
+ /// </summary>
public static readonly int MinSampleRate = 8000;
+
+ /// <summary>
+ /// Specifies the maximum value allowed for the audio capture.
+ /// </summary>
public static readonly int MaxSampleRate = 48000;
internal IntPtr _handle = IntPtr.Zero;
public AudioSampleType SampleType { get; }
/// <summary>
- /// Gets the size to be allocated for the audio input buffer.
+ /// Gets the size allocated for the audio input buffer.
/// </summary>
/// <exception cref="ObjectDisposedException">The AudioPlayback has already been disposed.</exception>
public int GetBufferSize()
{
- int size;
- AudioIOUtil.ThrowIfError(Interop.AudioIO.AudioInput.GetBufferSize(_handle, out size));
+ AudioIOUtil.ThrowIfError(Interop.AudioIO.AudioInput.GetBufferSize(_handle, out var size));
return size;
}
/// Prepares the AudioCapture for reading audio data by starting buffering of audio data from the device.
/// </summary>
/// <exception cref="InvalidOperationException">
- /// Operation failed due to internal error.
- /// <para>-or-</para>
+ /// Operation failed due to internal error.\n
+ /// -or-\n
/// The current state is not <see cref="AudioIOState.Idle"/>.
/// </exception>
/// <seealso cref="Unprepare"/>
/// Unprepares the AudioCapture.
/// </summary>
/// <exception cref="InvalidOperationException">
- /// Operation failed due to internal error.
- /// <para>-or-</para>
+ /// Operation failed due to internal error.\n
+ /// \n
/// The current state is <see cref="AudioIOState.Idle"/>.
/// </exception>
/// <seealso cref="Prepare"/>
/// Pauses buffering of audio data from the device.
/// </summary>
/// <exception cref="InvalidOperationException">
- /// The current state is <see cref="AudioState.Idle"/>.
- /// <para>-or-</para>
+ /// The current state is <see cref="AudioState.Idle"/>.\n
+ /// -or-\n
/// The method is called in the <see cref="AsyncAudioCapture.DataAvailable"/> event handler.
/// </exception>
/// <seealso cref="Resume"/>
/// Resumes buffering audio data from the device.
/// </summary>
/// <exception cref="InvalidOperationException">
- /// The current state is <see cref="AudioState.Idle"/>.
- /// <para>-or-</para>
+ /// The current state is <see cref="AudioState.Idle"/>.\n
+ /// -or-\n
/// The method is called in the <see cref="AsyncAudioCapture.DataAvailable"/> event handler.
/// </exception>
/// <seealso cref="Pause"/>
/// <summary>
/// Provides the ability to record audio from system audio input devices in synchronous way.
/// </summary>
- /// <remarks>The recorder privilege(http://tizen.org/privilege/recorder) is required.</remarks>
+ /// <privilege>http://tizen.org/privilege/recorder</privilege>
public class AudioCapture : AudioCaptureBase
{
/// <summary>
/// <param name="channel">The audio channel type.</param>
/// <param name="sampleType">The audio sample type.</param>
/// <exception cref="ArgumentOutOfRangeException">
- /// <paramref name="sampleRate"/> is less than <see cref="MinSampleRate"/>.
- /// <para>-or-</para>
+ /// <paramref name="sampleRate"/> is less than <see cref="MinSampleRate"/>.\n
+ /// -or-\n
/// <paramref name="sampleRate"/> is greater than <see cref="MaxSampleRate"/>.
/// </exception>
/// <exception cref="ArgumentException">
- /// The value of <paramref name="channel"/> is invalid.
- /// <para>-or-</para>
- /// The value of <paramref name="sampleType"/> is invalid.
+ /// <paramref name="channel"/> is invalid.\n
+ /// -or-\n
+ /// <paramref name="sampleType"/> is invalid.
/// </exception>
/// <exception cref="InvalidOperationException">The required privilege is not specified.</exception>
/// <exception cref="NotSupportedException">The system does not support microphone.</exception>
/// <summary>
/// Reads audio data from the audio input buffer.
/// </summary>
- /// <param name="length"></param>
- /// <returns>The buffer of audio data receiving an input</returns>
+ /// <param name="count">The number of bytes to be read.</param>
+ /// <returns>The buffer of audio data captured.</returns>
/// <exception cref="InvalidOperationException">The current state is not <see cref="AudioIOState.Running"/>.</exception>
- /// <exception cref="ArgumentOutOfRangeException"><paramref name="length"/> is equal to or less than zero.</exception>
- public byte[] Read(int length)
+ /// <exception cref="ArgumentOutOfRangeException"><paramref name="count"/> is equal to or less than zero.</exception>
+ public byte[] Read(int count)
{
- if (length <= 0)
+ if (count <= 0)
{
- throw new ArgumentOutOfRangeException(nameof(length), length,
- $"{ nameof(length) } can't be equal to or less than zero.");
+ throw new ArgumentOutOfRangeException(nameof(count), count,
+ $"{ nameof(count) } can't be equal to or less than zero.");
}
ValidateState(AudioIOState.Running);
- byte[] buffer = new byte[length];
+ byte[] buffer = new byte[count];
- AudioIOUtil.ThrowIfError(Interop.AudioIO.AudioInput.Read(_handle, buffer, length),
+ AudioIOUtil.ThrowIfError(Interop.AudioIO.AudioInput.Read(_handle, buffer, count),
"Failed to read");
return buffer;
/// <summary>
/// Provides the ability to record audio from system audio input devices in asynchronous way.
/// </summary>
- /// <remarks>The recorder privilege(http://tizen.org/privilege/recorder) is required.</remarks>
+ /// <privilege>http://tizen.org/privilege/recorder</privilege>
public class AsyncAudioCapture : AudioCaptureBase
{
/// <param name="channel">The audio channel type.</param>
/// <param name="sampleType">The audio sample type.</param>
/// <exception cref="ArgumentOutOfRangeException">
- /// <paramref name="sampleRate"/> is less than <see cref="MinSampleRate"/>.
- /// <para>-or-</para>
+ /// <paramref name="sampleRate"/> is less than <see cref="MinSampleRate"/>.\n
+ /// -or-\n
/// <paramref name="sampleRate"/> is greater than <see cref="MaxSampleRate"/>.
/// </exception>
/// <exception cref="ArgumentException">
- /// The value of <paramref name="channel"/> is invalid.
- /// <para>-or-</para>
- /// The value of <paramref name="sampleType"/> is invalid.
+ /// <paramref name="channel"/> is invalid.\n
+ /// -or-\n
+ /// <paramref name="sampleType"/> is invalid.
/// </exception>
/// <exception cref="InvalidOperationException">The required privilege is not specified.</exception>
/// <exception cref="NotSupportedException">The system does not support microphone.</exception>
Data = data;
}
+ /// <summary>
+ /// Gets the audio data captured.
+ /// </summary>
public byte[] Data { get; }
}
}
namespace Tizen.Multimedia
{
/// <summary>
- /// Argument for the event that is Audio State Changed.
+ /// Provides data for the <see cref="AudioCaptureBase.StateChanged"/> event and <see cref="AudioPlayback.StateChanged"/>.
/// </summary>
public class AudioIOStateChangedEventArgs : EventArgs
{
- /// <summary>
- /// Initializes the instance of the AudioStateChangedEventArgs class.
- /// </summary>
- /// <param name="previous"></param>
- /// <param name="current"></param>
- /// <param name="byPolicy"></param>
internal AudioIOStateChangedEventArgs(AudioIOState previous, AudioIOState current, bool byPolicy)
{
Previous = previous;
ByPolicy = byPolicy;
}
+ /// <summary>
+ /// Gets the previous state.
+ /// </summary>
public AudioIOState Previous { get; }
+ /// <summary>
+ /// Gets the current state.
+ /// </summary>
public AudioIOState Current { get; }
+ /// <summary>
+ /// Gets the value indicating whether the state is changed by policy or not.
+ /// </summary>
public bool ByPolicy { get; }
}
}
/// <param name="channel">The audio channel type.</param>
/// <param name="sampleType">The audio sample type.</param>
/// <exception cref="ArgumentOutOfRangeException">
- /// <paramref name="sampleRate"/> is less than <see cref="MinSampleRate"/>.
- /// <para>-or-</para>
+ /// <paramref name="sampleRate"/> is less than <see cref="MinSampleRate"/>.\n
+ /// -or-\n
/// <paramref name="sampleRate"/> is greater than <see cref="MaxSampleRate"/>.
/// </exception>
/// <exception cref="ArgumentException">
- /// The value of <paramref name="channel"/> is invalid.
- /// <para>-or-</para>
- /// The value of <paramref name="sampleType"/> is invalid.
+ /// <paramref name="channel"/> is invalid.\n
+ /// -or-\n
+ /// <paramref name="sampleType"/> is invalid.
/// </exception>
public AudioPlayback(int sampleRate, AudioChannel channel, AudioSampleType sampleType)
{
}
/// <summary>
- /// Gets the size to be allocated for the audio output buffer.
+ /// Gets the size allocated for the audio output buffer.
/// </summary>
/// <exception cref="ObjectDisposedException">The AudioPlayback has already been disposed.</exception>
public int GetBufferSize()
{
- int size = 0;
- AudioIOUtil.ThrowIfError(Interop.AudioIO.AudioOutput.GetBufferSize(_handle, out size));
+ AudioIOUtil.ThrowIfError(Interop.AudioIO.AudioOutput.GetBufferSize(_handle, out var size));
return size;
}
/// This must be called before <see cref="Write(byte[])"/>.
/// </remarks>
/// <exception cref="InvalidOperationException">
- /// Operation failed due to internal error.
- /// <para>-or-</para>
+ /// Operation failed due to internal error.\n
+ /// -or-\n
/// The current state is not <see cref="AudioIOState.Idle"/>.
/// </exception>
/// <exception cref="ObjectDisposedException">The AudioPlayback has already been disposed.</exception>
/// Unprepares the AudioPlayback.
/// </summary>
/// <exception cref="InvalidOperationException">
- /// Operation failed due to internal error.
- /// <para>-or-</para>
+ /// Operation failed due to internal error.\n
+ /// -or-\n
/// The current state is <see cref="AudioIOState.Idle"/>.
/// </exception>
/// <exception cref="ObjectDisposedException">The AudioPlayback has already been disposed.</exception>
/// </summary>
/// <remarks>It has no effect if the current is the <see cref="AudioIOState.Paused"/>.</remarks>
/// <exception cref="InvalidOperationException">
- /// The current state is <see cref="AudioIOState.Idle"/>.
- /// <para>-or-</para>
+ /// The current state is <see cref="AudioIOState.Idle"/>.\n
+ /// -or-\n
/// The method is called in the <see cref="BufferAvailable"/> event handler.
/// </exception>
/// <exception cref="ObjectDisposedException">The AudioPlayback has already been disposed.</exception>
/// </summary>
/// <remarks>It has no effect if the current is the <see cref="AudioIOState.Running"/>.</remarks>
/// <exception cref="InvalidOperationException">
- /// The current state is <see cref="AudioIOState.Idle"/>.
- /// <para>-or-</para>
+ /// The current state is <see cref="AudioIOState.Idle"/>.\n
+ /// -or-\n
/// The method is called in an event handler.
/// </exception>
/// <exception cref="ObjectDisposedException">The AudioPlayback has already been disposed.</exception>
/// <param name="streamPolicy">The <see cref="AudioStreamPolicy"/> to apply for the AudioPlayback.</param>
/// <exception cref="ArgumentNullException"><paramref name="streamPolicy"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
- /// <paramref name="streamPolicy"/> has already been disposed.
- /// <para>-or-</para>
+ /// <paramref name="streamPolicy"/> has already been disposed.\n
+ /// -or-\n
/// The AudioPlayback has already been disposed.
/// </exception>
/// <exception cref="NotSupportedException"><paramref name="streamPolicy"/> is not supported.</exception>
return new Range(min, max);
}
-#region Auto Focus
+ #region Auto Focus
/// <summary>
/// Sets auto focus area.
/// </summary>
"Failed to set camera autofocus mode.");
}
}
-#endregion Auto Focus
+ #endregion Auto Focus
-#region Contrast
+ #region Contrast
/// <summary>
/// The contrast level of the camera.
/// </summary>
return _contrastRange.Value;
}
}
-#endregion Contrast
+ #endregion Contrast
-#region Brightness
+ #region Brightness
/// <summary>
/// The brightness level of the camera.
/// </summary>
return _brightnessRange.Value;
}
}
-#endregion Brightness
+ #endregion Brightness
-#region Exposure
+ #region Exposure
/// <summary>
/// The exposure value.
/// </summary>
return _exposureRange.Value;
}
}
-#endregion Exposure
+ #endregion Exposure
-#region Zoom
+ #region Zoom
/// <summary>
/// The zoom level.
/// The range for zoom level is received from ZoomRange property.
return _zoomRange.Value;
}
}
-#endregion Zoom
+ #endregion Zoom
/// <summary>
/// The whitebalance mode.
}
}
-#region Resolution, Format, Fps of preview, capture
+ #region Resolution, Format, Fps of preview, capture
/// <summary>
/// The preview frame rate.
/// </summary>
"Failed to set capture format.");
}
}
-#endregion Resolution, Format, Fps of preview, capture
+ #endregion Resolution, Format, Fps of preview, capture
-#region Encoded preview
+ #region Encoded preview
/// <summary>
/// The bit rate of encoded preview.
/// </summary>
"Failed to set encoded preview gop intervals.");
}
}
-#endregion Encoded preview
+ #endregion Encoded preview
/// <summary>
/// The theater mode.
}
}
-#region PTZ(Pan Tilt Zoom), Pan, Tilt
+ #region PTZ(Pan Tilt Zoom), Pan, Tilt
/// <summary>
/// Sets the type of PTZ(Pan Tilt Zoom). Mechanical or Electronic.
/// </summary>
return _tiltRange.Value;
}
}
-#endregion PTZ(Pan Tilt Zoom), Pan, Tilt
+ #endregion PTZ(Pan Tilt Zoom), Pan, Tilt
-#region EXIF tag
+ #region EXIF tag
/// <summary>
/// The scene mode.
/// true if EXIF tags are enabled in JPEG file, otherwise false.
"Failed to set camera tag orientation.");
}
}
-#endregion EXIF tag
+ #endregion EXIF tag
}
}
/// Prepares the MediaCodec for encoding or decoding.
/// </summary>
/// <exception cref="InvalidOperationException">
- /// The codec is not configured, yet.
- /// <para>-or-</para>
+ /// The codec is not configured, yet.\n
+ /// -or-\n
/// Internal error.
/// </exception>
public void Prepare()
/// <param name="codecType">The value indicating whether the codec uses hardware acceleration.</param>
/// <exception cref="ArgumentNullException">format is null</exception>
/// <exception cref="ArgumentException">
- /// codecType is invalid.
- /// <para>-or-</para>
- /// format is neither audio type or video type.
+ /// <paramref name="codecType"/> is invalid.\n
+ /// -or-\n
+ /// <paramref name="format"/> is neither audio type nor video type.
/// </exception>
/// <exception cref="NotSupportedException">the mime type of the format is not supported.</exception>
/// <see cref="SupportedAudioCodecs"/>
/// <summary>
/// Specifies types of codec.
+ /// <para>
+ /// This enumeration has a <see cref="FlagsAttribute"/> attribute that allows a bitwise combination of its member values.
+ /// </para>
/// </summary>
[Flags]
public enum MediaCodecTypes
/// <summary>
/// Gets a <see cref="EqualizerBand"/> at the specified index.
/// </summary>
- /// <param name="index">The index of the band to get</param>
+ /// <param name="index">The index of the band to get.</param>
/// <exception cref="ObjectDisposedException">The <see cref="Player"/> has already been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException">
- /// index is less than zero.
- /// <para>-or-</para>
+ /// index is less than zero.\n
+ /// -or-\n
/// index is equal to or greater than <see cref="Count"/>.
/// </exception>
public EqualizerBand this[int index]
public struct DownloadProgress
{
/// <summary>
- /// Initialize a new instance of the DownloadProgress struct.
+ /// Initializes a new instance of the DownloadProgress struct.
/// </summary>
/// <param name="start">The position that downloading started in percentage.</param>
/// <param name="current">The position indicating the current downloading progress in percentage.</param>
/// <param name="value">The value indicating new gain in decibel(dB).</param>
/// <exception cref="ObjectDisposedException">The player that this EqualizerBand belongs to has already been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException">
- /// value is less than <see cref="AudioEffect.MinBandLevel"/>.
- /// <para>-or-</para>
+ /// value is less than <see cref="AudioEffect.MinBandLevel"/>.\n
+ /// -or-\n
/// value is greater than <see cref="AudioEffect.MaxBandLevel"/>.
/// </exception>
public void SetLevel(int value)
/// </summary>
/// <param name="length">The value indicating the size of the buffer.</param>
/// <exception cref="ArgumentOutOfRangeException">
- /// length is zero.
- /// <para>-or-</para>
- /// length is less than zero.
+ /// <paramref name="length"/> is zero.\n
+ /// -or-\n
+ /// <paramref name="length"/> is less than zero.
/// </exception>
public MediaBufferSource(int length)
{
{
}
+ //TODO remove default parameter.
/// <summary>
/// Initialize a new instance of the MediaBufferSource class from the buffer
/// with the specified length and the specified offset.
/// <param name="offset">The value indicating the offset in the buffer of the first byte to copy.</param>
/// <exception cref="ArgumentNullException">buffer is null.</exception>
/// <exception cref="ArgumentOutOfRangeException">
- /// offset is less than zero.
- /// <para>-or-</para>
- /// length is equal to or less than zero.
- /// <para>-or-</para>
- /// offset+length is greater than buffer.Length.
+ /// <paramref name="offset"/> is less than zero.\n
+ /// -or-\n
+ /// <paramref name="length"/> is equal to or less than zero.\n
+ /// -or-\n
+ /// <paramref name="offset"/>+<paramref name="length"/> is greater than buffer.Length.
/// </exception>
public MediaBufferSource(byte[] buffer, int length, int offset = 0)
{
public class MediaStreamBufferStatusChangedEventArgs : EventArgs
{
/// <summary>
- /// Initialize a new instance of the MediaStreamBufferStatusChangedEventArgs class.
+ /// Initializes a new instance of the MediaStreamBufferStatusChangedEventArgs class.
/// </summary>
/// <param name="status">The value indicating the status of the stream.</param>
public MediaStreamBufferStatusChangedEventArgs(MediaStreamBufferStatus status)
public class MediaStreamSeekingOccurredEventArgs : EventArgs
{
/// <summary>
- /// Initialize a new instance of the MediaStreamSeekingOccurredEventArgs class.
+ /// Initializes a new instance of the MediaStreamSeekingOccurredEventArgs class.
/// </summary>
/// <param name="offset">The value indicating the new position to seek.</param>
public MediaStreamSeekingOccurredEventArgs(ulong offset)
/// </summary>
/// <remarks>The source must be set as a source to a player before pushing.</remarks>
/// <seealso cref="Player.SetSource(MediaSource)"/>
- // TODO is this name appropriate?
public sealed class MediaStreamSource : MediaSource
{
private readonly MediaFormat _audioMediaFormat;
private readonly MediaFormat _videoMediaFormat;
+ /// <summary>
+ /// Gets all supported audio types.
+ /// </summary>
public static IEnumerable<MediaFormatAudioMimeType> SupportedAudioTypes
{
get
}
}
+ /// <summary>
+ /// Gets all supported video types.
+ /// </summary>
public static IEnumerable<MediaFormatVideoMimeType> SupportedVideoTypes
{
get
/// <param name="audioMediaFormat">The <see cref="AudioMediaFormat"/> for this source.</param>
/// <param name="videoMediaFormat">The <see cref="VideoMediaFormat"/> for this source.</param>
/// <remarks>AAC and H.264 are supported.</remarks>
- /// <exception cref="ArgumentNullException">both <paramref name="audioMediaFormat"/> and <paramref name="videoMediaFormat"/> are null.</exception>
+ /// <exception cref="ArgumentNullException">Both <paramref name="audioMediaFormat"/> and <paramref name="videoMediaFormat"/> are null.</exception>
/// <exception cref="ArgumentException">
- /// <paramref name="audioMediaFormat"/> is not supported.
- /// <para>-or-</para>
- /// <paramref name="videoMediaFormat"/> is not supported.
+ /// <paramref name="audioMediaFormat"/> is not supported.\n
+ /// -or-\n
+ /// <paramref name="videoMediaFormat"/> is not supported.\n
/// </exception>
/// <seealso cref="SupportedAudioTypes"/>
/// <seealso cref="SupportedVideoTypes"/>
/// <remarks>This source must be set as a source to a player and the player must be in the <see cref="PlayerState.Ready"/>, <see cref="PlayerState.Playing"/> or <see cref="PlayerState.Paused"/> state.</remarks>
/// <param name="packet">The <see cref="MediaPacket"/> to decode.</param>
/// <exception cref="InvalidOperationException">
- /// This source is not set as a source to a player.
- /// <para>-or-</para>
+ /// This source is not set as a source to a player.\n
+ /// -or-\n
/// The player is not in the valid state.
/// </exception>
/// <exception cref="ArgumentNullException">packet is null.</exception>
/// <exception cref="ObjectDisposedException">packet has been disposed.</exception>
/// <exception cref="ArgumentException">
- /// <paramref name="packet"/> is neither video nor audio type.
- /// <para>-or-</para>
+ /// <paramref name="packet"/> is neither video nor audio type.\n
+ /// -or-\n
/// The format of packet is not matched with the specified format in the constructor.
/// </exception>
/// <exception cref="NoBufferSpaceException">the internal buffer reaches limits.</exception>
{
// TODO consider using Uri class.
/// <summary>
- /// Initialize a new instance of the MediaUriSource class with the specified uri.</summary>
+ /// Initializes a new instance of the MediaUriSource class with the specified uri.</summary>
/// <param name="uri">The uri string.</param>
/// <remarks>For HTTP or RSTP, uri should start with "http://" or "rtsp://".
/// The default protocol is "file://".
public class PlaybackInterruptedEventArgs : EventArgs
{
/// <summary>
- /// Initialize a new instance of the PlaybackInterruptedEventArgs class.
+ /// Initializes a new instance of the PlaybackInterruptedEventArgs class.
/// </summary>
/// <param name="reason">The enum value indicating the reason.</param>
public PlaybackInterruptedEventArgs(PlaybackInterruptionReason reason)
/// </summary>
/// <value>A <see cref="AudioLatencyMode"/> that specifies the mode. The default is <see cref="AudioLatencyMode.Mid"/>.</value>
/// <remarks>
- /// If the mode is <see cref="AudioLatencyMode.AudioLatencyMode"/>,
+ /// If the mode is <see cref="AudioLatencyMode.High"/>,
/// audio output interval can be increased so, it can keep more audio data to play.
- /// But, state transition like pause or resume can be more slower than default(<see cref="AudioLatencyMode.Mid"/>) mode.
+ /// But, state transition like pause or resume can be more slower than default(<see cref="AudioLatencyMode.Mid"/>).
/// </remarks>
/// <exception cref="ObjectDisposedException">The player has already been disposed of.</exception>
/// <exception cref="ArgumentException">The value is not valid.</exception>
/// </summary>
/// <remarks>The player must be in the <see cref="PlayerState.Playing"/> or <see cref="PlayerState.Paused"/> state.</remarks>
/// <exception cref="InvalidOperationException">
- /// The player is not streaming.
- /// <para>-or-</para>
+ /// The player is not streaming.\n
+ /// -or-\n
/// The player is not in the valid state.
/// </exception>
/// <exception cref="ObjectDisposedException">The player has already been disposed of.</exception>
/// <remarks>Valid volume range is from 0 to 1.0, inclusive.</remarks>
/// <exception cref="ObjectDisposedException">The player has already been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException">
- /// value is less than zero.
- /// <para>-or-</para>
- /// value is greater than 1.0.
+ /// <paramref name="value"/> is less than zero.\n
+ /// -or-\n
+ /// <paramref name="value"/> is greater than 1.0.
/// </exception>
public void SetVolume(float value)
{
/// <exception cref="ObjectDisposedException">The player has already been disposed of.</exception>
/// <exception cref="InvalidOperationException">
/// The player is not in the valid state.\n
- /// - or -\n
+ /// -or-\n
/// No subtitle is set.
/// </exception>
/// <seealso cref="SetSubtitle(string)"/>
NativePlayer.Prepare(Handle).ThrowIfFailed("Failed to prepare the player");
}
- /// <summary>
- /// Invoked when
- /// </summary>
protected virtual void OnPreparing()
{
RegisterCallbacks();
/// <remarks>The player must be in the <see cref="PlayerState.Idle"/> state.</remarks>
/// <exception cref="ObjectDisposedException">The player has already been disposed of.</exception>
/// <exception cref="InvalidOperationException">
- /// The player is not in the valid state.
- /// <para>-or-</para>
+ /// The player is not in the valid state.\n
+ /// -or-\n
/// It is not able to assign the source to the player.
/// </exception>
/// <seealso cref="PrepareAsync"/>
/// </remarks>
/// <exception cref="ObjectDisposedException">The player has already been disposed of.</exception>
/// <exception cref="InvalidOperationException">
- /// The player is not in the valid state.
- /// <para>-or-</para>
+ /// The player is not in the valid state.\n
+ /// -or-\n
/// Streaming playback.
/// </exception>
/// <exception cref="ArgumentOutOfRangeException">
- /// <paramref name="rate"/> is less than 5.0.
- /// <para>-or-</para>
- /// <paramref name="rate"/> is greater than 5.0.
- /// <para>-or-</para>
+ /// <paramref name="rate"/> is less than 5.0.\n
+ /// -or-\n
+ /// <paramref name="rate"/> is greater than 5.0.\n
+ /// -or-\n
/// <paramref name="rate"/> is zero.
/// </exception>
public void SetPlaybackRate(float rate)
/// <param name="policy">The <see cref="AudioStreamPolicy"/> to apply.</param>
/// <remarks>The player must be in the <see cref="PlayerState.Idle"/> state.</remarks>
/// <exception cref="ObjectDisposedException">
- /// The player has already been disposed of.
- /// <para>-or-</para>
+ /// The player has already been disposed of.\n
+ /// -or-\n
/// <paramref name="poilcy"/> has already been disposed of.
/// </exception>
/// <exception cref="InvalidOperationException">The player is not in the valid state.</exception>
private NativePlayer.VideoFrameDecodedCallback _videoFrameDecodedCallback;
/// <summary>
- /// Occurs when a video frame is decoded
+ /// Occurs when a video frame is decoded.
/// </summary>
/// <remarks>
/// <para>The event handler will be executed on an internal thread.</para>
private PlayerDisplayMode _displayMode = PlayerDisplayMode.LetterBox;
/// <summary>
- /// Set/Get Display mode.
+ /// Gets or sets the <see cref="PlayerDisplayMode"/>.
/// </summary>
/// <exception cref="InvalidOperationException">
- /// The display is not assigned.
- /// <para>-or-</para>
- /// Operation failed; internal error.
+ /// The display is not assigned.\n
+ /// -or-\n
+ /// Operation failed; internal error.
/// </exception>
/// <exception cref="ObjectDisposedException">The player already has been disposed of.</exception>
/// <exception cref="ArgumentException">The specified value to set is invalid.</exception>
private bool _isVisible = true;
/// <summary>
- ///
+ /// Gets or sets the value indicating whether the display is visible.
/// </summary>
/// <value></value>
/// <exception cref="InvalidOperationException">
- /// The display is not assigned.
- /// <para>-or-</para>
- /// Operation failed; internal error.
+ /// The display is not assigned.\n
+ /// -or-\n
+ /// Operation failed; internal error.
/// </exception>
/// <exception cref="ObjectDisposedException">The player already has been disposed of.</exception>
public bool IsVisible
private PlayerDisplayRotation _rotation = PlayerDisplayRotation.RotationNone;
/// <summary>
- /// Set/Get Display rotation.
+ /// Gets or sets the rotation of the display.
/// </summary>
- /// <value> RotationNone, Rotation90, Rotation180, Rotation270 </value>
+ /// <value><see cref="PlayerDisplayRotation.RotationNone"/>,
+ /// <see cref="PlayerDisplayRotation.Rotation90"/>,
+ /// <see cref="PlayerDisplayRotation.Rotation180"/>,
+ /// <see cref="PlayerDisplayRotation.Rotation270"/></value>
/// <exception cref="InvalidOperationException">
- /// The display is not assigned.
- /// <para>-or-</para>
- /// Operation failed; internal error.
+ /// The display is not assigned.\n
+ /// -or-\n
+ /// Operation failed; internal error.
/// </exception>
/// <exception cref="ObjectDisposedException">The player already has been disposed of.</exception>
/// <exception cref="ArgumentException">The specified value to set is invalid.</exception>
/// To set roi, <see cref="Mode"/> must be set to <see cref="PlayerDisplayMode.Roi"/> first.
/// </remarks>
/// <exception cref="InvalidOperationException">
- /// The display is not assigned.
- /// <para>-or-</para>
- /// Operation failed; internal error.
- /// <para>-or-</para>
- /// <see cref="Mode"/> is not set to <see cref="PlayerDisplayMode.Roi"/>
+ /// The display is not assigned.\n
+ /// -or-\n
+ /// Operation failed; internal error.\n
+ /// -or-\n
+ /// <see cref="Mode"/> is not set to <see cref="PlayerDisplayMode.Roi"/>
/// </exception>
/// <exception cref="ObjectDisposedException">The player already has been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException">width or height is less than or equal to zero.</exception>
/// <summary>
/// Initial state, unprepared.
/// </summary>
- /// <see cref="Player.Unprepare"/>
+ /// <seealso cref="Player.Unprepare"/>
Idle = 1,
/// <summary>
/// Prepared.
/// </summary>
- /// <see cref="Player.PrepareAsync"/>
+ /// <seealso cref="Player.PrepareAsync"/>
Ready,
/// <summary>
/// <seealso cref="Player.PlaybackInterrupted"/>
public enum PlaybackInterruptionReason
{
+ /// <summary>
+ /// Interrupted by a resource conflict and the <see cref="Player"/> will be unprepared, automatically.
+ /// </summary>
ResourceConflict = 4
}
/// <seealso cref="StreamInfo.GetMetadata(StreamMetadataKey)"/>
public enum StreamMetadataKey
{
+ /// <summary>
+ /// Album.
+ /// </summary>
Album,
+
+ /// <summary>
+ /// Artists.
+ /// </summary>
Artist,
+
+ /// <summary>
+ /// Author.
+ /// </summary>
Author,
+
+ /// <summary>
+ /// Genre.
+ /// </summary>
Genre,
+
+ /// <summary>
+ /// Title.
+ /// </summary>
Title,
+
+ /// <summary>
+ /// Year.
+ /// </summary>
Year
}
}
public class PlayerErrorOccurredEventArgs : EventArgs
{
/// <summary>
- /// Initialize a new instance of the PlayerErrorOccurredEventArgs class.
+ /// Initializes a new instance of the PlayerErrorOccurredEventArgs class.
/// </summary>
/// <param name="error">The value indicating what kind of error occurred.</param>
public PlayerErrorOccurredEventArgs(PlayerError error)
/// <exception cref="ObjectDisposedException">The <see cref="Player"/> that this instance belongs to has been disposed.</exception>
/// <exception cref="InvalidOperationException">The <see cref="Player"/> that this instance belongs to is not in the valid state.</exception>
/// <exception cref="ArgumentOutOfRangeException">
- /// index is less than zero.
- /// <para>-or-</para>
- /// index is equal to or greater than <see cref="GetCount()"/>
+ /// <paramref name="index"/> is less than zero.\n
+ /// -or-\n
+ /// <paramref name="index"/> is equal to or greater than <see cref="GetCount()"/>
/// </exception>
public string GetLanguageCode(int index)
{
/// <exception cref="ObjectDisposedException">The <see cref="Player"/> that this instance belongs to has been disposed.</exception>
/// <exception cref="InvalidOperationException">The <see cref="Player"/> that this instance belongs to is not in the valid state.</exception>
/// <exception cref="ArgumentOutOfRangeException">
- /// index is less than zero.
- /// <para>-or-</para>
- /// index is equal to or greater than <see cref="GetCount()"/>
+ /// <paramref name="index"/> is less than zero.\n
+ /// -or-\n
+ /// <paramref name="index"/> is equal to or greater than <see cref="GetCount()"/>
/// </exception>
public void SetSelected(int index)
{
BitRate = bitRate;
Size = size;
Log.Debug(PlayerLog.Tag, "fps : " + fps + ", bitrate : " + bitRate +
- ", width : " + size.Width + ", height : "+ size.Height);
+ ", width : " + size.Width + ", height : " + size.Height);
}
/// <summary>
/// Initialize a new instance of the VideoStreamProperties struct with the specified fps, bit rate, width and height.
}
}
-
/// <summary>
- /// Provides means to retrieve stream information
+ /// Provides means to retrieve stream information.
/// </summary>
public class StreamInfo
{
{
Player.ValidatePlayerState(PlayerState.Ready, PlayerState.Playing, PlayerState.Paused);
- int size;
- IntPtr art;
- NativePlayer.GetAlbumArt(Player.Handle, out art, out size).
+ NativePlayer.GetAlbumArt(Player.Handle, out var art, out var size).
ThrowIfFailed("Failed to get the album art");
if (art == IntPtr.Zero || size == 0)
return GetCodecInfo(false);
}
-
/// <summary>
/// Gets the duration.
/// </summary>
}
/// <summary>
- /// Gets the he duration of the updated subtitle.
+ /// Gets the duration of the updated subtitle.
/// </summary>
public uint Duration { get; }
/// <summary>
/// Gets the text of the updated subtitle.
/// </summary>
- /// <value> string </value>
public string Text { get; }
public override string ToString()
public class VideoFrameDecodedEventArgs : EventArgs
{
/// <summary>
- /// Initialize a new instance of the VideoFrameDecodedEventArgs class.
+ /// Initializes a new instance of the VideoFrameDecodedEventArgs class.
/// </summary>
internal VideoFrameDecodedEventArgs(MediaPacket packet)
{
{
/// <summary>
- /// Initialize a new instance of the VideoStreamChangedEventArgs class.
+ /// Initializes a new instance of the VideoStreamChangedEventArgs class.
/// </summary>
internal VideoStreamChangedEventArgs(int height, int width, int fps, int bitRate)
{
}
/// <summary>
- /// Metadata extractor constructor
+ /// Initializes a new instance of the <see cref="MetadataEditor"/> class with the specified path.
/// </summary>
/// <param name="path"> The path of the media file to edit metadata </param>
/// <exception cref="ArgumentNullException"><paramref name="path"/> is null.</exception>
- /// <exception cref="OutOfMemoryException">Memory allocation failed.</exception>
- /// <exception cref="NotSupportedException">Unsupported file type</exception>
- /// <exception cref="FileNotFoundException">File not exist</exception>
+ /// <exception cref="NotSupportedException">The file is unsupported format.</exception>
+ /// <exception cref="System.IO.FileNotFoundException">The file does not exist.</exception>
public MetadataEditor(string path)
{
if (path == null)
}
/// <summary>
- /// Append the picture to the media file
+ /// Appends the picture to the media file.
/// </summary>
- /// <param name="path"> The path of picture for adding to the metadata </param>
- /// <exception cref="InvalidOperationException"> When internal process error is occured</exception>
- /// <exception cref="ArgumentNullException"> Picture path is null</exception>
+ /// <param name="path">The path of picture for adding to the metadata.</param>
+ /// <exception cref="InvalidOperationException">Internal error occurs.</exception>
+ /// <exception cref="ArgumentNullException"><paramref name="path"/> is null.</exception>
public void AddPicture(string path)
{
if (path == null)
}
/// <summary>
- /// Remove the picture from the media file
+ /// Removes the picture from the media file.
/// </summary>
/// <param name="index"> Index of picture to remove </param>
/// <exception cref="InvalidOperationException"> When internal process error is occured</exception>
public class Artwork
{
/// <summary>
- /// Initialize a new instance of the Artwork class with the specified data and mimeType.
+ /// Initializes a new instance of the Artwork class with the specified data and mimeType.
/// </summary>
/// <param name="data">The data of the artwork to set metadata.</param>
/// <param name="mimeType">The mime type of the data of the artwork.</param>
public string StreamCount { get; }
/// <summary>
- /// Audio codec type
+ /// Gets the audio codec type.
/// </summary>
public string Codec { get; }
}
/// <summary>
- /// Initialize a new instance of the MetadataExtractor class with the specified path.
+ /// Initializes a new instance of the MetadataExtractor class with the specified path.
/// </summary>
/// <param name="path">The path for the file to extract metadata.</param>
/// <exception cref="ArgumentNullException"><paramref name="path"/> is null.</exception>
}
/// <summary>
- /// Initialize a new instance of the MetadataExtractor class with the specified buffer.
+ /// Initializes a new instance of the MetadataExtractor class with the specified buffer.
/// </summary>
/// <param name="buffer">The buffer to extract metadata.</param>
/// <exception cref="ArgumentNullException"><paramref name="buffer"/> is null.</exception>
/// <summary>
/// Retrieves the <see cref="Metadata"/>.
/// </summary>
- /// <returns>A <see cref="Metadata"/> for the give source.</returns>
+ /// <returns>A <see cref="Metadata"/> for the given source.</returns>
/// <exception cref="InvalidOperationException">Internal process error is occurred.</exception>
/// <exception cref="ObjectDisposedException">The <see cref="MetadataExtractor"/> has been already disposed of.</exception>
public Metadata GetMetadata()
}
/// <summary>
- /// The lyrics of the index
+ /// The text representation of the lyrics.
/// </summary>
public string Lyrics { get; }
/// <summary>
- /// The time information of the index
+ /// The time information of the lyrics.
/// </summary>
public uint Timestamp { get; }
}
Height = height;
}
/// <summary>
- /// The thumbnail data
+ /// The thumbnail data.
/// </summary>
public byte[] Thumbnail { get; }
/// <summary>
- /// The width of the thumbnail
+ /// The width of the thumbnail.
/// </summary>
public int Width { get; }
/// <summary>
- /// The height of the thumbnail
+ /// The height of the thumbnail.
/// </summary>
public int Height { get; }
}
public enum BarcodeDetectionTarget
{
/// <summary>
- /// 1D and 2D
+ /// 1D and 2D.
/// </summary>
All,
/// <summary>
- /// 1D barcode only
+ /// 1D barcode only.
/// </summary>
Barcode1D,
/// <summary>
- /// 2D barcode only
+ /// 2D barcode only.
/// </summary>
Barcode2D,
}
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException">
/// <paramref name="source"/> already has been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> already has been disposed of.
/// </exception>
/// <seealso cref="Barcode"/>
private Color _foregroundColor = Color.Black;
/// <summary>
- /// Sets or gets the foreground color of the barcode to be generated.
+ /// Gets or sets the foreground color of the barcode to be generated.
/// </summary>
/// <remarks>
/// The alpha value of the color will be ignored.
private Color _backgroundColor = Color.White;
/// <summary>
- /// Sets or gets the background color of the barcode to be generated.
+ /// Gets or sets the background color of the barcode to be generated.
/// </summary>
/// <remarks>
/// The alpha value of the color will be ignored.
/// <returns><see cref="MediaVisionSource"/> containing the generated QR image.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="qrConfig"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> is null.
/// </exception>
/// <exception cref="ArgumentException">
/// <paramref name="message"/> is too long.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> contains characters which are illegal by the <see cref="QrMode"/>.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// </remarks>
/// <exception cref="ArgumentNullException">
/// <paramref name="qrConfig"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> is null.
/// </exception>
/// <exception cref="ArgumentException">
/// <paramref name="message"/> is too long.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> contains characters which are illegal by the <see cref="QrMode"/>.
/// </exception>
/// <exception cref="NotSupportedException">
/// The feature is not supported.\n
- /// - or -\n
+ /// -or-\n
/// <see cref="BarcodeGenerationConfiguration.TextVisibility"/> is the <see cref="Visibility.Visible"/>.
/// </exception>
/// <exception cref="ObjectDisposedException"><paramref name="config"/> already has been disposed of.</exception>
/// <exception cref="ArgumentNullException"><paramref name="message"/> is null.</exception>
/// <exception cref="ArgumentException">
/// <paramref name="message"/> is too long.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="type"/> is <see cref="BarcodeType.QR"/>.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="type"/> is invalid.
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> contains illegal characters.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ArgumentNullException"><paramref name="message"/> is null.</exception>
/// <exception cref="ArgumentException">
/// <paramref name="message"/> is too long.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="type"/> is <see cref="BarcodeType.QR"/>.
- /// - or -\n
+ /// -or-\n
/// <paramref name="type"/> is invalid.
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> contains illegal characters.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <param name="imageConfig">The <see cref="BarcodeImageConfiguration"/> that contains information about the file to be generated.</param>
/// <exception cref="ArgumentNullException">
/// <paramref name="messsage"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="qrConfig"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="imageConfig"/> is null.
/// </exception>
/// <exception cref="ArgumentException">
/// <paramref name="message"/> is too long.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> contains characters which are illegal by the <see cref="QrMode"/>.
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to write a file.</exception>
/// <param name="config">The configuration of the barcode generator. This value can be null.</param>
/// <exception cref="ArgumentNullException">
/// <paramref name="messsage"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="qrConfig"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="imageConfig"/> is null.
/// </exception>
/// <exception cref="ArgumentException">
/// <paramref name="message"/> is too long.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> contains characters which are illegal by the <see cref="QrMode"/>.
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to write a file.</exception>
/// <exception cref="NotSupportedException">
/// The feature is not supported.\n
- /// - or -\n
+ /// -or-\n
/// <see cref="BarcodeGenerationConfiguration.TextVisibility"/> is the <see cref="Visibility.Visible"/>.
/// </exception>
/// <exception cref="ObjectDisposedException"><paramref name="config"/> already has been disposed of.</exception>
/// information about the file to be generated.</param>
/// <exception cref="ArgumentNullException">
/// <paramref name="messsage"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="imageConfig"/> is null.
/// </exception>
/// <exception cref="ArgumentException">
/// <paramref name="message"/> is too long.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="type"/> is <see cref="BarcodeType.QR"/>.
- /// - or -\n
+ /// -or-\n
/// <paramref name="type"/> is invalid.
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> contains illegal characters.
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to write a file.</exception>
/// <param name="config">The configuration of the barcode generator. This value can be null.</param>
/// <exception cref="ArgumentNullException">
/// <paramref name="messsage"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="imageConfig"/> is null.
/// </exception>
/// <exception cref="ArgumentException">
/// <paramref name="message"/> is too long.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="type"/> is <see cref="BarcodeType.QR"/>.
- /// - or -\n
+ /// -or-\n
/// <paramref name="type"/> is invalid.
- /// - or -\n
+ /// -or-\n
/// <paramref name="message"/> contains illegal characters.
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to write a file.</exception>
/// <param name="imageFormat">The format of the output image.</param>
/// <exception cref="ArgumentOutOfRangeException">
/// The width of <paramref name="size"/> is less than or equal to zero.\n
- /// - or -\n
+ /// -or-\n
/// The height of <paramref name="size"/> is less than or equal to zero.
/// </exception>
/// <exception cref="ArgumentNullException"><paramref name="path"/> is null.</exception>
/// <param name="imageFormat">The format of the output image.</param>
/// <exception cref="ArgumentOutOfRangeException">
/// <paramref name="width"/> is less than or equal to zero.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="height"/> is less than or equal to zero.
/// </exception>
/// <exception cref="ArgumentNullException"><paramref name="path"/> is null.</exception>
public int Height => Size.Height;
/// <summary>
- /// Gets the path to the file that has to be generated
+ /// Gets the path to the file that has to be generated.
/// </summary>
/// <remarks>
/// The mediastorage privilege http://tizen.org/privilege/mediastorage is needed if image path is relevant to media storage.\n
public string Path { get; }
/// <summary>
- /// Gets the format of the output image
+ /// Gets the format of the output image.
/// </summary>
public BarcodeImageFormat Format { get; }
}
public enum BarcodeImageFormat
{
/// <summary>
- /// BMP image format
+ /// BMP image format.
/// </summary>
Bmp,
/// <summary>
- /// JPEG image format
+ /// JPEG image format.
/// </summary>
Jpeg,
/// <summary>
- /// PNG image format
+ /// PNG image format.
/// </summary>
Png
}
}
/// <summary>
- /// Sets or gets the face detection haarcascade xml file for face detection.
+ /// Gets or sets the face detection haarcascade xml file for face detection.
/// </summary>
/// <exception cref="ArgumentNullException"><paramref name="value"/> is null.</exception>
public string ModelFilePath
private Rectangle? _roi;
/// <summary>
- /// Sets or gets the roi of the face detection.
+ /// Gets or sets the roi of the face detection.
/// </summary>
/// <remarks>
/// Default value is null (the roi will be a full image) can be changed to specify the roi for face detection.
/// </remarks>
/// <exception cref="ArgumentOutOfRangeException">
/// The width of <paramref name="value"/> is less than or equal to zero.\n
- /// - or -\n
+ /// -or-\n
/// The height of <paramref name="value"/> is less than or equal to zero.\n
- /// - or -\n
+ /// -or-\n
/// The x position of <paramref name="value"/> is lsss than zero.\n
- /// - or -\n
+ /// -or-\n
/// The y position of <paramref name="value"/> is lsss than zero.\n
/// </exception>
public Rectangle? Roi
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="NotSupportedException">
/// The feature is not supported.\n
- /// - or -\n
+ /// -or-\n
/// The format of <paramref name="source"/> is not supported.
/// </exception>
public static async Task<Rectangle[]> DetectAsync(MediaVisionSource source)
/// <exception cref="FileNotFoundException"><paramref name="modelPath"/> is invalid.</exception>
/// <exception cref="NotSupportedException">
/// The feature is not supported.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="modelPath"/> is not supported format.
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to access the specified file.</exception>
/// <param name="source">The <see cref="MediaVisionSource"/> that contains face image.</param>
/// <param name="label">The label that identifies face for which example is adding.
/// Specify the same labels for the face images of a single person when calling this method.
- /// Has to be unique for each face</param>
+ /// Has to be unique for each face.</param>
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="FaceRecognitionModel"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="source"/> has already been dispose of.
/// </exception>
/// <seealso cref="Learn(FaceRecognitionConfiguration)"/>
/// <param name="source">The <see cref="MediaVisionSource"/> that contains face image.</param>
/// <param name="label">The label that identifies face for which example is adding.
/// Specify the same labels for the face images of a single person when calling this method.
- /// Has to be unique for each face</param>
+ /// Has to be unique for each face.</param>
/// <param name="area">The rectangular region of the face image at the source image.</param>
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="FaceRecognitionModel"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="source"/> has already been dispose of.
/// </exception>
/// <seealso cref="Learn(FaceRecognitionConfiguration)"/>
/// <param name="config">The configuration used for learning of the recognition models. This value can be null.</param>
/// <exception cref="ObjectDisposedException">
/// The <see cref="FaceRecognitionModel"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="InvalidOperationException">No examples added.</exception>
public Rectangle? Area { get; }
/// <summary>
- /// The confidence of the recognition_model that face has been recognized correctly (value from 0.0 to 1.0).
+ /// The confidence of the recognition model that face has been recognized correctly (value from 0.0 to 1.0).
/// No faces were recognized if confidence was 0.0. When model has been learned on large amount of examples,
/// threshold for this value can be high (0.85-0.95). If model was learned for small amount of examples,
/// then threshold can be reduced (0.5-0.85).
/// <returns>A task that represents the asynchronous recognition operation.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="recognitionModel"/> is null.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <returns>A task that represents the asynchronous recognition operation.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="recognitionModel"/> is null.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <returns>A task that represents the asynchronous recognition operation.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="recognitionModel"/> is null.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException">
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="InvalidOperationException"><paramref name="recognitionModel"/> is untrained model.</exception>
/// <returns>A task that represents the asynchronous recognition operation.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="recognitionModel"/> is null.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException">
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="InvalidOperationException"><paramref name="recognitionModel"/> is untrained model.</exception>
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <param name="trackingModel">The model will be used for tracking.</param>
/// <param name="doLearn">The value indicating whether model learning while tracking. If it is true then model will try to learn
/// (if it supports learning feature), otherwise model will be not learned during the invoking tracking iteration.
- /// Learning process improves tracking correctness, but can decrease tracking performance</param>
+ /// Learning process improves tracking correctness, but can decrease tracking performance.</param>
/// <returns>A task that represents the asynchronous tracking operation.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="trackingModel"/> is null.
/// </exception>
/// <exception cref="ObjectDisposedException">
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="trackingModel"/> has already been disposed of.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="FileNotFoundException"><paramref name="modelPath"/> is invalid.</exception>
/// <exception cref="NotSupportedException">
/// The feature is not supported.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="modelPath"/> is not supported format.
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to access the specified file.</exception>
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="FaceTrackingModel"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="source"/> has already bean disposed of.
/// </exception>
public void Prepare(MediaVisionSource source, Quadrangle region)
public Quadrangle Region { get; }
/// <summary>
- /// The confidence of the tracking_model that new location of the face was determined correctly
+ /// The confidence of the tracking model that new location of the face was determined correctly
/// (value from 0.0 to 1.0). If no location was determined during last track iteration, then value is 0.0.
/// </summary>
public double Confidence { get; }
/// <exception cref="FileNotFoundException"><paramref name="path"/> is invalid.</exception>
/// <exception cref="NotSupportedException">
/// The feature is not supported.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="path"/> is not supported file.
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to access the specified file.</exception>
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageObject"/> has already been disposed of.</exception>
/// <seealso cref="ImageFillConfiguration"/>
- /// <seealso cref="Fill(MediaVisionSource, ImageFillConfiguration, Rectangle?)"/>
+ /// <seealso cref="Fill(MediaVisionSource)"/>
+ /// <seealso cref="Fill(MediaVisionSource, ImageFillConfiguration)"/>
+ /// <seealso cref="Fill(MediaVisionSource, Rectangle)"/>
+ /// <seealso cref="Fill(MediaVisionSource, ImageFillConfiguration, Rectangle)"/>
public double RecognitionRate
{
get
{
- double rate = 0;
- InteropImage.GetRecognitionRate(Handle, out rate).Validate("Failed to get recognition rate");
+ InteropImage.GetRecognitionRate(Handle, out var rate).Validate("Failed to get recognition rate");
return rate;
}
}
/// Gets the label for the image object.
/// </summary>
/// <returns>
- /// The label value; or null if the <see cref="ImageObject"/> has no label.
+ /// The label value if the <see cref="ImageObject"/> has label, otherwise null.
/// </returns>
/// <exception cref="ObjectDisposedException">The <see cref="ImageObject"/> has already been disposed of.</exception>
/// <seealso cref="SetLabel(int)"/>
public int? GetLabel()
{
- int label = 0;
- var ret = InteropImage.GetLabel(Handle, out label);
+ var ret = InteropImage.GetLabel(Handle, out var label);
if (ret == MediaVisionError.NoData)
{
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="ImageObject"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="source"/> has already been disposed of.
/// </exception>
public void Fill(MediaVisionSource source)
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="ImageObject"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
public void Fill(MediaVisionSource source, ImageFillConfiguration config)
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="ImageObject"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="source"/> has already been disposed of.\n
/// </exception>
public void Fill(MediaVisionSource source, Rectangle rect)
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="ImageObject"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
public void Fill(MediaVisionSource source, ImageFillConfiguration config, Rectangle rect)
/// <exception cref="ObjectDisposedException">The <see cref="ImageRecognitionConfiguration"/> already has been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException">
/// <paramref name="value"/> is less than zero.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="value"/> is greater than one.
/// </exception>
public double RequiredMatchingPart
/// <exception cref="ObjectDisposedException">The <see cref="ImageRecognitionConfiguration"/> already has been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException">
/// <paramref name="value"/> is less than zero.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="value"/> is greater than one.
/// </exception>
public double TolerantPartMatchError
/// <returns>A task that represents the asynchronous recognition operation.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="imageObjects"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="imageObjects"/> contains null reference.
/// </exception>
/// <exception cref="ArgumentException"><paramref name="imageObjects"/> has no elements.(The length is zero.)</exception>
/// <returns>A task that represents the asynchronous recognition operation.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="imageObjects"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="imageObjects"/> contains null elements.
/// </exception>
/// <exception cref="ArgumentException"><paramref name="imageObjects"/> has no elements.(The length is zero.)</exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException">
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
public static async Task<IEnumerable<ImageRecognitionResult>> RecognizeAsync(MediaVisionSource source,
/// <returns>A task that represents the asynchronous tracking operation.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="trackingModel"/> is null.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException">
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="trackingModel"/> has already been disposed of.
/// </exception>
/// <exception cref="ArgumentException"><paramref name="trackingModel"/> has no target.</exception>
/// <returns>A task that represents the asynchronous tracking operation.</returns>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="trackingModel"/> is null.
/// </exception>
/// <exception cref="NotSupportedException">The feature is not supported.</exception>
/// <exception cref="ObjectDisposedException">
/// <paramref name="source"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="trackingModel"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="ArgumentException"><paramref name="trackingModel"/> has no target.</exception>
/// </summary>
/// <value>
/// Relative offset value, for which the object offset is expected (relative to the object size in the current frame).\n
- /// the default is 0.
+ /// The default is 0.
/// </value>
/// <exception cref="ObjectDisposedException">The <see cref="ImageTrackingConfiguration"/> already has been disposed of.</exception>
public double ExpectedOffset
/// <exception cref="ObjectDisposedException">The <see cref="ImageTrackingConfiguration"/> already has been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException">
/// <paramref name="value"/> is less than zero.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="value"/> is greater than one.
/// </exception>
public double StabilizationAccelaration
/// <value>
/// It is component of tolerant shift which will be ignored by stabilization process.
/// (this value is relative to the object size in the current frame).
- /// Tolerant shift will be computed like R * S + C, where R - value set to MV_IMAGE_TRACKING_STABLIZATION_TOLERANT_SHIFT,
- /// S - area of object location on frame, C - constant value equal 1.3.\n
+ /// Tolerant shift will be computed like R * S + C, where R is the value set to <see cref="StabilizationTolerantShift"/>,
+ /// S is the area of object location on frame, C is a constant value 1.3.\n
/// \n
/// The default is 0.00006.
/// </value>
/// <exception cref="FileNotFoundException"><paramref name="modelPath"/> is invalid.</exception>
/// <exception cref="NotSupportedException">
/// The feature is not supported.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="modelPath"/> is not supported format.
/// </exception>
/// <exception cref="UnauthorizedAccessException">No permission to access the specified file.</exception>
/// <exception cref="ArgumentNullException"><paramref name="imageObject"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="ImageTrackingModel"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="imageObject"/> has already been disposed of.
/// </exception>
public void SetTarget(ImageObject imageObject)
/// <exception cref="ArgumentNullException"><paramref name="buffer"/> is null.</exception>
/// <exception cref="ArgumentException">
/// <paramref name="buffer"/> has no element.(The length is zero.)\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="colorspace"/> is invalid.
/// </exception>
public MediaVisionSource(byte[] buffer, uint width, uint height, Colorspace colorspace)
namespace Tizen.Multimedia
{
/// <summary>
- /// Represents concrete EngineConfig for creation of video surveillance systems.
+ /// Represents a configuration of <see cref="MovementDetector"/>.
/// </summary>
public class MovementDetectionConfiguration : SurveillanceEngineConfiguration
{
private const string KeyThreshold = "MV_SURVEILLANCE_MOVEMENT_DETECTION_THRESHOLD";
/// <summary>
- /// Represents a configuration of <see cref="MovementDetector"/>.
+ /// A read-only field that represents the default value of <see cref="Threshold"/>.
/// </summary>
public static readonly int DefaultThreshold = 10;
/// <exception cref="ObjectDisposedException">The <see cref="MovementDetectionConfiguration"/> already has been disposed of.</exception>
/// <exception cref="ArgumentOutOfRangeException">
/// <paramref name="value"/> is less than zero.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="value"/> is greater than 255.
/// </exception>
public int Threshold
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="MovementDetector"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <see cref="SurveillanceSource.Push(MediaVisionSource)"/>
/// <exception cref="ArgumentNullException"><paramref name="source"/> is null.</exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="PersonAppearanceDetector"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <see cref="SurveillanceSource.Push(MediaVisionSource)"/>
/// <param name="config">The config for the <paramref name="source"/>.</param>
/// <exception cref="ArgumentNullException">
/// <paramref name="source"/> is null.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> is null.
/// </exception>
/// <exception cref="ObjectDisposedException">
/// The <see cref="PersonRecognizer"/> has already been disposed of.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="config"/> has already been disposed of.
/// </exception>
/// <exception cref="ArgumentException">
/// </code>
/// <exception cref="ArgumentOutOfRangeException">
/// <paramref name="version"/> is less than 1.\n
- /// - or -\n
+ /// -or-\n
/// <paramref name="version"/> is greater than 40.
/// </exception>
/// <exception cref="ArgumentException">
/// <paramref name="qrMode"/> is invalid.\n
- /// - or -
+ /// -or-
/// <paramref name="ecc"/> is invalid.
/// </exception>
public QrConfiguration(QrMode qrMode, ErrorCorrectionLevel ecc, int version)
/// </summary>
public class Quadrangle
{
+
/// <summary>
- /// The constructor of the Quadrangle class
+ /// Initialize a new instance of the <see cref="Quadrangle"/> class with an array of <see cref="Point"/>.
/// </summary>
- /// <remarks><paramref name="points"/> must have 4 elements</remarks>
+ /// <remarks><paramref name="points"/> must have 4 elements.</remarks>
/// <param name="points">four points that define object bounding quadrangle.</param>
/// <exception cref="ArgumentException">The Length of <paramref name="points"/> is not 4.</exception>
public Quadrangle(Point[] points)
}
/// <summary>
- /// Sets and gets ROI (Region Of Interest) to the event trigger
+ /// Sets and gets ROI (Region Of Interest).
/// </summary>
/// <exception cref="ObjectDisposedException">The <see cref="SurveillanceEngine"/> has already been disposed of.</exception>
public Point[] Roi
}
/// <summary>
- /// Initialize a new instance of the <see cref="Display"/> class with a <see cref="MediaView"/> class.
+ /// Initializes a new instance of the <see cref="Display"/> class with a <see cref="MediaView"/> class.
/// </summary>
/// <feature>http://tizen.org/feature/multimedia.raw_video</feature>
/// <exception cref="NotSupportedException">The required feature is not supported.</exception>
}
/// <summary>
- /// Initialize a new instance of the <see cref="Display"/> class with a <see cref="Window"/> class.
+ /// Initializes a new instance of the <see cref="Display"/> class with a <see cref="Window"/> class.
/// </summary>
public Display(Window window) : this(DisplayType.Overlay, window)
{
namespace Tizen.Multimedia
{
+ /// <summary>
+ /// Provides functionality to read a media buffer.
+ /// </summary>
public interface IReadOnlyBuffer
{
/// <summary>
/// </summary>
/// <param name="index">The index of the value to get or set.</param>
/// <exception cref="ArgumentOutOfRangeException">
- /// index is less than zero.
- /// <para>-or-</para>
+ /// index is less than zero.\n
+ /// -or-\n
/// index is equal to or greater than <see cref="Length"/>.
/// </exception>
/// <exception cref="ObjectDisposedException">The object that owns the current buffer already has been disposed of.</exception>
/// <summary>
/// Copies data from a byte array to the buffer.
/// </summary>
- /// <param name="source">The array to copy from.</param>
+ /// <param name="dest">The array to copy to.</param>
/// <param name="startIndex">The zero-based index in the source array where copying should start.</param>
/// <param name="length">The number of array elements to copy.</param>
/// <exception cref="ArgumentOutOfRangeException">startIndex or length is not valid.</exception>
/// <summary>
/// Copies data from a byte array to the buffer.
/// </summary>
- /// <param name="source">The array to copy from.</param>
+ /// <param name="dest">The array to copy to.</param>
/// <param name="startIndex">The zero-based index in the source array where copying should start.</param>
/// <param name="length">The number of array elements to copy.</param>
/// <param name="offset">The zero-based index in the buffer where copying should start.</param>
void CopyTo(byte[] dest, int startIndex, int length, int offset);
}
+ /// <summary>
+ /// Provides functionality to read and write a media buffer.
+ /// </summary>
public interface IMediaBuffer : IReadOnlyBuffer
{
/// <summary>
/// Copies data from the buffer to a byte array.
/// </summary>
- /// <param name="dest">The array to copy to.</param>
+ /// <param name="source">The array to copy from.</param>
/// <param name="startIndex">The zero-based index in the dest array where copying should start.</param>
/// <param name="length">The number of elements to copy.</param>
/// <exception cref="ArgumentOutOfRangeException">startIndex or length is not valid.</exception>
/// <summary>
/// Copies data from the buffer to a byte array.
/// </summary>
- /// <param name="dest">The array to copy to.</param>
+ /// <param name="source">The array to copy from.</param>
/// <param name="startIndex">The zero-based index in the dest array where copying should start.</param>
/// <param name="length">The number of elements to copy.</param>
/// <param name="offset">The zero-based index in the buffer where copying should start.</param>
/// <param name="offset"></param>
/// <param name="length"></param>
/// <exception cref="ArgumentOutOfRangeException">
- /// offset + length is greater than <see cref="Length"/>.
- /// <para>-or-</para>
+ /// offset + length is greater than <see cref="Length"/>.\n
+ /// -or-\n
/// offset or length is less than zero.
/// </exception>
private void ValidateRange(int offset, int length)
namespace Tizen.Multimedia
{
/// <summary>
- /// Enumeration to text attribute
+ /// Specifies visibilities.
/// </summary>
public enum Visibility
{
/// <summary>
- /// Invisible
+ /// Invisible.
/// </summary>
Invisible,
/// <summary>
- /// Visible
+ /// Visible.
/// </summary>
Visible
}
}
/// <summary>
- /// Initializes a new instance of the VideoMediaFormat class with the specified mime type, width and height.
+ /// Initializes a new instance of the VideoMediaFormat class with the specified mime type and size.
/// </summary>
/// <param name="mimeType">The mime type of the format.</param>
/// <param name="size">The size of the format.</param>
/// <summary>
/// Initializes a new instance of the VideoMediaFormat class with the specified mime type,
- /// width, height, frame rate and bit rate.
+ /// size, frame rate and bit rate.
/// </summary>
/// <param name="mimeType">The mime type of the format.</param>
/// <param name="size">The size of the format.</param>
/// <param name="sampleRate">The sample rate value of the format.</param>
/// <param name="bit">The bit value of the format.</param>
/// <param name="bitRate">The bit rate value of the format.</param>
- /// <exception cref="ArgumentException">mimeType is invalid(i.e. undefined value).</exception>
+ /// <exception cref="ArgumentException"><paramref name="mimeType"/> is invalid(i.e. undefined value).</exception>
/// <exception cref="ArgumentOutOfRangeException">
- /// channel, sampleRate, bit or bitRate is less than zero.</exception>
+ /// <paramref name="channel"/>, <paramref name="sampleRate"/>, <paramref name="bit"/> or <paramref name="bitRate"/> is less than zero.
+ /// </exception>
public AudioMediaFormat(MediaFormatAudioMimeType mimeType,
int channel, int sampleRate, int bit, int bitRate)
: this(mimeType, channel, sampleRate, bit, bitRate, MediaFormatAacType.None)
/// <param name="bitRate">The bit rate value of the format.</param>
/// <param name="aacType">The AAC bitstream format(ADIF or ADTS).</param>
/// <exception cref="ArgumentException">
- /// mimeType or aacType is invalid(i.e. undefined value).
- /// <para>- or -</para>
- /// aacType is not <see cref="MediaFormatAacType.None"/>, but mimeType is one of aac types.
+ /// <paramref name="mimeType"/> or <paramref name="aacType"/> is invalid(i.e. undefined value).\n
+ /// -or-\n
+ /// <paramref name="aacType"/> is not <see cref="MediaFormatAacType.None"/>, but <paramref name="mimeType"/> is one of aac types.
/// </exception>
/// <exception cref="ArgumentOutOfRangeException">
- /// channel, sampleRate, bit or bitRate is less than zero.</exception>
+ /// <paramref name="channel"/>, <paramref name="sampleRate"/>, <paramref name="bit"/> or <paramref name="bitRate"/> is less than zero.
+ /// </exception>
public AudioMediaFormat(MediaFormatAudioMimeType mimeType,
int channel, int sampleRate, int bit, int bitRate, MediaFormatAacType aacType)
: base(MediaFormatType.Audio)
public enum MediaFormatAudioMimeType
{
/// <summary>
- /// L16, Audio.
- /// </summary>.
- //L16 = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1010),
-
- /// <summary>
- /// ALAW, Audio.
- /// </summary>
- //ALaw = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1020),
-
- /// <summary>
- /// ULAW, Audio.
- /// </summary>
- //ULaw = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1030),
-
- /// <summary>
/// AMR, Alias for <see cref="AmrNB"/>.
/// </summary>
Amr = (MediaFormatType.Audio | MediaFormatDataType.Encoded | 0x1040),
/// PCM.
/// </summary>
Pcm = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1510),
-
- /// <summary>
- /// PCM signed 16-bit little-endian, Audio
- /// </summary>
- //PcmS16LE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1510),
-
- /// <summary>
- /// PCM signed 24-bit little-endian, Audio
- /// </summary>
- //PcmS24LE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1511),
-
- /// <summary>
- /// PCM signed 32-bit little-endian, Audio
- /// </summary>
- //Pcm32LE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1512),
-
- /// <summary>
- /// PCM signed 16-bit big-endian, Audio
- /// </summary>
- //PcmS16BE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1513),
-
- /// <summary>
- /// PCM signed 24-bit big-endian, Audio
- /// </summary>
- //PcmS24BE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1514),
-
- /// <summary>
- /// PCM signed 32-bit big-endian, Audio
- /// </summary>
- //PcmS32BE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1515),
-
- /// <summary>
- /// PCM 32-bit floating point little-endian, Audio
- /// </summary>
- //PcmF32LE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1516),
-
- /// <summary>
- /// PCM 32-bit floating point big-endian, Audio
- /// </summary>
- //PcmF32BE = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1517),
-
- /// <summary>
- /// PCM A-law, Audio
- /// </summary>
- //PcmALaw = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1520),
-
- /// <summary>
- /// PCM U-law, Audio
- /// </summary>
- //PcmULaw = (MediaFormatType.Audio | MediaFormatDataType.Raw | 0x1530),
}
/// <summary>
H263P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2021),
/// <summary>
- /// H263 Baseline Profile
- /// </summary>
- //H263BP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2022),
-
- /// <summary>
- /// H263 H.320 Coding Efficiency Profile
- /// </summary>
- //H263H320Cep = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2023),
-
- /// <summary>
- /// H263 Backward-Compatibility Profile
- /// </summary>
- //H263Bcp = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2024),
-
- /// <summary>
- /// H263 Interactive and Streaming Wireless Profile
- /// </summary>
- //H263Isw2p = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2025),
-
- /// <summary>
- /// H263 Interactive and Streaming Wireless Profile
- /// </summary>
- //H263Isw3p = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2026),
-
- /// <summary>
- /// H263 Conversation High Compression Profile
- /// </summary>
- //H263Chcp = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2027),
-
- /// <summary>
- /// H263 Conversational Internet Profile
- /// </summary>
- //H263CInternetP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2028),
-
- /// <summary>
- /// H263 Conversational Interlace Profile
- /// </summary>
- //H263CInterlaceP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2029),
-
- /// <summary>
- /// H263 High Latency Profile
- /// </summary>
- //H263Hlp = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x202A),
-
- /// <summary>
- /// H264_SP.
+ /// H264_SP
/// </summary>
H264SP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2030),
H264HP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2032),
/// <summary>
- /// H264 Extended Profile
- /// </summary>
- //H264XP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2033),
-
- /// <summary>
- /// H264 High10 Profile
- /// </summary>
- //H264H10P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2034),
-
- /// <summary>
- /// H264 High422 Profile
- /// </summary>
- //H264H422P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2035),
-
- /// <summary>
- /// H264 High444 Profile
- /// </summary>
- //H264H444P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2036),
-
- /// <summary>
- /// H264 CAVLC444 Profile
- /// </summary>
- //H264C444P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2037),
-
- /// <summary>
- /// MJPEG.
+ /// MJPEG
/// </summary>
MJpeg = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2040),
Mpeg4Asp = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2071),
/// <summary>
- /// HEVC
- /// </summary>
- //Hevc = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2080),
-
- /// <summary>
- /// HEVC Main Profile
- /// </summary>
- //HevcMP = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2081),
-
- /// <summary>
- /// HEVC Main10 Profile
- /// </summary>
- //HevcM10P = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2082),
-
- /// <summary>
- /// VP8
- /// </summary>
- //VP8 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x2090),
-
- /// <summary>
- /// VP9
- /// </summary>
- //VP9 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x20A0),
-
- /// <summary>
- /// VC1
- /// </summary>
- //VC1 = (MediaFormatType.Video | MediaFormatDataType.Encoded | 0x20B0),
-
- /// <summary>
- /// I420.
+ /// I420
/// </summary>
I420 = (MediaFormatType.Video | MediaFormatDataType.Raw | 0x2510),
/// <exception cref="ArgumentOutOfRangeException">
/// The value specified for this property is less than zero or greater than <see cref="MediaPacketBuffer.Length"/>.</exception>
/// <exception cref="InvalidOperationException">
- /// The MediaPacket has <see cref="VideoPlanes"/> instead of <see cref="Buffer"/>.
- /// <para>-or-</para>
+ /// The MediaPacket has <see cref="VideoPlanes"/> instead of <see cref="Buffer"/>.\n
+ /// -or-\n
/// The MediaPacket is not in writable state which means it being used by another module.
/// </exception>
public int BufferWrittenLength
/// </summary>
/// <param name="index">The index of the value to get or set.</param>
/// <exception cref="ArgumentOutOfRangeException">
- /// index is less than zero.
- /// <para>-or-</para>
+ /// index is less than zero.\n
+ /// -or-\n
/// index is equal to or greater than <see cref="Length"/>.
/// </exception>
/// <exception cref="ObjectDisposedException">The MediaPacket that owns the current buffer already has been disposed of.</exception>
/// <param name="offset"></param>
/// <param name="length"></param>
/// <exception cref="ArgumentOutOfRangeException">
- /// offset + length is greater than <see cref="Length"/>.
- /// <para>-or-</para>
+ /// offset + length is greater than <see cref="Length"/>.\n
+ /// -or-\n
/// offset or length is less than zero.
/// </exception>
private void ValidateRange(int offset, int length)
public enum MediaPacketBufferFlags
{
/// <summary>
- /// The buffer contains codec initialization or codec specific data instead of media data
+ /// The buffer contains codec initialization or codec specific data instead of media data.
/// </summary>
CodecConfig = 0x1,