[FFmpeg-devel] [PATCH 1/2] mpegtsenc: Restrict "async" behavior to KLV async packets

Marton Balint cus at passwd.hu
Fri Mar 17 00:41:13 EET 2023



On Thu, 9 Mar 2023, Devin Heitmueller wrote:

> The original code would strip off the PTS/DTS of any packets
> which had a stream ID of STREAM_ID_PRIVATE_STREAM_1.  While the
> intent was to apply this to asynchronous KLV packets, it was
> being applied to any codec that had that same stream ID (including
> types such as SMPTE 2038).
>
> Add a clause to the if() statement to ensure it only gets applied
> if the codec actually is KLV.

Thanks, will apply.

Regards,
Marton

>
> Signed-off-by: Devin Heitmueller <dheitmueller at ltnglobal.com>
> ---
> libavformat/mpegtsenc.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
> index ceed089587..3f201cce1d 100644
> --- a/libavformat/mpegtsenc.c
> +++ b/libavformat/mpegtsenc.c
> @@ -1455,7 +1455,8 @@ static int get_pes_stream_id(AVFormatContext *s, AVStream *st, int stream_id, in
>                st->codecpar->codec_id == AV_CODEC_ID_TIMED_ID3) {
>         return STREAM_ID_PRIVATE_STREAM_1;
>     } else if (st->codecpar->codec_type == AVMEDIA_TYPE_DATA) {
> -        if (stream_id == STREAM_ID_PRIVATE_STREAM_1) /* asynchronous KLV */
> +        if (st->codecpar->codec_id == AV_CODEC_ID_SMPTE_KLV &&
> +            stream_id == STREAM_ID_PRIVATE_STREAM_1) /* asynchronous KLV */
>             *async = 1;
>         return stream_id != -1 ? stream_id : STREAM_ID_METADATA_STREAM;
>     } else {
> -- 
> 2.35.1.655.ga68dfadae5
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>


More information about the ffmpeg-devel mailing list