Compressed Workflow (Splicing) Function

The description applies to software version 2.11.0 and newer.

In 2.10.53.99 version the ability to process compressed video in embedded switch, Program module, Playout module and Recorder module was added.

Applications

This functionality can be used for:

Splicing into transport streams using splicing technology;

Increase CPU resource utilisation efficiency;

Reduce quality loss due to re-compression.

Features

The distinctive features of the function are the following:

The audio is always re-encoded, which ensures the operation of audio functions (laudness, channel mixing)

This implementation supports “splicing” anywhere, not necessarily in splice points. This is achieved by minimal re-coding of splice points if required.

Full playlist functions are preserved: all transitions, splice points, background, overlapping layers, auto-generation of blocks, skipping no-media, hard-start, etc.

It is possible to cut in not only by scte-35 cue-tones, but by any other conditions (dtmf, external-gpi, time (you can also by picture, but it will require decoding) ) )

All functions of work with additional data are supported (SCTE-35, subtitles (608/708, teletext, dvb) can be inserted).

In those cases where necessary, you can include the usual graphics, logo, open subtitles, insert other streams and files. In this case, will be included transcoding on the fragment where it is required.

Setup

Recorder Module

The Recorder module can now accept a compressed video stream as input data, and if the destination compression settings are compatible with the input data, recording will be performed without decompressing or re-compressing the video.

In this mode, the Recorder module can still record starting from positions not necessarily aligned with keyframes. In this case, the Recorder module will re-encode a small portion of the input video to create a file that starts with a keyframe. The rest of the video will be kept intact.

This mode in the Recorder module allows you to:

record a compressed input stream with minimal CPU usage since no decoding or encoding is required.

avoid loss of video quality due to re-encoding.

The Use Compressed option in the Destination Profiles module Recorder settings allows you to directly use the compressed version of the input stream, if it is available, to record to a file.

Playout Module

The Playout module can now take compressed input video and re-multiplex it according to output settings such as MPEGTS, HLS or RTMP without decoding or re-encoding the video.

Video decoding or re-encoding is only performed if the input video compression settings do not match the configured output settings, allowing mixed pre-compressed and shared workflows to coexist for the same output signal.

The Use Compressed option allows the compressed version of the input stream to be used directly, if it is available, and if there is no format conversion, logo overlay, open subtitles, etc., and the codec matches the codec configured for the output.

Program Module

The programme channel module is now able to keep video frames compressed, both when reading from files and when retrieving them from a background layer. In this mode, video decompression is only performed when necessary, for example for graphic overlay or at clip boundaries when playlist clips are not aligned to keyframe positions in the input compressed files.

The Output Mode option allows you to select one of three options for shaping the output stream given by the Program module to the virtual switcher:

Uncompressed Only - only uncompressed video - this mode is completely similar to the classic variant of operation. Everything is decompressed, graphics are overlaid, and the result is output to the switcher.

Compressed Only - only compressed version is output, if there are no graphics, transformations, etc., the original video from the file is not decompressed at all.

Both - compressed and decompressed videos are generated. The principle of operation is similar to the previous variants. If graphics overlay is disabled, there is no format conversion, etc., and playback is from a file or from a compressed stream, then for such video fragments, in addition to the decompressed stream, the compressed version taken directly from the file/stream will go in parallel.

Control

The function operation can be controlled by the readings of the corresponding counters on the Status tab. It is important to understand that the counters show current “instantaneous” FPS values of buffers for a certain time interval, so they can display values different from the frame rate specified in the module.

Recorder Module

You can control the work of the function on the Status tab: Administrator Control Pnahel→Status→Recoder_N.

Parameter	Description
Decompressed FPS	The frame rate in the decompression block. This field will display a zero value if: Compressed Workflow is active and no decompression is performed. Uncompressed video (shm_pal) is being received.
Encoded FPS	The frame rate in the encoding block. This field will display zero if: Recording is enabled, Compressed Workflow is active and no encoding is in progress. Recording is disabled.

Playout Module

You can control the operation of the function on the Status tab: Administrator Control Pnahel→Status→Playout_N.

Parameter	Description
Decompressed FPS	The frame rate of the decompressed block. This field will display a zero value if: Compressed Workflow is active and no decompression is performed. Uncompressed video (shm_pal) is being received.
Encoded FPS	The frame rate in the encoding block. This field will display a zero value if: Output stream shaping is enabled, Compressed Workflow is active and no encoding is in progress. Output stream generation is disabled.

Program Module

You can control the function operation on the Status tab: Administrator Control Pnahel→Status→Program_N.

The counters show the parameters at the output of the Program module.

Parameter	Description
Compressed FPS	The frame rate of the compressed video buffer. The value shows the FPS of the video that was saved compressed on output. Such video can be used by Playout and Recorder modules directly without recompression. Depending on the settings, mandatory decompression may occur in parallel, in this case the non-zero values Decompressed and Compressed will be present at the same time.
Decompressed FPS	The frame rate of the uncompressed video buffer. A non-zero value indicates that the output is uncompressed video, which was produced: or as a result of decompression of compressed video, or as a result of pass-through of uncompressed video from the background layer.