Exemplo n.º 1
0
 /// <summary>
 /// Initializes a new instance of the Video class.
 /// </summary>
 /// <param name="label">An optional label for the codec. The label can
 /// be used to control muxing behavior.</param>
 /// <param name="keyFrameInterval">The distance between two key frames,
 /// thereby defining a group of pictures (GOP). The value should be a
 /// non-zero integer in the range [1, 30] seconds, specified in ISO
 /// 8601 format. The default is 2 seconds (PT2S).</param>
 /// <param name="stretchMode">The resizing mode - how the input video
 /// will be resized to fit the desired output resolution(s). Default is
 /// AutoSize. Possible values include: 'None', 'AutoSize',
 /// 'AutoFit'</param>
 public Video(string label = default(string), System.TimeSpan?keyFrameInterval = default(System.TimeSpan?), StretchMode?stretchMode = default(StretchMode?))
     : base(label)
 {
     KeyFrameInterval = keyFrameInterval;
     StretchMode      = stretchMode;
     CustomInit();
 }
 /// <summary>
 /// Initializes a new instance of the LiveEventEncoding class.
 /// </summary>
 /// <param name="encodingType">Live event type. When encodingType is
 /// set to PassthroughBasic or PassthroughStandard, the service simply
 /// passes through the incoming video and audio layer(s) to the output.
 /// When encodingType is set to Standard or Premium1080p, a live
 /// encoder transcodes the incoming stream into multiple bitrates or
 /// layers. See https://go.microsoft.com/fwlink/?linkid=2095101 for
 /// more information. This property cannot be modified after the live
 /// event is created. Possible values include: 'None', 'Standard',
 /// 'Premium1080p', 'PassthroughBasic', 'PassthroughStandard'</param>
 /// <param name="presetName">The optional encoding preset name, used
 /// when encodingType is not None. This value is specified at creation
 /// time and cannot be updated. If the encodingType is set to Standard,
 /// then the default preset name is ‘Default720p’. Else if the
 /// encodingType is set to Premium1080p, the default preset is
 /// ‘Default1080p’.</param>
 /// <param name="stretchMode">Specifies how the input video will be
 /// resized to fit the desired output resolution(s). Default is None.
 /// Possible values include: 'None', 'AutoSize', 'AutoFit'</param>
 /// <param name="keyFrameInterval">Use an ISO 8601 time value between
 /// 0.5 to 20 seconds to specify the output fragment length for the
 /// video and audio tracks of an encoding live event. For example, use
 /// PT2S to indicate 2 seconds. For the video track it also defines the
 /// key frame interval, or the length of a GoP (group of pictures).
 /// If this value is not set for an encoding live event, the fragment
 /// duration defaults to 2 seconds. The value cannot be set for
 /// pass-through live events.</param>
 public LiveEventEncoding(LiveEventEncodingType?encodingType = default(LiveEventEncodingType?), string presetName = default(string), StretchMode?stretchMode = default(StretchMode?), System.TimeSpan?keyFrameInterval = default(System.TimeSpan?))
 {
     EncodingType     = encodingType;
     PresetName       = presetName;
     StretchMode      = stretchMode;
     KeyFrameInterval = keyFrameInterval;
     CustomInit();
 }
