Encoding Settings

This topic provides tables of all encoding settings with links to detailed guides to each setting.

Job

Setting Default Description
api_key none The API key for your Zencoder account.
dynamic_profile_options none With CAE the number of outputs and parameters of such outputs may change dynamically for each input file. The dynamic_profile_options settings define the way renditions should be created.
generate_dynamic_profile false With CAE the number of outputs and parameters of such outputs may change dynamically for each input file.
input none An HTTP, S3, Cloud Files, GCS, FTP, FTPS, SFTP, Azure, or Aspera URL where we can download file to transcode.
outputs none An array or hash of output settings.
region us The region where a file is processed: US, Europe, Asia, or Australia.
test false Enable test mode ("Integration Mode") for a job.
private false Enable privacy mode for a job.
download_connections 5 Utilize multiple, simultaneous connections for download acceleration (in some circumstances).
pass_through none Optional information to store alongside this job.
mock false Send a mocked job request.
grouping none A report grouping for this job.
aspera_transfer_policy fair How to allocate available bandwidth for Aspera file transfers.
transfer_minimum_rate 1000 A targeted rate in Kbps for data transfer minimums.
transfer_maximum_rate 250000 A targeted rate in Kbps for data transfer maximums.
expected_md5_checksum none The expected checksum of the input file.
credentials none References saved credentials by a nickname.

General Output Settings

Setting Default Description
type standard The type of file to output.
label none An optional label for this output.
dynamic_profile_rendition none The dynamic_profile_rendition setting specifies that this Output should use settings from the dynamically generated CAE profile, and specifically which rendition of the profile to use settings from.
url none A S3, Cloud Files, GCS, FTP, FTPS, SFTP, Aspera, Azure, HTTP, or RTMP URL where we'll put the transcoded file.
secondary_url none A S3, Cloud Files, GCS, FTP, FTPS, SFTP, HTTP, RTMP, Aspera, or Azure URL where we'll put the transcoded file.
base_url none A base S3, Cloud Files, GCS, FTP, FTPS, SFTP, Azure, or Aspera directory URL where we'll put the transcoded file, without a filename.
filename none The filename of a finished file.
package_filename none The filename of a packaged output.
package_format none Zip/packaging format to use for the output file(s).
device_profile none A device profile to use for mobile device compatibility.
strict false Enable strict mode.
skip_video false Do not output a video track.
skip_audio false Do not output an audio track.
source none References a label on another job and uses the video created by that output for processing instead of the input file.
credentials none References saved credentials by a nickname.
generate_md5_checksum false Generate an MD5 checksum of the output file.
parallel_upload_limit 30 for S3, 10 for all other destinations. The maximum number of simultaneous uploads to attempt.
headers none HTTP headers to send with your file when we upload it.

CAE Settings

Setting Default Description
min_renditions 1 The minimum number of renditions to generate.
The maximum number of renditions to generate 8 The maximum number of renditions to generate.
min_resolution 192x108 Minimum resolution to be considered for the ladder.
max_resolution source resolution Maximum resolution to be considered for the ladder.
max_frame_rate 30 Maximum frame rate that can be used.
keyframe_rate 0.5 Keyframe rate. This value can be either 0.5 or 1. For SSAI enabled content, this value needs to be 1.
fixed_frame_rate true Instructs generator to use same frame rate across all renditions. If false, H.264 baseline profile renditions at resolutions below 360p will be assigned halved frame rate.
min_bitrate 200 Minimum bitrate [kbps] that can be used.
max_bitrate 15000 Maximum bitrate [kbps] that can be used.
max_first_rendition_bitrate 400 Maximum bitrate [kbps] that can be used for first rendition.
min_granularity 30 Minimum relative change in bitrate between renditions.
max_granularity 90 Maximum relative change in bitrate between renditions.
video_codec h264 Video codec to use.
bitrate_cap_to_bitrate_ratio 1.3 Ratio of maximum bit rate to average bitrate to be used for VBR encoding.
buffer_size_to_bitrate_ratio 2.0 Ratio of decoder buffer size to average bitrate to be used for VBR encoding.
bitrate_cap_offset 64 Constant added when computing maximum bitrate.
buffer_size_offset 85 Constant added when computing VBV buffer size.
quality_rate_tune 0 Quality vs rate tuning parameter.
select_baseline_profile_configuration true At least one rendition used in the profile will be baseline profile.
video_configurations none An array of structures describing resolutions, frame rates and associated codec settings that should be preferentially or mandatorily generated as part of the CAE encoding.

