On Wed, Dec 4, 2019 at 1:04 AM Andriy Gelman <andriy.gel...@gmail.com> wrote:
> From: Andriy Gelman <andriy.gel...@gmail.com> > > Since the nal unit payload is located after the length prefix, there is > no reason to continue reading if there is no nal unit payload remaining. > --- > libavcodec/hevc_mp4toannexb_bsf.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libavcodec/hevc_mp4toannexb_bsf.c > b/libavcodec/hevc_mp4toannexb_bsf.c > index faf516634b2..c0968b63239 100644 > --- a/libavcodec/hevc_mp4toannexb_bsf.c > +++ b/libavcodec/hevc_mp4toannexb_bsf.c > @@ -136,7 +136,7 @@ static int hevc_mp4toannexb_filter(AVBSFContext *ctx, > AVPacket *out) > > bytestream2_init(&gb, in->data, in->size); > > - while (bytestream2_get_bytes_left(&gb)) { > + while (bytestream2_get_bytes_left(&gb) > s->length_size) { > So if there is some data left, you simply ignore it. It could also be argued that this is invalid data. (The packet you are dealing with here is padded btw, so you don't need to worry about reading beyond the end when reading the size field; which actually can't happen anyway, because the safe version of the bytestream API is used throughout.) > uint32_t nalu_size = 0; > int nalu_type; > int is_irap, add_extradata, extra_size, prev_size; > -- > 2.24.0 > _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".