Page 111 - Video Coding for Mobile Communications Efficiency, Complexity, and Resilience
P. 111

88                                      Chapter 3.  Video Coding:  Standards


            Such  information  was  originally  included  in  the  VOP  header.  Its  inclusion  in
            the  packet  header  as  well  enables  the  decoder  to  decode  the  packet  without
            reference  to  the  packet  containing  the  VOP  header.  Such  information  can
            also  help  error  detection,  since  it  is  supposed  to  be  the  same  in  all  packets
            belonging to the same  VOP.
               Another  problem  with  VLC  coding  is  that  errors  can  emulate  the  occur-
            rence of start and resynchronization codewords. To reduce this e1ect, MPEG-4
            provides  a  second  resynchronization  approach  called  4xed-interval  synchro-
            nization. In this approach, VOP start codes and packet resynchronization code-
            words appear only at legal /xed-interval locations in the bitstream. Thus, only
            codewords  at  those  legal  locations  will  be  used  by  the  decoder  to  reestablish
            synchronization.

            3.5.8.2  Data Partitioning
            In some cases, an error occurs well before the point in the bitstream at which
            the error is detected. Therefore, when an error is detected, all bits between the
            resynchronization  codeword  prior  to  the  error  detection  point  and  the  resyn-
            chronization  codeword  where  synchronization  is  reestablished  are  typically
            discarded. If the decoder can localize the error more e1ectively, then the per-
            formance  of  error  concealment  techniques  (discussed  in  Chapter  9)  can  be
            improved.
               MPEG-4 uses data partitioning to further improve the ability of the decoder
            to localize errors. In this approach the bitstream between two resynchronization
            codewords is divided into smaller logical units. Each logical unit contains one
            type of information for all MBs belonging to the same packet. For example, in
            Figure 3.16(b) the motion information for all the MBs in the packet is encoded
            /rst, followed by a motion marker and then the texture information for all the
            MBs  in  the  packet.  In  the  non-data-partitioned  case,  if  an  error  occurs  in  the
            texture  information,  then  the  header,  motion,  and  texture  information  will  all
            be  discarded.  In  the  data-partitioned  case,  however,  if  an  error  occurs  in  the
            texture  information,  then  only  the  texture  information  will  be  discarded,  and
            the  motion  marker  will  be  used  to  locate  and  recover  the  header  and  motion
            information. Temporal concealment (described in Chapters 9 and 10) can then
            use this recovered information to conceal the corrupted MBs from the reference
            VOP.

            3.5.8.3  Reversible VLCs

            As  already  discussed,  when  an  error  is  detected  in  the  bitstream,  the  bits
            between  the  surrounding  resynchronization  codewords  are  discarded,  and  the
            decoder  skips  to  the  next  resynchronization  codeword  and  proceeds  decod-
            ing  from  there.  In  MPEG-4,  however,  texture  information  is  encoded  using
   106   107   108   109   110   111   112   113   114   115   116