Format and Codecs

Setting Default Description
format Determined by the output filename and then video or audio codec. Otherwise: mp4 (for standard outputs); ts (for segmented outputs). The output format to use.
video_codec Determined by the format, profile, or audio_codec. h264 if none are provided. The video codec to use.
audio_codec Determined by the format, profile, or video_codec. aac if none are provided. The audio codec to use.

Resolution

Setting Default Description
size none The resolution of the output video (WxH, in pixels).
width none The maximum width of the output video (in pixels).
height none The maximum height of the output video (in pixels).
upscale false Upscale the output if the input is smaller than the target output resolution.
aspect_mode preserve What to do when aspect ratio of input file does not match the target width/height aspect ratio.
sample_aspect_ratio none The sample (pixel) aspect ratio to be used for the output video. The size, width, height, and aspect_mode mode options all refer to the encoded pixel dimensions, not the display dimensions.
force_interlace_headers false Some decoders ask for interlaced content, but will play progressive content just fine. This setting will add "interlaced" headers to the metadata of progressive content, to make it look like it is actually interlaced.

Rate Control

Setting Default Description
quality 3 Autoselect the best video bitrate to to match a target visual quality.
video_bitrate none A target video bitrate in kbps. Not necessary if you select a quality setting, unless you want to target a specific bitrate.
audio_quality 3 Autoselect the best audio bitrate to to match a target sound quality.
audio_bitrate none A target audio bitrate in kbps. Not necessary if you select a audio_quality setting, unless you want to target a specific bitrate.
max_video_bitrate none A maximum average bitrate.
speed 3 A target transcoding speed. Slower encoding generally allows for more advanced compression.
decoder_bitrate_cap none Max bitrate fed to decoder buffer. Typically used for video intended for streaming, or for targeting specific devices (e.g. Blu-Ray).
decoder_buffer_size none Size of the decoder buffer, used in conjunction with bitrate_cap.
one_pass false Force one-pass encoding.
audio_constant_bitrate false Enable constant bitrate mode for audio if possible.

Frame Rate

Setting Default Description
frame_rate The original (input) frame rate. The frame rate to use.
max_frame_rate none The maximum frame rate to use.
decimate none Reduce the input frame rate by a divisor.
keyframe_interval 250 The maximum number of frames between each keyframe. For H.264 video, keyframes are IDR frames.
keyframe_rate keyframe_interval of 250 The number of keyframes per second.
fixed_keyframe_interval false Enable fixed keyframe interval mode (VP6, VP8, VP9 and H.264 only).
forced_keyframe_interval none Force keyframes at the specified interval (H.264 only).
forced_keyframe_rate none Specify the number of keyframes per-second, taking frame rate into account (H.264 only).
generate_frame_index false Generate a video frame index file.
frame_index_filename none Override the default filename for the frame index when generate_frame_index is enabled.

Video

Setting Default Description
video_reference_frames 3 A number of reference frames to use (H.264, HEVC).
video_codec_profile H.264: baseline, HEVC: main, VP9: 0 The video codec profile to use (H.264, HEVC, VP9).
video_codec_level Automatically calculated using a level chart based on the output video. See H.264-levels, HEVC-levels The video codec level to use (H.264, HEVC).
video_bframes 0 The maximum number of consecutive B-frames (H.264, HEVC)
color_metadata preserve Preserve or discard color metadata information from the input in the output video.

Audio

Setting Default Description
audio_sample_rate none The audio sample rate, in Hz.
max_audio_sample_rate none The max audio sample rate, in Hz.
audio_channels 1 if the original file is mono; otherwise, 2. The number of audio channels: 1 or 2.
audio_bit_depth 16 The number of bits per sample: 16, 24, 32.
audio_language none Describes the language of the audio track.
input_audio_channels none Sets the input audio tracks-to-channels layout..
output_audio_channels none Sets the output audio channel layout.

