Transcoding options #
Introduced in Nimbra Edge R3.25
This article lists the supported transcoding options in Nimbra Edge.
Limitations #
-
Transcoding only supports transforming common video and audio streams. PIDs other than video and audio may be passed through but the behavior is undefined and may lead to unexpected results such as crashes and corrupted output data.
-
Transcoding MPTS streams is not supported.
-
MPEG-TS PIDs will be reassigned during transcoding.
Video Transcoding #
Video Transcoding is ideally performed on a video node with an attached accelerator. If no accelerator is available, or if the desired settings are incompatible with the available accelerator, transcoding will run on the CPU. Details on supported accelerators can be found on the Transcoding accelerators page.
Video transcoding is a resource intensive task and may affect the performance of other services running on the same node. Ensure adequate testing is performed on an isolated node before deploying to a production node.
| Option | Values | Description |
|---|---|---|
| Codec | H.262, H.264 (AVC), H.265 (HEVC) |
The codec to transcode the video to |
| Bitrate control mode | VBR - Variable, CBR - Constant |
Bitrate control mode |
| Total Bitrate | any bitrate | Total TS Bitrate (Mux rate), Mbps |
| Video Bitrate | none, any bitrate | Video Encoding Bitrate target, Mbps |
| Framerate | none, 25, 29.97, 50, 59.94 |
Framerate |
| Scan | Progressive, Interlaced (Top field first), Interlaced (Bottom field first) |
Scan type |
| Pixel format | none, 4:2:0 8-bit, 4:2:2 8-bit, 4:4:4 8-bit, 4:2:0 10-bit, 4:2:2 10-bit, 4:4:4 10-bit |
Pixel format |
| Overlay | none, any overlay | Applied overlay |
| Resolution scaling | none, 640x480, 1280x720, 1920x1080, 3840x2160 |
Resolution scaling |
| Deinterlacing | none, Deinterlace |
Deinterlacing |
Notes #
Bitrate control mode #
Defaults to VBR - Variable bitrate.
Total Bitrate #
Required when using CBR - Constant bitrate Bitrate control mode.
If the total of video and audio bitrates exceeds the mux rate, it will overshoot the mux rate.
Video Bitrate #
The bitrate value is a target for the encoder, meaning the actual bitrate may differ.
Framerate #
When converting framerate, extra frames will be dropped, or frames will be duplicated to match the target framerate. When not specified, the input framerate is retained.
Note: Framerate conversion is not motion compensated and may be perceived as choppy or unnatural. Not recommended unless halving or doubling framerate.
Scan #
Interlaced encoding is only supported on H.262 and H.264 codecs using CPU encoding.
Pixel format #
H.264 #
- NVIDIA GPUs support 4:2:0 8-bit and 4:4:4 8-bit.
- NETINT Quadra support 4:2:0 8-bit and 4:2:0 10-bit.
H.265 #
- NVIDIA GPUs support 4:2:0 8-bit, 4:2:0 10-bit, 4:4:4 8-bit and 4:4:4 10-bit.
- NETINT Quadra support 4:2:0 8-bit and 4:2:0 10-bit.
Use of any other pixel format will result in CPU encoding.
H.262 #
H.262 encoding only supports 4:2:0 8-bit and 4:2:2 8-bit.
Audio Transcoding #
Audio Transcoding can be performed on any video node, as it does not require an accelerator. Note that transcoding a large number of audio streams may impact the overall performance of the video node.
| Option | Values | Description |
|---|---|---|
| Codec | AAC, MP2, AC3 | The codec to transcode the audio to |
| Bitrate | any bitrate | Bitrate target, kbps |
| AAC Profile | LC, HE, HEv2 | AAC profile |
| AAC Quality | Low, Medium, High | AAC quality |
Notes #
AAC Profile #
Use of the AAC profile parameters requires the AAC codec to be selected. AAC-LC is the default profile.
AAC Quality #
Use of the AAC quality parameters requires the AAC codec to be selected. Quality targets override the bitrate selection.
MP2 #
MP2 audio transcoding only supports the following bitrates, in kbps: 32, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320, 384