Creating h.264 files that will work with my SX video server

January 13, 2021

Applies to

  • SX series video servers

Answer

Creating h.264 files can be a tedious process because of the number of variables that can be adjusted. In this guide, we will discuss the implications of and best settings for some of these variables. Broadly speaking, the remaining variables can be left with their default values.

Required Settings

These settings MUST be set to the specified values, or the h.264 file will fail Cablecast's file validation process.

Setting NameRequired ValueNotesFile Extension.mp4 or .mov ProfileMain or High Video Codech.264 Video Resolution

must match one of the server's supported resolution

see compatible resolutions tables below

Video Frame Rate

must match one of the server's supported resolution

see compatible resolutions tables below

Must be constant frame rate

files with variable frame rates may not play correctly and may be rejected by the server

Audio CodecAAC-LC Audio Sample Rate48 kHz Channels2 (Stereo)Any other number of channels (0, 1, 4...) is unsupported for h.264 on SX servers.

Server Video ResolutionDetailsNTSC 720x486(480), 4:3 or 16:9 aspect ratio, 29.97 frames per second1080i1920x1080, 16:9 aspect ratio, 29.97 frames per second720p1280x720, 16:9 aspect ratio, 59.94 frames per second1080p1920x1080, 16:9 aspect ratio, 59.94 frames per second

* HD file resolutions are only supported on HD servers.

Suggested Settings

The following settings may improve the quality of video that you generate.

Setting NameValueNotesScan ModeInterlaced for Interlaced outpute.g. If you are playing 1080i content on a 1080i channel, keeping the file interlaced will provide the best quality.Entropy EncodingCABAC Video BitrateFor SD content: 1-2 mb/sDepends on content, sports content will likely benefit from a higher bitrate.

For HD content:
2-5 mb/s

GOP sizes

15 frames

Favor GOP sizes smaller than one second (N<30 in 29.97, N<60 in 59.94, optimal at ~15).

Additional Information

A small collection of encoding profiles has been provided by our customers. See https://github.com/BDizzle/sxProfiles for more info.