Thumbnails

Setting Default Description
thumbnails none Capture thumbnails for a given video.
label none A label to identify each set of thumbnail groups.
format png The format of the thumbnail image.
number none A number of thumbnails, evenly-spaced.
start_at_first_frame false Start generating the thumbnails starting at the first frame.
interval none Take thumbnails at an even interval, in seconds.
interval_in_frames none Take thumbnails at an even interval, in frames.
times none An array of times, in seconds, at which to grab a thumbnail.
aspect_mode preserve How to handle a thumbnail width/height that differs from the aspect ratio of the input file.
size none Thumbnail resolution as WxH.
width none The maximum width of the thumbnail (in pixels).
height none The maximum height of the thumbnail (in pixels).
base_url none A base S3, Cloud Files, GCS, FTP, FTPS, or SFTP directory URL where we'll place the thumbnails, without a filename.
prefix frame Prefix for thumbnail filenames.
filename frame Interpolated thumbnail filename.
public false Make the output publicly readable on S3.
access_control none Fine-grained access control rules for files sent to S3.
grantee none Set the grantee for fine-grained S3 access control permissions.
permission none Set the permission for a grantee when using fine-grained access control.
rrs false Amazon S3's Reduced Redundancy Storage.
headers none HTTP headers to send with your thumbnails when we upload them.
credentials none References saved credentials by a nickname.
parallel_upload_limit 30 for S3, 10 for all other destinations. The maximum number of simultaneous uploads to attempt.

Watermarks

Setting Default Description
watermarks none Add one or more watermarks to an output video.
url none The URL of a remote image file to use as a watermark.
x -10 Where to place a watermark, on the x axis.
y -10 Where to place a watermark, on the y axis.
width Scale to height, or original image width. The scaled width of a watermark.
height Scale to width, or original image height. The scaled height of a watermark.
origin content Which part of the output to base the watermark position on.
opacity 1.0 Make the watermark transparent.

Captions

Setting Default Description
caption_url none URL to an SCC, DFXP, or SAMI caption file to include in the output.
skip_captions false Don't add or pass through captions to the output file.

Video Processing

Setting Default Description
rotate automatically detected Rotate a video.
deinterlace detect Deinterlace input video.
sharpen false Apply a sharpen filter.
denoise none Apply denoise filter.
autolevel false Apply a color auto-level filter.
deblock false Apply deblock filter.

Audio Processing

Setting Default Description
audio_gain none Apply a gain amount to the audio, in dB.
audio_normalize false Normalize audio to 0dB.
audio_pre_normalize false Normalize the audio before applying expansion or compression effects.
audio_post_normalize false Normalize the audio after applying expansion or compression effects.
audio_bass none Increase or decrease the amount of bass in the audio.
audio_treble none Increase or decrease the amount of treble in the audio.
audio_highpass none Apply a high-pass filter to the audio.
audio_lowpass none Apply a low-pass filter to the audio.
audio_compression_ratio none Compress the dynamic range of the audio.
audio_compression_threshold -20 Compress the dynamic range of the audio.
audio_expansion_ratio none Expand the dynamic range of the audio.
audio_expansion_threshold -35 Expand the dynamic range of the audio.
audio_fade none Apply fade-in and fade-out effects to the audio.
audio_fade_in none Apply a fade-in effect to the audio.
audio_loudness_level none Adjust the loudness level of the audio.
audio_karaoke_mode false Apply a karaoke effect to the audio.

Clips

Setting Default Description
start_clip none Encode only a portion of the input file by setting a custom start time.
clip_length none Encode only a portion of the input file by setting a custom clip length.

S3 Settings

Setting Default Description
public false Make the output publicly readable on S3.
rrs false Amazon S3's Reduced Redundancy Storage.
access_control none Fine-grained access control rules for files sent to S3.
grantee none Set the grantee for fine-grained S3 access_control permissions.
permission none Set the permission for a grantee when using fine-grained access_control.

