On Fri, Dec 07, 2018 at 12:06:36PM +0200, Artyom Lebedev wrote: > This fixes bug which prevents from proper muxing-in KLV stream into mpeg-ts. > > mpegtsenc.c:1526 > > char *side_data = NULL; > int stream_id = -1; > > side_data = av_packet_get_side_data(pkt, > AV_PKT_DATA_MPEGTS_STREAM_ID, > &side_data_size); > if (side_data) > stream_id = side_data[0]; > > One-byte stream ID is read from "char *" array to integer making it to > sign-extend which is not correct. Although it writes it correctly to stream, > since it is treated as one byte again, but it fails with some condition > checks, e.g. in mpegtsenc.c:1278: > > if (stream_id == 0xbd) /* asynchronous KLV */ > pts = dts = AV_NOPTS_VALUE; > stream_id value in such case is 0xffffffbd. > > Fix should be changing side_data type from "char *" to "uint8_t *".
looks good. i will apply if no one else rejects. -- Peter (A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
signature.asc
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel