When data separation is used, the source encoder arranges different types of separation in three different buffers, and the size of the split must be adjusted to ensure that it is smaller than the MTU length, therefore, it is an encoder rather than nal to achieve data segmentation. On the decoder, all shards are used for information reconstruction. In this way, if the information in or between frames is lost, the valid frame header information can still be used to improve the error hiding efficiency, that is, the valid macro block type and motion vector, the basic features of macro blocks are retained, so that a fairly high information reconstruction quality is still available, and only detailed information is lost.
If the profile/Level Rules allow unordered slice (FMO), I frames can be transmitted in random order (in board mode, rectangular mode, etc, the coded slice and a split slice data in frames B and P can be transmitted in any order. Slice data with the same slice_id takes precedence over B and B takes precedence over C.
If the disordering slice (FMO) is not allowed in profile/level, The vcl nalu sequence of the I frame should be transmitted in the ascending order of the MB address (Grating Scan. The coded and a split slice data of B and P frames are transmitted sequentially according to the MB address increments (raster scan. Similarly, slice data with the same slice_id takes precedence over B and B takes precedence over C.