[FFmpeg-cvslog] avformat/asfdec_f: support bmp_tags_unofficial

Zhao Zhili git at videolan.org
Mon Jul 3 15:59:34 EEST 2023


ffmpeg | branch: master | Zhao Zhili <zhilizhao at tencent.com> | Tue Jun 13 15:37:17 2023 +0800| [3eb7968ed98229e3b44a91b89c7cd5512643b182] | committer: Zhao Zhili

avformat/asfdec_f: support bmp_tags_unofficial

Signed-off-by: Zhao Zhili <zhilizhao at tencent.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3eb7968ed98229e3b44a91b89c7cd5512643b182
---

 libavformat/asfdec_f.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavformat/asfdec_f.c b/libavformat/asfdec_f.c
index bdbd4271c8..1e3eb33fd6 100644
--- a/libavformat/asfdec_f.c
+++ b/libavformat/asfdec_f.c
@@ -445,6 +445,8 @@ static int asf_read_stream_properties(AVFormatContext *s, int64_t size)
 
         st->codecpar->codec_tag = tag1;
         st->codecpar->codec_id  = ff_codec_get_id(ff_codec_bmp_tags, tag1);
+        if (!st->codecpar->codec_id)
+            st->codecpar->codec_id = ff_codec_get_id(ff_codec_bmp_tags_unofficial, tag1);
         if (tag1 == MKTAG('D', 'V', 'R', ' ')) {
             sti->need_parsing = AVSTREAM_PARSE_FULL;
             /* issue658 contains wrong w/h and MS even puts a fake seq header
@@ -459,6 +461,8 @@ static int asf_read_stream_properties(AVFormatContext *s, int64_t size)
             sti->need_parsing = AVSTREAM_PARSE_FULL_ONCE;
         if (st->codecpar->codec_id == AV_CODEC_ID_MPEG4)
             sti->need_parsing = AVSTREAM_PARSE_FULL_ONCE;
+        if (st->codecpar->codec_id == AV_CODEC_ID_HEVC)
+            sti->need_parsing = AVSTREAM_PARSE_FULL;
     }
     pos2 = avio_tell(pb);
     avio_skip(pb, size - (pos2 - pos1 + 24));



More information about the ffmpeg-cvslog mailing list