diff mbox series

[FFmpeg-devel,51/57] avcodec/h261dec: Simplify decoding GOB header

Message ID GV1P250MB0737FCEA0E40CE923B029F448FC02@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM
State New
Headers show
Series [FFmpeg-devel,01/57] avcodec/vc1: Combine identical checks | expand

Commit Message

Andreas Rheinhardt June 12, 2024, 1:48 p.m. UTC
h261_resync() can be completely removed, because
h261_decode_gob_header() checks for a GOB header itself if
gob_start_code_skipped is zero.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/h261dec.c | 27 +--------------------------
 1 file changed, 1 insertion(+), 26 deletions(-)
diff mbox series

Patch

diff --git a/libavcodec/h261dec.c b/libavcodec/h261dec.c
index 2038afc591..f1c1e1a48a 100644
--- a/libavcodec/h261dec.c
+++ b/libavcodec/h261dec.c
@@ -165,31 +165,6 @@  static int h261_decode_gob_header(H261DecContext *h)
     return 0;
 }
 
-/**
- * Decode the group of blocks / video packet header.
- * @return <0 if no resync found
- */
-static int h261_resync(H261DecContext *h)
-{
-    MpegEncContext *const s = &h->s;
-    int ret;
-
-    if (h->gob_start_code_skipped) {
-        ret = h261_decode_gob_header(h);
-        if (ret >= 0)
-            return 0;
-    } else {
-        if (show_bits(&s->gb, 15) == 0) {
-            ret = h261_decode_gob_header(h);
-            if (ret >= 0)
-                return 0;
-        }
-        // OK, it is not where it is supposed to be ...
-    }
-
-    return -1;
-}
-
 /**
  * Decode skipped macroblocks.
  * @return 0
@@ -626,7 +601,7 @@  static int h261_decode_frame(AVCodecContext *avctx, AVFrame *pict,
     s->mb_y = 0;
 
     while (h->gob_number < (s->mb_height == 18 ? 12 : 5)) {
-        if (h261_resync(h) < 0)
+        if (h261_decode_gob_header(h) < 0)
             break;
         h261_decode_gob(h);
     }