Re: [FFmpeg-devel] [PATCH 1/6] avformat/mxfdec: use MXFCodecUL struct to store essence description for data_essence_container_uls
On Tue, 5 Jun 2018, Tomas Härdin wrote: tor 2018-05-31 klockan 02:05 +0200 skrev Marton Balint: Signed-off-by: Marton Balint --- libavformat/mxf.h| 1 + libavformat/mxfdec.c | 16 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/libavformat/mxf.h b/libavformat/mxf.h index ffcc429a8b..19f8d8a9f5 100644 --- a/libavformat/mxf.h +++ b/libavformat/mxf.h @@ -68,6 +68,7 @@ typedef struct MXFCodecUL { UID uid; unsigned matching_len; int id; Is "id" really needed now? Yes, there are other tables which are also using the MXFCodecUL struct. Regards, Marton ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
Re: [FFmpeg-devel] [PATCH 1/6] avformat/mxfdec: use MXFCodecUL struct to store essence description for data_essence_container_uls
tor 2018-05-31 klockan 02:05 +0200 skrev Marton Balint: > > Signed-off-by: Marton Balint > --- > libavformat/mxf.h| 1 + > libavformat/mxfdec.c | 16 > 2 files changed, 5 insertions(+), 12 deletions(-) > > diff --git a/libavformat/mxf.h b/libavformat/mxf.h > index ffcc429a8b..19f8d8a9f5 100644 > --- a/libavformat/mxf.h > +++ b/libavformat/mxf.h > @@ -68,6 +68,7 @@ typedef struct MXFCodecUL { > UID uid; > unsigned matching_len; > int id; Is "id" really needed now? > +const char *desc; > } MXFCodecUL; > > typedef struct { > diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c > index bd46572e48..1099616174 100644 > --- a/libavformat/mxfdec.c > +++ b/libavformat/mxfdec.c > @@ -1278,14 +1278,10 @@ static const MXFCodecUL > mxf_sound_essence_container_uls[] = { > }; > > static const MXFCodecUL mxf_data_essence_container_uls[] = { > -{ { > 0x06,0x0e,0x2b,0x34,0x04,0x01,0x01,0x09,0x0d,0x01,0x03,0x01,0x02,0x0e,0x00,0x00 > }, 16, 0 }, > +{ { > 0x06,0x0e,0x2b,0x34,0x04,0x01,0x01,0x09,0x0d,0x01,0x03,0x01,0x02,0x0e,0x00,0x00 > }, 16, AV_CODEC_ID_NONE, "vbi_vanc_smpte_436M" }, > { { > 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 > }, 0, AV_CODEC_ID_NONE }, > }; > > -static const char * const mxf_data_essence_descriptor[] = { > -"vbi_vanc_smpte_436M", > -}; > - > static int mxf_get_sorted_table_segments(MXFContext *mxf, int > *nb_sorted_segments, MXFIndexTableSegment ***sorted_segments) > { > int i, j, nb_segments = 0; > @@ -2354,13 +2350,9 @@ 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)) { > -av_dict_set(>metadata, "data_type", > -mxf_data_essence_descriptor[codec_id], 0); > -} > +container_ul = mxf_get_codec_ul(mxf_data_essence_container_uls, > essence_container_ul); > +if (container_ul->desc) > +av_dict_set(>metadata, "data_type", container_ul->desc, > 0); > } > if (descriptor->extradata) { > if (!ff_alloc_extradata(st->codecpar, > descriptor->extradata_size)) { Else it looks good /Tomas ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
[FFmpeg-devel] [PATCH 1/6] avformat/mxfdec: use MXFCodecUL struct to store essence description for data_essence_container_uls
Signed-off-by: Marton Balint --- libavformat/mxf.h| 1 + libavformat/mxfdec.c | 16 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/libavformat/mxf.h b/libavformat/mxf.h index ffcc429a8b..19f8d8a9f5 100644 --- a/libavformat/mxf.h +++ b/libavformat/mxf.h @@ -68,6 +68,7 @@ typedef struct MXFCodecUL { UID uid; unsigned matching_len; int id; +const char *desc; } MXFCodecUL; typedef struct { diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c index bd46572e48..1099616174 100644 --- a/libavformat/mxfdec.c +++ b/libavformat/mxfdec.c @@ -1278,14 +1278,10 @@ static const MXFCodecUL mxf_sound_essence_container_uls[] = { }; static const MXFCodecUL mxf_data_essence_container_uls[] = { -{ { 0x06,0x0e,0x2b,0x34,0x04,0x01,0x01,0x09,0x0d,0x01,0x03,0x01,0x02,0x0e,0x00,0x00 }, 16, 0 }, +{ { 0x06,0x0e,0x2b,0x34,0x04,0x01,0x01,0x09,0x0d,0x01,0x03,0x01,0x02,0x0e,0x00,0x00 }, 16, AV_CODEC_ID_NONE, "vbi_vanc_smpte_436M" }, { { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }, 0, AV_CODEC_ID_NONE }, }; -static const char * const mxf_data_essence_descriptor[] = { -"vbi_vanc_smpte_436M", -}; - static int mxf_get_sorted_table_segments(MXFContext *mxf, int *nb_sorted_segments, MXFIndexTableSegment ***sorted_segments) { int i, j, nb_segments = 0; @@ -2354,13 +2350,9 @@ 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)) { -av_dict_set(>metadata, "data_type", -mxf_data_essence_descriptor[codec_id], 0); -} +container_ul = mxf_get_codec_ul(mxf_data_essence_container_uls, essence_container_ul); +if (container_ul->desc) +av_dict_set(>metadata, "data_type", container_ul->desc, 0); } if (descriptor->extradata) { if (!ff_alloc_extradata(st->codecpar, descriptor->extradata_size)) { -- 2.16.3 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel