[SCM] libav/experimental: h264: accept rbsp_trailing longer than 1 byte

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 15:48:01 UTC 2013


The following commit has been merged in the experimental branch:
commit c4da83fb0fe3e6c4475b6e9c48c2cc82c1c96db1
Author: Loren Merritt <lorenm at u.washington.edu>
Date:   Mon Jun 12 09:30:17 2006 +0000

    h264: accept rbsp_trailing longer than 1 byte
    
    Originally committed as revision 5467 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 99172a1..2047d5f 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -7973,7 +7973,8 @@ static int decode_nal_units(H264Context *h, uint8_t *buf, int buf_size){
       }
 
         ptr= decode_nal(h, buf + buf_index, &dst_length, &consumed, h->is_avc ? nalsize : buf_size - buf_index);
-        if(ptr[dst_length - 1] == 0) dst_length--;
+        while(ptr[dst_length - 1] == 0 && dst_length > 1)
+            dst_length--;
         bit_length= 8*dst_length - decode_rbsp_trailing(ptr + dst_length - 1);
 
         if(s->avctx->debug&FF_DEBUG_STARTCODE){

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list