Notifications

Setting Default Description
notifications none Be notified when a job or output is complete.
url none Be notified when a job or output is complete.
format none A format and content type for notifications.
headers none Headers to pass along on HTTP notifications.

Conditional Outputs

Setting Default Description
min_size none Skip output if the source dimensions are smaller than the given dimensions.
max_size none Skip output if the source dimensions are larger than the given dimensions.
min_duration none Skip output if the source duration is shorter than the given duration, in seconds.
max_duration none Skip output if the source duration is longer than the given duration, in seconds.
min_audio_bitrate none Skip output if the source audio bitrate is less than the specified bitrate (in kbps).
max_audio_bitrate none Skip output if the source audio bitrate is greater than the specified bitrate (in kbps).
min_video_bitrate none Skip output if the source video bitrate is less than the specified bitrate (in kbps).
max_video_bitrate none Skip output if the source video bitrate is greater than the specified bitrate (in kbps).
require_audio false Skip output if the source file does not include an audio track.
require_video false Skip output if the source file does not include a video track.

Segmented Streaming

Setting Default Description
streaming_delivery_format none Sets the format/protocol configuration for a streamable output.
streaming_delivery_profile live Sets the specific profile of a streaming delivery format.
playlist_format none Sets the format for a playlist output.
segment_seconds 10 Sets the maximum duration of each segment in a segmented output.
alternate_audio none Provides a set of alternate audio streams for HLS playlists.
streams none Provides a list of stream info to be reformatted as a playlist
path none Specifies the path to a stream manifest file
bandwidth none Specifies the bandwidth of a playlist stream
resolution none Specifies the resolution of a playlist stream
codecs none Specifies the codecs used in a playlist stream
audio none Specifies an alternate audio track for the playlist.
segment_image_url none An image to display on audio-only segments
segment_video_snapshots false When segmenting a video file into audio-only segments, take snapshots of the video as thumbnails for each segment.
source none Specifies the source media for a playlist stream
max_hls_protocol_version 3 for Live outputs, 5 for sample AES encryption; otherwise, 2. The maximum HLS protocol to use.
hls_optimized_ts true Optimize TS segment files for HTTP Live Streaming on iOS.
prepare_for_segmenting none Include captions and keyframe timing for segmenting.
smil_base_url none Add <meta base="smil_base_url_value"/> to the <head> section of an SMIL playlist.
byte_range_segmenting false Configures HLS segmenting to produce a single output file rather than one file per segment.
generate_keyframe_manifest false Generates an HLS keyframe (I-frame) manifest which is required for fast-forward and reverse playback.
keyframe_manifest_filename iframe_index.m3u8 Override the default filename for the HLS keyframe manifest.
allow_skipped_sources false Ignore sources that are conditional outputs which have been skipped.

Encryption

Setting Default Description
encryption_method none Set the encryption method to use for encrypting.
encryption_key none Set a single encryption key to use rather than having Zencoder generate one
encryption_key_url none Set a URL to a single encryption key to use rather than having Zencoder generate one
encryption_key_rotation_period none Rotate to a new encryption key after a number of segments
encryption_key_url_prefix none Prepend key URLs with the passed string
encryption_iv none Set an initialization vector to use when encrypting
encryption_password none Sets a password to use for generating an initialization vector

Decryption

Setting Default Description
decryption_method aes-128-cbc (if decryption_key or decryption_key_url are set) Set the decryption algorithm to use.
decryption_key none Set the decryption key to use.
decryption_key_url none The URL of a decryption key file to use.
decryption_password none The password used in combination with the key to decrypt the input file.

DRM

Setting Default Description
drm {} Hash of DRM options
method none The Digital Rights Management (DRM) method used to protect content.
provider none The Digital Rights Management (DRM) provider used.
key_id none Identifier of the key to use.
key_guid none Identifier of the key to use.
user_key none The user key from the DRM provider.
server_key none The server key from the DRM provider.
media_id none Unique identifier for the media.
content_id none Unique identifier for the content.
content_key none Unique identifier for the content.
schemas none Information about DRM providers when using Common Encryption.
type none Provider type for this DRM schema.
license_acquisition_url none License acquisition URL for Playready CENC DRM schema.

