Video Processing Settings

This topic contains details for encoding settings related to video processing.

rotate

rotate:Integer

API Versions: V2

Parent: outputs

Default: automatically detected

Valid Values: 0, 90, 180, 270. Leave unset if you want auto-rotation.

Compatible Job Types: vod

Example: 180

Description:

Explicitly rotate a movie. By default, Zencoder will automatically rotate rotated content (including rotated iPhone video), but you can also manually rotate a movie. If you set "rotate" to 0, we will not auto-rotate, so leave this option unset if you want auto-rotation.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "rotate": 180
    }
  ]
}

flip

flip:String

API Versions: V2

Parent: outputs

Valid Values: horizontal or vertical

Compatible Job Types: vod

Example: horizontal

Description:

Flip a video vertically or horizontally. Valid options are 'vertical' and 'horizontal'. If flip is combined with rotate the video will flip first and then rotate.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "flip": "vertical"
    }
  ]
}

deinterlace

deinterlace:String

API Versions: V2

Parent: outputs

Default: detect

Valid Values: on, off, detect

Compatible Job Types: vod

Example: on

Description:

Determines whether or not to apply a deinterlacing filter. Default is "detect" – if the input file is detected as interlaced, it will be deinterlaced. Set this to "on" to force deinterlacing (which will reduce quality if the input is not interlaced), or "off" to avoid deinterlacing.

Note that Zencoder makes this determination based on file metadata. If interlaced content is re-encoded with an encoder that does not deinterlace the content, or flag it as interlaced, we may not be able to auto-deinterlace the content in "detect" mode.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "deinterlace": "on"
    }
  ]
}

deinterlace_mode

deinterlace_mode:String

API Versions: V2

Parent: outputs

Default: frame-to-frame

Valid Values: frame-to-frame | field-to-frame

Compatible Job Types: vod

Example: field-to-frame

Description:

If not included or set to frame-to-frame, Zencoder outputs will match the framerate of the input file. If set to field-to-frame, Zencoder will double the framerate of the input file for the output. If you manually set framerate to double the framerate of the input file, Zencoder will automatically set deinterlace_mode to field-to-frame and double the framerate for the output

{
  "input":"url to interlaced content",
  "outputs": [
    {
      // example SD output with same fps as source
      "height": 480,
      "deinterlace_mode": "frame-to-frame" // optional as this is default.
    },
    {
      //example FHD output with 2x framerate
      "height": 1080,
      "deinterlace_mode": "field-to-frame"
    },
    {
      //example explicit 2x frame rate given by user (assuming source fps=25)
      // we will automatically switch to "field-to-frame" mode.
      "frame_rate": 50
    }
  ]
}

sharpen

sharpen:Boolean

API Versions: V2

Parent: outputs

Default: false

Valid Values: true or false

Compatible Job Types: vod

Example: true

Description:

Apply a sharpen filter to the video.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "sharpen": true
    }
  ]
}

denoise

denoise:String

API Versions: V2

Parent: outputs

Valid Values: weak, medium, strong, or strongest

Compatible Job Types: vod

Example: weak

Description:

Apply a denoise filter to the video.

Valid options are 'weak', 'medium', 'strong', and 'strongest'. Typically reduces file size by 5%-20%, depending on denoising level, bitrate, and source video. Any denoising slows down encoding by about 20%.

Values above 'weak' should be used carefully, though animation can sometimes handle a high level of denoising.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "denoise": "weak"
    }
  ]
}

autolevel

autolevel:Boolean

API Versions: V2

Parent: outputs

Default: false

Valid Values: true or false

Compatible Job Types: vod

Example: true

Description:

Apply a color auto-level filter to the video. Note that this filter may cause unexpected color problems in some videos, so use carefully.

The VP6 video_codec does not support the autolevel option.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "autolevel": true
    }
  ]
}

deblock

deblock:Boolean

API Versions: V2

Parent: outputs

Default: false

Valid Values: true or false

Compatible Job Types: vod

Example: true

Description:

Apply a deblocking filter to the video.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "deblock": true
    }
  ]
}

video_format_conversion

video_format_conversion:String

API Versions: V2

Parent: outputs

Default: standard

Valid Values: standard or frameformer

Example: frameformer

Description:

This parameter specifies format conversion technology that will be used for the following operations:

The choice standard implies the use of in-house conversion technology.

The choice frameformer will enable the advanced video processing from InSync Technologies. This technology will be required to be enabled per account, and it is a premium technology with additional cost. For more information contact your Customer Success Manager.

{
  "frame_rate": 30,
  "video_format_conversion": "frameformer"
}

video_color_format

video_color_format:String

API Versions: V2

Parent: outputs

Valid Values:

video_color_format Color Primaries Transfer Characteristics Matrix Coefficients color_range
sdr bt709 (1) bt709 (1) bt709 (1) Limited (default)
hlg10 bt2020 (9) arib-std-b67 (18) bt2020nc (9) Limited (default)
wcg / bt2020 bt2020 (9) bt2020 (14) bt2020nc (9) Limited
pq10 / hdr10 / dv8.1 bt2020 (9) smpte2084 (16) bt2020nc (9) Limited
dv5 unknown (2) unknown (2) unknown (2) Full

Description:

This parameter converts output video colors to the given video_color_format.

  • To convert colors from one format to another, you need:
    • Valid metadata to be present in the input media.
    • color_conversion feature flag enabled for the account.
  • For HDR formats (hlg10, pq10, hdr10, dv8.1 and dv5). It is required to use "video_codec" : "hevc" and "video_bit_depth": 10
  • Refer to HDR guide for further details on HDR formats. See Supported HDR Video Formats for more information.

Example:

  • Covert to sdr:
      {
      "video_codec": "h264",
      "video_color_format": "sdr"
    }
  • Covert to pq10:
          {
            "video_codec": "hevc",
            "video_bit_depth": 10,
            "video_color_format": "pq10"
          }