java.lang.Object
com.azure.resourcemanager.mediaservices.models.Layer
com.azure.resourcemanager.mediaservices.models.VideoLayer
Direct Known Subclasses:
H264Layer

public class VideoLayer extends Layer
Describes the settings to be used when encoding the input video into a desired output bitrate layer.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates an instance of VideoLayer class.
  • Method Summary

    Modifier and Type
    Method
    Description
    Get the adaptiveBFrame property: Whether or not adaptive B-frames are to be used when encoding this layer.
    Get the bFrames property: The number of B-frames to be used when encoding this layer.
    int
    Get the bitrate property: The average bitrate in bits per second at which to encode the input video when generating this layer.
    Get the frameRate property: The frame rate (in frames per second) at which to encode this layer.
    Get the maxBitrate property: The maximum bitrate (in bits per second), at which the VBV buffer should be assumed to refill.
    Get the slices property: The number of slices to be used when encoding this layer.
    void
    Validates the instance.
    withAdaptiveBFrame(Boolean adaptiveBFrame)
    Set the adaptiveBFrame property: Whether or not adaptive B-frames are to be used when encoding this layer.
    Set the bFrames property: The number of B-frames to be used when encoding this layer.
    withBitrate(int bitrate)
    Set the bitrate property: The average bitrate in bits per second at which to encode the input video when generating this layer.
    withFrameRate(String frameRate)
    Set the frameRate property: The frame rate (in frames per second) at which to encode this layer.
    Set the height property: The height of the output video for this layer.
    Set the label property: The alphanumeric label for this layer, which can be used in multiplexing different video and audio layers, or in naming the output file.
    withMaxBitrate(Integer maxBitrate)
    Set the maxBitrate property: The maximum bitrate (in bits per second), at which the VBV buffer should be assumed to refill.
    Set the slices property: The number of slices to be used when encoding this layer.
    Set the width property: The width of the output video for this layer.

    Methods inherited from class com.azure.resourcemanager.mediaservices.models.Layer

    height, label, width

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • VideoLayer

      public VideoLayer()
      Creates an instance of VideoLayer class.
  • Method Details

    • bitrate

      public int bitrate()
      Get the bitrate property: The average bitrate in bits per second at which to encode the input video when generating this layer. This is a required field.
      Returns:
      the bitrate value.
    • withBitrate

      public VideoLayer withBitrate(int bitrate)
      Set the bitrate property: The average bitrate in bits per second at which to encode the input video when generating this layer. This is a required field.
      Parameters:
      bitrate - the bitrate value to set.
      Returns:
      the VideoLayer object itself.
    • maxBitrate

      public Integer maxBitrate()
      Get the maxBitrate property: The maximum bitrate (in bits per second), at which the VBV buffer should be assumed to refill. If not specified, defaults to the same value as bitrate.
      Returns:
      the maxBitrate value.
    • withMaxBitrate

      public VideoLayer withMaxBitrate(Integer maxBitrate)
      Set the maxBitrate property: The maximum bitrate (in bits per second), at which the VBV buffer should be assumed to refill. If not specified, defaults to the same value as bitrate.
      Parameters:
      maxBitrate - the maxBitrate value to set.
      Returns:
      the VideoLayer object itself.
    • bFrames

      public Integer bFrames()
      Get the bFrames property: The number of B-frames to be used when encoding this layer. If not specified, the encoder chooses an appropriate number based on the video profile and level.
      Returns:
      the bFrames value.
    • withBFrames

      public VideoLayer withBFrames(Integer bFrames)
      Set the bFrames property: The number of B-frames to be used when encoding this layer. If not specified, the encoder chooses an appropriate number based on the video profile and level.
      Parameters:
      bFrames - the bFrames value to set.
      Returns:
      the VideoLayer object itself.
    • frameRate

      public String frameRate()
      Get the frameRate property: The frame rate (in frames per second) at which to encode this layer. The value can be in the form of M/N where M and N are integers (For example, 30000/1001), or in the form of a number (For example, 30, or 29.97). The encoder enforces constraints on allowed frame rates based on the profile and level. If it is not specified, the encoder will use the same frame rate as the input video.
      Returns:
      the frameRate value.
    • withFrameRate

      public VideoLayer withFrameRate(String frameRate)
      Set the frameRate property: The frame rate (in frames per second) at which to encode this layer. The value can be in the form of M/N where M and N are integers (For example, 30000/1001), or in the form of a number (For example, 30, or 29.97). The encoder enforces constraints on allowed frame rates based on the profile and level. If it is not specified, the encoder will use the same frame rate as the input video.
      Parameters:
      frameRate - the frameRate value to set.
      Returns:
      the VideoLayer object itself.
    • slices

      public Integer slices()
      Get the slices property: The number of slices to be used when encoding this layer. If not specified, default is zero, which means that encoder will use a single slice for each frame.
      Returns:
      the slices value.
    • withSlices

      public VideoLayer withSlices(Integer slices)
      Set the slices property: The number of slices to be used when encoding this layer. If not specified, default is zero, which means that encoder will use a single slice for each frame.
      Parameters:
      slices - the slices value to set.
      Returns:
      the VideoLayer object itself.
    • adaptiveBFrame

      public Boolean adaptiveBFrame()
      Get the adaptiveBFrame property: Whether or not adaptive B-frames are to be used when encoding this layer. If not specified, the encoder will turn it on whenever the video profile permits its use.
      Returns:
      the adaptiveBFrame value.
    • withAdaptiveBFrame

      public VideoLayer withAdaptiveBFrame(Boolean adaptiveBFrame)
      Set the adaptiveBFrame property: Whether or not adaptive B-frames are to be used when encoding this layer. If not specified, the encoder will turn it on whenever the video profile permits its use.
      Parameters:
      adaptiveBFrame - the adaptiveBFrame value to set.
      Returns:
      the VideoLayer object itself.
    • withWidth

      public VideoLayer withWidth(String width)
      Set the width property: The width of the output video for this layer. The value can be absolute (in pixels) or relative (in percentage). For example 50% means the output video has half as many pixels in width as the input.
      Overrides:
      withWidth in class Layer
      Parameters:
      width - the width value to set.
      Returns:
      the Layer object itself.
    • withHeight

      public VideoLayer withHeight(String height)
      Set the height property: The height of the output video for this layer. The value can be absolute (in pixels) or relative (in percentage). For example 50% means the output video has half as many pixels in height as the input.
      Overrides:
      withHeight in class Layer
      Parameters:
      height - the height value to set.
      Returns:
      the Layer object itself.
    • withLabel

      public VideoLayer withLabel(String label)
      Set the label property: The alphanumeric label for this layer, which can be used in multiplexing different video and audio layers, or in naming the output file.
      Overrides:
      withLabel in class Layer
      Parameters:
      label - the label value to set.
      Returns:
      the Layer object itself.
    • validate

      public void validate()
      Validates the instance.
      Overrides:
      validate in class Layer
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.