ZEN Master
...
Introduction to ZEN Master
Improving Stream Resiliency: Error Concealment
4 min
in transmitting media broadcasts, some packet loss is nearly inevitable depending on the network quality and congestion, the amount can vary considerably to prevent packet loss from corrupting the data stream to the point that the downstream decoder will throw errors or crash, zixi provides error concealment, which addresses several common issues using error concealment is recommended if you anticipate significant bandwith fluctations in some or all parts of the network, and there are no downsides to using it aside from adding a about one second for analyzing the stream and making necessary fixes error concealment in zen master error concealment can be applied to any source in zen master when you create or edit it, except for the following zixi push monitor only transcoded file ndi multiviewer there are multiple options under error concealment that can be used individually or together to address different issues error concealment options continuous timeline corrects errors that are related to timeline jumps in the source this mechanism will normalize the timeline by creating a variant of the input (the input is doubled) and normalizing the timeline of the doubled input replace frames if there are frames with cc (continuity counter) errors, it replaces them with skip frames (inserts the last good frame received in place of missing ones) this solves issues such as an ird that loses synchronization when it received broken frames this mechanism also creates a variant of the input (doubling the input) renumber cc the continuity counter is part of the ts encapsulation when there are cc errors in tr101 analysis it means that the counter has a gap due to the lost frames this mechanism can re write the cc counter for the downstream devices, so they will see a continuous increase of the counter delay (ms) the delay that the error concealment adds to the stream in miliseconds error concealment needs to buffer the stream to analyze it one second is a reasonable value, so the default value of 1000 ms should be adequate lower values may cause the error concealment to not be able to fix some of the issues cbr padding a value for the rate at which padding will be added to maintain a specific output transport bitrate this is included because some decoders (or business models) require a constant bitrate, and cbr padding insures that in case of missing data or a vbr source the value you enter should be approximately the overall maximum bitrate, including the video and audio stream for example, if you have a video bitrate at 5000 kbps or that varies from 3000 5000 kbps and audio at 64 kbps, total bitrate will be max 5064 kbps or min 3064 kbps with cbr padding set at 6000 kbps, 6000 kbps is being delivered downstream at all times, ensuring a consistent bitrate pcr interval select the frequency at which program clock reference is inserted into the outputs transport stream this depends on standard used by downstream encoders or decoders atsc encoders expect the pcr interval to be 100 ms, while dvb euro decoders expect a 40 ms interval all of the error concealment mechanisms are executed in the broadcaster error concealment messages will appear in the source details in zen master error concealment message note that editing a source to enable or modify error concealment, or applying fix to an input in broadcaster (see the next section), will cause the stream to be restarted error concealment (fix) in broadcaster error concealment can also be applied to inputs in broadcaster, but in a different way after you have created the source, find it in the sources list expand the action menu and select fix input action menu in the dialog that opens, you will see the error concealment options under stream parameters error concealment option in broadcaster select the options you want (refer to the previous section for explanations of the options) and click ok after you have created the source, find it in the sources list maximizing stream resiliency while error concealment prevents almost all catastrophic stream issues at the viewer end (blank screen, pixelation, gaps in audio), using the zixi protocol (zixi push or pull sources) provides addition stream resilience that will correct most cases of packet loss by adding the additional mechanisms of forward error correction (fec) and automatic repeat request (arq) together, these mechanisms provide three layers of defense against stream corruption maximizing stream resiliency