[FFmpeg-devel] [PATCH] lavc: fix h264 parser bug

Lingjiang Fang vacingfang at foxmail.com
Thu May 12 19:22:02 EEST 2022


will give a wrong nalu length(+1) when next nalu start with 00000001
this bug will lead to an padding zero to pps in AVC Sequence header(flv) or in avc1(mpr)

---

 libavcodec/h2645_parse.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/h2645_parse.c b/libavcodec/h2645_parse.c
index 03780680c6..2e941a2bd0 100644
--- a/libavcodec/h2645_parse.c
+++ b/libavcodec/h2645_parse.c
@@ -134,6 +134,10 @@ int ff_h2645_extract_rbsp(const uint8_t *src, int length,
         dst[di++] = src[si++];
 
 nsc:
+    if (src[si-1] == 0) {
+        --di;
+        --si;
+    }
     memset(dst + di, 0, AV_INPUT_BUFFER_PADDING_SIZE);
 
     nal->data = dst;
-- 
2.29.2



More information about the ffmpeg-devel mailing list