[FFmpeg-devel] [PATCH 4/5] avformat/mxfdec: fix data_essence_descriptor matching logic

Marton Balint cus at passwd.hu
Sun May 27 22:21:53 EEST 2018


Signed-off-by: Marton Balint <cus at passwd.hu>
---
 libavformat/mxfdec.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index bd46572e48..a62021b0d7 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -2354,12 +2354,12 @@ static int mxf_parse_structural_metadata(MXFContext *mxf)
                 st->need_parsing = AVSTREAM_PARSE_FULL;
             }
         } else if (st->codecpar->codec_type == AVMEDIA_TYPE_DATA) {
-            int codec_id = mxf_get_codec_ul(mxf_data_essence_container_uls,
-                                            essence_container_ul)->id;
-            if (codec_id >= 0 &&
-                codec_id < FF_ARRAY_ELEMS(mxf_data_essence_descriptor)) {
+            int index;
+            container_ul = mxf_get_codec_ul(mxf_data_essence_container_uls, essence_container_ul);
+            index = container_ul - mxf_data_essence_container_uls;
+            if (index < FF_ARRAY_ELEMS(mxf_data_essence_descriptor)) {
                 av_dict_set(&st->metadata, "data_type",
-                            mxf_data_essence_descriptor[codec_id], 0);
+                            mxf_data_essence_descriptor[index], 0);
             }
         }
         if (descriptor->extradata) {
-- 
2.16.3



More information about the ffmpeg-devel mailing list