Exemplo n.º 3
0
 /// <summary>
 /// Initializes a new instance of the JpgImage class.
 /// </summary>
 /// <param name="start">The position in the input video from where to
 /// start generating thumbnails. The value can be in ISO 8601 format
 /// (For example, PT05S to start at 5 seconds), or a frame count (For
 /// example, 10 to start at the 10th frame), or a relative value to
 /// stream duration (For example, 10% to start at 10% of stream
 /// duration). Also supports a macro {Best}, which tells the encoder to
 /// select the best thumbnail from the first few seconds of the video
 /// and will only produce one thumbnail, no matter what other settings
 /// are for Step and Range. The default value is macro {Best}.</param>
 /// <param name="label">An optional label for the codec. The label can
 /// be used to control muxing behavior.</param>
 /// <param name="keyFrameInterval">The distance between two key frames.
 /// The value should be non-zero in the range [0.5, 20] seconds,
 /// specified in ISO 8601 format. The default is 2 seconds(PT2S). Note
 /// that this setting is ignored if VideoSyncMode.Passthrough is set,
 /// where the KeyFrameInterval value will follow the input source
 /// setting.</param>
 /// <param name="stretchMode">The resizing mode - how the input video
 /// will be resized to fit the desired output resolution(s). Default is
 /// AutoSize. Possible values include: 'None', 'AutoSize',
 /// 'AutoFit'</param>
 /// <param name="syncMode">The Video Sync Mode. Possible values
 /// include: 'Auto', 'Passthrough', 'Cfr', 'Vfr'</param>
 /// <param name="step">The intervals at which thumbnails are generated.
 /// The value can be in ISO 8601 format (For example, PT05S for one
 /// image every 5 seconds), or a frame count (For example, 30 for one
 /// image every 30 frames), or a relative value to stream duration (For
 /// example, 10% for one image every 10% of stream duration). Note:
 /// Step value will affect the first generated thumbnail, which may not
 /// be exactly the one specified at transform preset start time. This
 /// is due to the encoder, which tries to select the best thumbnail
 /// between start time and Step position from start time as the first
 /// output. As the default value is 10%, it means if stream has long
 /// duration, the first generated thumbnail might be far away from the
 /// one specified at start time. Try to select reasonable value for
 /// Step if the first thumbnail is expected close to start time, or set
 /// Range value at 1 if only one thumbnail is needed at start
 /// time.</param>
 /// <param name="range">The position relative to transform preset start
 /// time in the input video at which to stop generating thumbnails. The
 /// value can be in ISO 8601 format (For example, PT5M30S to stop at 5
 /// minutes and 30 seconds from start time), or a frame count (For
 /// example, 300 to stop at the 300th frame from the frame at start
 /// time. If this value is 1, it means only producing one thumbnail at
 /// start time), or a relative value to the stream duration (For
 /// example, 50% to stop at half of stream duration from start time).
 /// The default value is 100%, which means to stop at the end of the
 /// stream.</param>
 /// <param name="layers">A collection of output JPEG image layers to be
 /// produced by the encoder.</param>
 /// <param name="spriteColumn">Sets the number of columns used in
 /// thumbnail sprite image.  The number of rows are automatically
 /// calculated and a VTT file is generated with the coordinate mappings
 /// for each thumbnail in the sprite. Note: this value should be a
 /// positive integer and a proper value is recommended so that the
 /// output image resolution will not go beyond JPEG maximum pixel
 /// resolution limit 65535x65535.</param>
 public JpgImage(string start, string label = default(string), System.TimeSpan?keyFrameInterval = default(System.TimeSpan?), StretchMode?stretchMode = default(StretchMode?), VideoSyncMode?syncMode = default(VideoSyncMode?), string step = default(string), string range = default(string), IList <JpgLayer> layers = default(IList <JpgLayer>), int?spriteColumn = default(int?))
     : base(start, label, keyFrameInterval, stretchMode, syncMode, step, range)
 {
     Layers       = layers;
     SpriteColumn = spriteColumn;
     CustomInit();
 }
