Zencoder Encoding Settings: VP6

Product(s)
Zencoder
Role(s)
API Developer
Topic(s)
Encoding Settings
API(s)
Zencoder API

This topic contains details for encoding settings related to VP6 outputs.

vp6_temporal_down_watermark

vp6_temporal_down_watermark:Number

API Versions: V1, V2

Parent: outputs

Default: 20

Valid Values: 0-100

Compatible Job Types: All

Example: 10

Description:

Codec parameter for temporal down watermark percentage. Specifies the percentage of the datarate buffer remaining below which the encoder is allowed to start dropping frames. Only used if vp6_temporal_resampling is enabled. A larger percentage will make it more likely frames will be dropped to achieve the requested video bitrate. The converse is also true.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_temporal_down_watermark": 10
    }
  ]
}

See Also: vp6_temporal_resampling

vp6_temporal_resampling

vp6_temporal_resampling:Boolean

API Versions: V1, V2

Parent: outputs

Default: True when encoding with a low number of bits per pixel. Otherwise, false.

Valid Values: true or false

Compatible Job Types: All

Example: true

Description:

Codec parameter for temporal resampling. In particularly difficult regions, if enabled, the encoder will drop frames to achieve the target the data rate. The value of vp6_temporal_down_watermark determines the percentage of the datarate buffer below which the encoder is enabled to start dropping frames.

Default is true on files using a low number of bits per pixel, and false on files using a high number of bits per pixel. To calculate, divide the video_bitrate in bits per second by width * height * frame_rate. If this number is below 0.07, vp6_temporal_resampling will default to true. For example: 600,000 bits per second (about 600 kbps) divided by (640x480 * 30 fps) = 0.065, so in this case, vp6_temporal_resampling would be on.

Note: when using constant_bitrate mode, this option is forced to true. Adjust vp6_temporal_down_watermark to adjust results.

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

See Also: vp6_temporal_down_watermark

vp6_undershoot_pct

vp6_undershoot_pct:Number

API Versions: V1, V2

Parent: outputs

Default: 90

Valid Values: 0-100

Compatible Job Types: All

Example: 75

Description:

Creates output that targets a slightly lower datarate so there are bits available in the buffer to improve difficult sections. This is a percentage, so valid values are 0-100.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_undershoot_pct": 75
    }
  ]
}

vp6_profile

vp6_profile:String

API Versions: V1, V2

Parent: outputs

Default: vp6e

Valid Values: vp6s or vp6e

Compatible Job Types: All

Example: vp6s

Description:

Either "vp6s" or "vp6e". vp6e is designed for general use. vp6s is optimized for high resolution/datarate video by decreasing decoding complexity, which allows playback on resource constrained machines.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_profile": "vp6s"
    }
  ]
}

vp6_compression_mode

vp6_compression_mode:String

API Versions: V1, V2

Parent: outputs

Default: good

Valid Values: good or best

Compatible Job Types: All

Example: best

Description:

Affects the speed of encoding, compared to the quality of output. "good" balances speed and quality. "best" prioritizes quality over speed, resulting in higher compression but slower encoding. If you set speed to 1 or 2 and use VP6, we will use the "best" mode; otherwise, we use "good".

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_compression_mode": "best"
    }
  ]
}

See Also: speed

vp6_2pass_min_section

vp6_2pass_min_section:Integer

API Versions: V1, V2

Parent: outputs

Default: 40

Valid Values: 0-100

Compatible Job Types: All

Example: 50

Description:

For two-pass VBR encoding, this controls the lowest datarate that the encoder will allow for any section, no matter how easy the section is. This value is used to prevent difficult sections from stealing too many bits from easy sections. Expressed as a percentage, as an integer.

For example, if video_bitrate is set to 1000 kbps and vp6_2_pass_min_section is set to 50, the lowest bitrate of any section will be 500kbps (1000 * 50%).

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_2pass_min_section": 50
    }
  ]
}

See Also: vp6_2pass_max_section

vp6_2pass_max_section

vp6_2pass_max_section:Integer

API Versions: V1, V2

Parent: outputs

Default: 400

Valid Values: A positive integer

Compatible Job Types: All

Example: 250

Description:

For two-pass VBR encoding, this controls the highest datarate that can be streamed, and also the highest datarate that the encoder will allow, no matter how difficult the section is.

For example, if video_bitrate is set to 1000 kbps and vp6_2_pass_max_section is set to 450, the highest bitrate of any section will be 4500kbps (1000 * 450%).

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_2pass_max_section": 250
    }
  ]
}

See Also: vp6_2pass_min_section

vp6_stream_prebuffer

vp6_stream_prebuffer:Number

API Versions: V1, V2

Parent: outputs

Default: 6

Compatible Job Types: All

Example: 2

Description:

Seconds of preload that are necessary before starting playback. The buffer is used to maintain a consistent datarate and minimize playback interruption. Valid for constant_bitrate encoding only.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_stream_prebuffer": 2
    }
  ]
}

See Also: constant_bitrate

vp6_stream_max_buffer

vp6_stream_max_buffer:Number

API Versions: V1, V2

Parent: outputs

Compatible Job Types: All

Example: 5

Description:

The maximum size of the buffer, in seconds. Valid for constant_bitrate encoding only.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_stream_max_buffer": 5
    }
  ]
}

See Also: constant_bitrate

vp6_deinterlace_mode

vp6_deinterlace_mode:String

API Versions: V1, V2

Parent: outputs

Default: adaptive

Valid Values: adaptive, blur, or drop

Compatible Job Types: All

Example: drop

Description:

If deinterlace is enabled, this option sets the deinterlacing filter that will be applied. Valid options are adaptive, blur (for 1:2:1 Blur deinterlacing), and drop (for Drop Field deinterlacing).

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_deinterlace_mode": "drop"
    }
  ]
}

See Also: deinterlace

vp6_denoise_level

vp6_denoise_level:Float

API Versions: V1, V2

Parent: outputs

Default: 0

Valid Values: Decimal between 0 and 1

Compatible Job Types: All

Example: 0.1

Description:

Specifies the noise level of the source. Any value greater than 0 implies a constant and known level of noise within the source. A value of 0 will cause the filter to estimate the noise level, allowing it to vary from frame to frame. Larger noise levels indicate a noisier source resulting in increased removal by the filter, at the cost of sharpness.

{
  "input": "s3://zencodertesting/test.mov",
  "outputs": [
    {
      "vp6_denoise_level": 0.1
    }
  ]
}

See Also: denoise

alpha_transparency

alpha_transparency:Boolean

API Versions: V1, V2

Parent: outputs

Default: false

Valid Values: true or false

Compatible Job Types: All

Example: true

Description:

Enable alpha transparency on a video.

Currently, only the VP6 video_codec supports alpha transparency. Behind the scenes, this setting tells the encoder to use the VP6A codec instead of VP6.

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

constant_bitrate

constant_bitrate:Boolean

API Versions: V1, V2

Parent: outputs

Default: false

Valid Values: true or false

Compatible Job Types: All

Example: true

Description:

Constant bitrate (CBR) encoding is used by some streaming servers and decoders. CBR encoding looks significantly worse than variable bitrate (VBR) encoding at the same bitrate, so only use this setting if you absolutely must. This setting requires that you set a video_bitrate; you cannot use quality to autoselect a bitrate when using the constant_bitrate setting.

Do not use constant_bitrate for HTTP-based delivery, or for downloaded video.

Different video_codecs behave differently with the constant_bitrate setting.

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