[FFmpeg-cvslog] avformat/mpegtsenc: correct bitstream check
Gyan Doshi
git at videolan.org
Sat Mar 16 11:00:38 EET 2024
ffmpeg | branch: master | Gyan Doshi <ffmpeg at gyani.pro> | Sat Mar 16 10:22:54 2024 +0530| [f5441e441f9b0d235e49bdccc69e141ccd92e854] | committer: Gyan Doshi
avformat/mpegtsenc: correct bitstream check
8559cce3c3 made the bitstream check generic using a LUT.
However, one of the comparisons which involves a bitwise AND
and equality check is faulty due to operator precedence.
First reported and analysed at
https://github.com/streamlink/streamlink/issues/5876
Fixes #10908
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f5441e441f9b0d235e49bdccc69e141ccd92e854
---
libavformat/mpegtsenc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
index 06e88e9879..b8efc535a7 100644
--- a/libavformat/mpegtsenc.c
+++ b/libavformat/mpegtsenc.c
@@ -2319,7 +2319,7 @@ static int mpegts_check_bitstream(AVFormatContext *s, AVStream *st,
pkt->size >= 5 && AV_RB32(pkt->data) != 0x0000001 &&
(AV_RB24(pkt->data) != 0x000001 ||
(st->codecpar->extradata_size > 0 &&
- (st->codecpar->extradata[0] & e->mask == e->value))))
+ ((st->codecpar->extradata[0] & e->mask) == e->value))))
return ff_stream_add_bitstream_filter(st, e->bsf_name, NULL);
}
return 1;
More information about the ffmpeg-cvslog
mailing list