Exemplo n.º 4
0
 /// <summary>
 /// Initializes a new instance of the Image class.
 /// </summary>
 /// <param name="start">The position in the input video from where to
 /// start generating thumbnails. The value can be in absolute timestamp
 /// (ISO 8601, e.g: PT05S), or a frame count (For example, 10 for the
 /// 10th frame), or a relative value (For example, 1%). Also supports a
 /// macro {Best}, which tells the encoder to select the best thumbnail
 /// from the first few seconds of the video.</param>
 /// <param name="label">An optional label for the codec. The label can
 /// be used to control muxing behavior.</param>
 /// <param name="keyFrameInterval">The distance between two key frames,
 /// thereby defining a group of pictures (GOP). The value should be a
 /// non-zero integer in the range [1, 30] seconds, specified in ISO
 /// 8601 format. The default is 2 seconds (PT2S).</param>
 /// <param name="stretchMode">The resizing mode - how the input video
 /// will be resized to fit the desired output resolution(s). Default is
 /// AutoSize. Possible values include: 'None', 'AutoSize',
 /// 'AutoFit'</param>
 /// <param name="step">The intervals at which thumbnails are generated.
 /// The value can be in absolute timestamp (ISO 8601, e.g: PT05S for
 /// one image every 5 seconds), or a frame count (For example, 30 for
 /// every 30 frames), or a relative value (For example, 1%).</param>
 /// <param name="range">The position in the input video at which to
 /// stop generating thumbnails. The value can be in absolute timestamp
 /// (ISO 8601, e.g: PT5M30S to stop at 5 minutes and 30 seconds), or a
 /// frame count (For example, 300 to stop at the 300th frame), or a
 /// relative value (For example, 100%).</param>
 public Image(string start, string label = default(string), System.TimeSpan?keyFrameInterval = default(System.TimeSpan?), StretchMode?stretchMode = default(StretchMode?), string step = default(string), string range = default(string))
     : base(label, keyFrameInterval, stretchMode)
 {
     Start = start;
     Step  = step;
     Range = range;
     CustomInit();
 }
 /// <summary>
 /// Initializes a new instance of the H264Video class.
 /// </summary>
 /// <param name="label">An optional label for the codec. The label can
 /// be used to control muxing behavior.</param>
 /// <param name="keyFrameInterval">The distance between two key frames.
 /// The value should be non-zero in the range [0.5, 20] seconds,
 /// specified in ISO 8601 format. The default is 2 seconds(PT2S). Note
 /// that this setting is ignored if VideoSyncMode.Passthrough is set,
 /// where the KeyFrameInterval value will follow the input source
 /// setting.</param>
 /// <param name="stretchMode">The resizing mode - how the input video
 /// will be resized to fit the desired output resolution(s). Default is
 /// AutoSize. Possible values include: 'None', 'AutoSize',
 /// 'AutoFit'</param>
 /// <param name="syncMode">The Video Sync Mode. Possible values
 /// include: 'Auto', 'Passthrough', 'Cfr', 'Vfr'</param>
 /// <param name="complexity">Tells the encoder how to choose its
 /// encoding settings. The default value is Balanced. Possible values
 /// include: 'Speed', 'Balanced', 'Quality'</param>
 /// <param name="layers">The collection of output H.264 layers to be
 /// produced by the encoder.</param>
 /// <param name="rateControlMode">The video rate control mode. Possible
 /// values include: 'ABR', 'CBR', 'CRF'</param>
 /// <param name="sceneChangeDetection">Whether or not the encoder
 /// should insert key frames at scene changes. If not specified, the
 /// default is false. This flag should be set to true only when the
 /// encoder is being configured to produce a single output
 /// video.</param>
 public H264Video(string label = default(string), System.TimeSpan?keyFrameInterval = default(System.TimeSpan?), StretchMode?stretchMode = default(StretchMode?), VideoSyncMode?syncMode = default(VideoSyncMode?), H264Complexity?complexity = default(H264Complexity?), IList <H264Layer> layers = default(IList <H264Layer>), H264RateControlMode?rateControlMode = default(H264RateControlMode?), bool?sceneChangeDetection = default(bool?))
     : base(label, keyFrameInterval, stretchMode, syncMode)
 {
     Complexity           = complexity;
     Layers               = layers;
     RateControlMode      = rateControlMode;
     SceneChangeDetection = sceneChangeDetection;
     CustomInit();
 }
Exemplo n.º 6
0
 /// <summary>
 /// Initializes a new instance of the JpgImage class.
 /// </summary>
 /// <param name="label">An optional label for the codec. The label can
 /// be used to control muxing behavior.</param>
 /// <param name="keyFrameInterval">The distance between two key frames,
 /// thereby defining a group of pictures (GOP). The value should be a
 /// non-zero integer in the range [1, 30] seconds, specified in ISO
 /// 8601 format. The default is 2 seconds (PT2S).</param>
 /// <param name="stretchMode">The resizing mode - how the input video
 /// will be resized to fit the desired output resolution(s). Default is
 /// AutoSize. Possible values include: 'None', 'AutoSize',
 /// 'AutoFit'</param>
 /// <param name="start">The position in the input video from where to
 /// start generating thumbnails. The value can be in absolute timestamp
 /// (ISO 8601, e.g: PT05S), or a frame count (For example, 10 for the
 /// 10th frame), or a relative value (For example, 1%). Also supports a
 /// macro {Best}, which tells the encoder to select the best thumbnail
 /// from the first few seconds of the video.</param>
 /// <param name="step">The intervals at which thumbnails are generated.
 /// The value can be in absolute timestamp (ISO 8601, e.g: PT05S for
 /// one image every 5 seconds), or a frame count (For example, 30 for
 /// every 30 frames), or a relative value (For example, 1%).</param>
 /// <param name="range">The position in the input video at which to
 /// stop generating thumbnails. The value can be in absolute timestamp
 /// (ISO 8601, e.g: PT5M30S to stop at 5 minutes and 30 seconds), or a
 /// frame count (For example, 300 to stop at the 300th frame), or a
 /// relative value (For example, 100%).</param>
 /// <param name="layers">A collection of output JPEG image layers to be
 /// produced by the encoder.</param>
 public JpgImage(string label = default(string), System.TimeSpan?keyFrameInterval = default(System.TimeSpan?), StretchMode?stretchMode = default(StretchMode?), string start = default(string), string step = default(string), string range = default(string), IList <JpgLayer> layers = default(IList <JpgLayer>))
     : base(label, keyFrameInterval, stretchMode, start, step, range)
 {
     Layers = layers;
     CustomInit();
 }