[FFmpeg-devel] [PATCH 1/2] fix the bug that AV_PKT_FLAG_CORRUPT flags lost after parse_packet()

Andreas Rheinhardt andreas.rheinhardt at gmail.com
Sat Jun 13 20:13:20 EEST 2020


levizhao at live.cn:
> From: zhaoyi <levizhao at live.cn>
> 
> ---
>  libavformat/utils.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/libavformat/utils.c b/libavformat/utils.c
> index 667249362c..a74c0f74a2 100644
> --- a/libavformat/utils.c
> +++ b/libavformat/utils.c
> @@ -1516,6 +1516,7 @@ static int parse_packet(AVFormatContext *s, AVPacket *pkt,
>          out_pkt.dts          = st->parser->dts;
>          out_pkt.pos          = st->parser->pos;
>          out_pkt.flags       |= pkt->flags & AV_PKT_FLAG_DISCARD;
> +        out_pkt.flags       |= pkt->flags & AV_PKT_FLAG_CORRUPT;
>  
>          if (st->need_parsing == AVSTREAM_PARSE_FULL_RAW)
>              out_pkt.pos = st->parser->frame_offset;
> 
You can combine this with the line above via pkt->flags &
(AV_PKT_FLAG_DISCARD | AV_PKT_FLAG_CORRUPT).

- Andreas


More information about the ffmpeg-devel mailing list