changeset 9637:f1dc62781766 libavcodec

Use skip_bits_long() for large skips This fixes ogg/theora on ARM (more generally the A32 bitstream reader)
author conrad
date Thu, 14 May 2009 00:02:07 +0000
parents 8e95c7402d1a
children cbd09311872d
files mpc7.c nellymoserdec.c vp3.c
diffstat 3 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/mpc7.c	Wed May 13 22:57:30 2009 +0000
+++ b/mpc7.c	Thu May 14 00:02:07 2009 +0000
@@ -78,7 +78,7 @@
         av_log(avctx, AV_LOG_ERROR, "Too many bands: %i\n", c->maxbands);
         return -1;
     }
-    skip_bits(&gb, 88);
+    skip_bits_long(&gb, 88);
     c->gapless = get_bits1(&gb);
     c->lastframelen = get_bits(&gb, 11);
     av_log(avctx, AV_LOG_DEBUG, "IS: %d, MSS: %d, TG: %d, LFL: %d, bands: %d\n",
--- a/nellymoserdec.c	Wed May 13 22:57:30 2009 +0000
+++ b/nellymoserdec.c	Thu May 14 00:02:07 2009 +0000
@@ -103,7 +103,7 @@
         aptr = audio + i * NELLY_BUF_LEN;
 
         init_get_bits(&s->gb, block, NELLY_BLOCK_LEN * 8);
-        skip_bits(&s->gb, NELLY_HEADER_BITS + i*NELLY_DETAIL_BITS);
+        skip_bits_long(&s->gb, NELLY_HEADER_BITS + i*NELLY_DETAIL_BITS);
 
         for (j = 0; j < NELLY_FILL_LEN; j++) {
             if (bits[j] <= 0) {
--- a/vp3.c	Wed May 13 22:57:30 2009 +0000
+++ b/vp3.c	Thu May 14 00:02:07 2009 +0000
@@ -2243,7 +2243,7 @@
      }
 
     // FIXME: Check for this as well.
-    skip_bits(&gb, 6*8); /* "theora" */
+    skip_bits_long(&gb, 6*8); /* "theora" */
 
     switch(ptype)
     {