> Hi
>
> I needed to be able to use the write_data_type callback when reading data
> from the mpegts muxer, to make my application aware of key frames in the data
> so I added support. I used the matroska implementation as a reference.
>
> If this is accepted, I will format this as a proper patch after feedback.
>
> Regards
>
> Oliver
>
> diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
> index fc0ea225c6..e5d1a64b4c 100644
> --- a/libavformat/mpegtsenc.c
> +++ b/libavformat/mpegtsenc.c
> @@ -1815,6 +1815,12 @@ static int mpegts_write_packet(AVFormatContext *s,
> AVPacket *pkt)
> mpegts_write_flush(s);
> return 1;
> } else {
> + if (s->pb && s->pb->write_data_type) {
> + AVStream *st = s->streams[pkt->stream_index];
> + avio_write_marker(s->pb,
> + av_rescale_q(pkt->dts, st->time_base, AV_TIME_BASE_Q),
> + (pkt->flags & AV_PKT_FLAG_KEY) && st->codecpar->codec_type
> == AVMEDIA_TYPE_VIDEO ? AVIO_DATA_MARKER_SYNC_POINT :
> AVIO_DATA_MARKER_BOUNDARY_POINT);
> + }
> return mpegts_write_packet_internal(s, pkt);
> }
> }
> So I've created a patch for this.
0001-mpegtsenc-added-support-for-the-write_data_type-call.patch
Description: Binary data
_______________________________________________ ffmpeg-devel mailing list [email protected] https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