H.264

Setting Default Description
h264_reference_frames 3 A number of reference frames to use in H.264 video.
h264_profile baseline> The H.264 profile to use.
h264_level Automatically calculated using H.264 level chart based on the output video. The H.264 level to use.
h264_bframes 0 The maximum number of consecutive B-frames.
crf none Bitrate control setting.

HDR10

Setting Default Description
master_display.red.x none Color volume x setting for red.
master_display.red.y none Color volume y setting for red.
master_display.green.x none. Color volume x setting for green.
master_display.green.y none. Color volume y setting for green.
master_display.blue.x none. Color volume x setting for blue.
master_display.blue.y none. Color volume y setting for blue.
master_display.white_point.x none. Color volume x setting for white point.
master_display.white_point.y none. Color volume y setting for white point.
master_display.luminance.min none. Minimum luminance in nits or candelas per square meter (cd/m2).
master_display.luminance.max none. Maximum luminance in nits or candelas per square meter (cd/m2).
max_content_light_level none. Maximum light level for the content as a whole nits or candelas per square meter (cd/m2) - integer values.
max_frame_average_light_level none. Maximum average light level for content frames nits or candelas per square meter (cd/m2) - integer values. Although values up to 10000 are allowed, values in the 100-200 range will generally produce the best results.

FLV

Setting Default Description
cue_points none Add event or navigation cue points to a FLV video.
type none A cue point type.
time none A cue point time, in seconds.
name none A cue point name.
data none Cue point data.

VP6

Setting Default Description
vp6_temporal_down_watermark 20 VP6 temporal down watermark percentage.
vp6_temporal_resampling True when encoding with a low number of bits per pixel. Otherwise, false. Enable or disable VP6 temporal resampling.
vp6_undershoot_pct 90 Target a slightly lower datarate.
vp6_profile vp6e VP6 profile: vp6s or vp6e.
vp6_compression_mode good VP6 compression mode: good or best.
vp6_2pass_min_section 40 For two-pass VBR encoding, the lowest datarate that the encoder will allow.
vp6_2pass_max_section 400 For two-pass VBR encoding, the highest datarate that the encoder will allow.
vp6_stream_prebuffer 6 Seconds of preload that are necessary before starting playback.
vp6_stream_max_buffer none Maximum decoder buffer size
vp6_deinterlace_mode adaptive Deinterlace mode for VP6
vp6_denoise_level 0 Denoise level for VP6
alpha_transparency false Enable alpha transparency. Currently, only supported by VP6.
constant_bitrate false Use constant bitrate (CBR) encoding.

MP4

Setting Default Description
hint false Enable hinting of MP4 files for RTP/RTSP.
mtu_size 1450 Set MTU size for MP4 hinting.

AAC

Setting Default Description
max_aac_profile he-aac What is the most advanced (compressed) AAC profile to allow?
force_aac_profile none Force the use of a particular AAC profile, rather than letting Zencoder choose the best profile for the bitrate.

Broadcast

Setting Default Description
video_codec_preset none Video encoding preset to allow compatibility with specific industry standards.
format_preset none Format preset to allow compatibility with specific industry standards.
ts_muxrate none The maximum rate in kbps that the transport stream can be muxed. Used with the ts format only.
ts_pmt_pid none Override the packet id of the Program Map Table.
ts_video_pid none Override the packet id of video data.
ts_audio_pid none Override the packet id of audio data.
ts_pcr_pid none Override the packet id of the Program Clock Reference.
ts_cbr false Create CBR output by stuffing packets at the transport stream layer
lossless_video false Enables lossless video encoding if supported by the video codec.

Aspera

Setting Default Description
aspera_transfer_policy fair How to allocate available bandwidth for Aspera file transfers.
transfer_minimum_rate 1000 A targeted rate in Kbps for data transfer minimums.
transfer_maximum_rate 250000 A targeted rate in Kbps for data transfer maximums.

Transmuxing

Setting Default Description
copy_video false Copy the video track of the input file
copy_audio false Copy the audio track of the input file