[FFmpeg-cvslog] avformat/mxfdec: remove resolve_strong_ref usage with AnyType

2024-03-19 Thread Marton Balint
ffmpeg | branch: release/6.1 | Marton Balint  | Sat Feb 17 
00:06:03 2024 +0100| [d3145298c08d5d0e5d260d2aa16a0f250d540155] | committer: 
Marton Balint

avformat/mxfdec: remove resolve_strong_ref usage with AnyType

UUIDs do not have to be unique if their type sets them apart, so avoid using
AnyType, since we are only interested in specific types.

Signed-off-by: Marton Balint 
(cherry picked from commit aa299faa9ad2b01010acc4641b1f215d60a1336b)

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

 libavformat/mxf.h|  3 +--
 libavformat/mxfdec.c | 54 ++--
 2 files changed, 20 insertions(+), 37 deletions(-)

diff --git a/libavformat/mxf.h b/libavformat/mxf.h
index 2561605ce5..63fe90af20 100644
--- a/libavformat/mxf.h
+++ b/libavformat/mxf.h
@@ -30,8 +30,7 @@
 typedef AVUUID UID;
 
 enum MXFMetadataSetType {
-AnyType,
-MaterialPackage,
+MaterialPackage = 1,
 SourcePackage,
 SourceClip,
 TimecodeComponent,
diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index 446bcf3276..b7b9207a5b 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -1582,7 +1582,7 @@ static void *mxf_resolve_strong_ref(MXFContext *mxf, UID 
*strong_ref, enum MXFMe
 return NULL;
 for (i = mxf->metadata_sets_count - 1; i >= 0; i--) {
 if (!memcmp(*strong_ref, mxf->metadata_sets[i]->uid, 16) &&
-(type == AnyType || mxf->metadata_sets[i]->type == type)) {
+(mxf->metadata_sets[i]->type == type)) {
 return mxf->metadata_sets[i];
 }
 }
@@ -2221,22 +2221,17 @@ static int mxf_add_timecode_metadata(AVDictionary **pm, 
const char *key, AVTimec
 
 static MXFTimecodeComponent* mxf_resolve_timecode_component(MXFContext *mxf, 
UID *strong_ref)
 {
-MXFStructuralComponent *component = NULL;
-MXFPulldownComponent *pulldown = NULL;
+MXFTimecodeComponent *timecode;
+MXFPulldownComponent *pulldown;
 
-component = mxf_resolve_strong_ref(mxf, strong_ref, AnyType);
-if (!component)
-return NULL;
+timecode = mxf_resolve_strong_ref(mxf, strong_ref, TimecodeComponent);
+if (timecode)
+return timecode;
 
-switch (component->meta.type) {
-case TimecodeComponent:
-return (MXFTimecodeComponent*)component;
-case PulldownComponent: /* timcode component may be located on a pulldown 
component */
-pulldown = (MXFPulldownComponent*)component;
+pulldown = mxf_resolve_strong_ref(mxf, strong_ref, PulldownComponent);
+if (pulldown)
 return mxf_resolve_strong_ref(mxf, >input_segment_ref, 
TimecodeComponent);
-default:
-break;
-}
+
 return NULL;
 }
 
@@ -2280,14 +2275,20 @@ static MXFDescriptor* mxf_resolve_descriptor(MXFContext 
*mxf, UID *strong_ref, i
 return NULL;
 }
 
-static MXFStructuralComponent* mxf_resolve_essence_group_choice(MXFContext 
*mxf, MXFEssenceGroup *essence_group)
+static MXFStructuralComponent* mxf_resolve_sourceclip(MXFContext *mxf, UID 
*strong_ref)
 {
 MXFStructuralComponent *component = NULL;
 MXFPackage *package = NULL;
 MXFDescriptor *descriptor = NULL;
+MXFEssenceGroup *essence_group;
 int i;
 
-if (!essence_group || !essence_group->structural_components_count)
+component = mxf_resolve_strong_ref(mxf, strong_ref, SourceClip);
+if (component)
+return component;
+
+essence_group = mxf_resolve_strong_ref(mxf, strong_ref, EssenceGroup);
+if (!essence_group)
 return NULL;
 
 /* essence groups contains multiple representations of the same media,
@@ -2304,24 +2305,7 @@ static MXFStructuralComponent* 
mxf_resolve_essence_group_choice(MXFContext *mxf,
 if (descriptor)
 return component;
 }
-return NULL;
-}
-
-static MXFStructuralComponent* mxf_resolve_sourceclip(MXFContext *mxf, UID 
*strong_ref)
-{
-MXFStructuralComponent *component = NULL;
 
-component = mxf_resolve_strong_ref(mxf, strong_ref, AnyType);
-if (!component)
-return NULL;
-switch (component->meta.type) {
-case SourceClip:
-return component;
-case EssenceGroup:
-return mxf_resolve_essence_group_choice(mxf, (MXFEssenceGroup*) 
component);
-default:
-break;
-}
 return NULL;
 }
 
@@ -3243,7 +3227,7 @@ static const MXFMetadataReadTableEntry 
mxf_metadata_read_table[] = {
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x05,0x01,0x01,0x0d,0x01,0x02,0x01,0x01,0x04,0x04,0x00 
}, mxf_read_partition_pack },
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x2f,0x00 
}, mxf_read_preface_metadata },
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x30,0x00 
}, mxf_read_identification_metadata },
-{ { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x18,0x00 
}, mxf_read_content_storage, 0, AnyType },
+{ { 

[FFmpeg-cvslog] avformat/mxfdec: remove resolve_strong_ref usage with AnyType

2024-03-19 Thread Marton Balint
ffmpeg | branch: release/6.0 | Marton Balint  | Sat Feb 17 
00:06:03 2024 +0100| [b6925ebc08141e27a0aea8cb9f51d835d10c2c48] | committer: 
Marton Balint

avformat/mxfdec: remove resolve_strong_ref usage with AnyType

UUIDs do not have to be unique if their type sets them apart, so avoid using
AnyType, since we are only interested in specific types.

Signed-off-by: Marton Balint 
(cherry picked from commit aa299faa9ad2b01010acc4641b1f215d60a1336b)

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

 libavformat/mxf.h|  3 +--
 libavformat/mxfdec.c | 54 ++--
 2 files changed, 20 insertions(+), 37 deletions(-)

diff --git a/libavformat/mxf.h b/libavformat/mxf.h
index 2561605ce5..63fe90af20 100644
--- a/libavformat/mxf.h
+++ b/libavformat/mxf.h
@@ -30,8 +30,7 @@
 typedef AVUUID UID;
 
 enum MXFMetadataSetType {
-AnyType,
-MaterialPackage,
+MaterialPackage = 1,
 SourcePackage,
 SourceClip,
 TimecodeComponent,
diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index c0d5da3bb6..734aa25b1c 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -1580,7 +1580,7 @@ static void *mxf_resolve_strong_ref(MXFContext *mxf, UID 
*strong_ref, enum MXFMe
 return NULL;
 for (i = mxf->metadata_sets_count - 1; i >= 0; i--) {
 if (!memcmp(*strong_ref, mxf->metadata_sets[i]->uid, 16) &&
-(type == AnyType || mxf->metadata_sets[i]->type == type)) {
+(mxf->metadata_sets[i]->type == type)) {
 return mxf->metadata_sets[i];
 }
 }
@@ -2216,22 +2216,17 @@ static int mxf_add_timecode_metadata(AVDictionary **pm, 
const char *key, AVTimec
 
 static MXFTimecodeComponent* mxf_resolve_timecode_component(MXFContext *mxf, 
UID *strong_ref)
 {
-MXFStructuralComponent *component = NULL;
-MXFPulldownComponent *pulldown = NULL;
+MXFTimecodeComponent *timecode;
+MXFPulldownComponent *pulldown;
 
-component = mxf_resolve_strong_ref(mxf, strong_ref, AnyType);
-if (!component)
-return NULL;
+timecode = mxf_resolve_strong_ref(mxf, strong_ref, TimecodeComponent);
+if (timecode)
+return timecode;
 
-switch (component->meta.type) {
-case TimecodeComponent:
-return (MXFTimecodeComponent*)component;
-case PulldownComponent: /* timcode component may be located on a pulldown 
component */
-pulldown = (MXFPulldownComponent*)component;
+pulldown = mxf_resolve_strong_ref(mxf, strong_ref, PulldownComponent);
+if (pulldown)
 return mxf_resolve_strong_ref(mxf, >input_segment_ref, 
TimecodeComponent);
-default:
-break;
-}
+
 return NULL;
 }
 
@@ -2275,14 +2270,20 @@ static MXFDescriptor* mxf_resolve_descriptor(MXFContext 
*mxf, UID *strong_ref, i
 return NULL;
 }
 
-static MXFStructuralComponent* mxf_resolve_essence_group_choice(MXFContext 
*mxf, MXFEssenceGroup *essence_group)
+static MXFStructuralComponent* mxf_resolve_sourceclip(MXFContext *mxf, UID 
*strong_ref)
 {
 MXFStructuralComponent *component = NULL;
 MXFPackage *package = NULL;
 MXFDescriptor *descriptor = NULL;
+MXFEssenceGroup *essence_group;
 int i;
 
-if (!essence_group || !essence_group->structural_components_count)
+component = mxf_resolve_strong_ref(mxf, strong_ref, SourceClip);
+if (component)
+return component;
+
+essence_group = mxf_resolve_strong_ref(mxf, strong_ref, EssenceGroup);
+if (!essence_group)
 return NULL;
 
 /* essence groups contains multiple representations of the same media,
@@ -2299,24 +2300,7 @@ static MXFStructuralComponent* 
mxf_resolve_essence_group_choice(MXFContext *mxf,
 if (descriptor)
 return component;
 }
-return NULL;
-}
-
-static MXFStructuralComponent* mxf_resolve_sourceclip(MXFContext *mxf, UID 
*strong_ref)
-{
-MXFStructuralComponent *component = NULL;
 
-component = mxf_resolve_strong_ref(mxf, strong_ref, AnyType);
-if (!component)
-return NULL;
-switch (component->meta.type) {
-case SourceClip:
-return component;
-case EssenceGroup:
-return mxf_resolve_essence_group_choice(mxf, (MXFEssenceGroup*) 
component);
-default:
-break;
-}
 return NULL;
 }
 
@@ -3231,7 +3215,7 @@ static const MXFMetadataReadTableEntry 
mxf_metadata_read_table[] = {
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x05,0x01,0x01,0x0d,0x01,0x02,0x01,0x01,0x04,0x04,0x00 
}, mxf_read_partition_pack },
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x2f,0x00 
}, mxf_read_preface_metadata },
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x30,0x00 
}, mxf_read_identification_metadata },
-{ { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x18,0x00 
}, mxf_read_content_storage, 0, AnyType },
+{ { 

[FFmpeg-cvslog] avformat/mxfdec: remove resolve_strong_ref usage with AnyType

2024-03-19 Thread Marton Balint
ffmpeg | branch: release/5.1 | Marton Balint  | Sat Feb 17 
00:06:03 2024 +0100| [25c1d8cbcf2dfd3469466738bebfa22bb92034be] | committer: 
Marton Balint

avformat/mxfdec: remove resolve_strong_ref usage with AnyType

UUIDs do not have to be unique if their type sets them apart, so avoid using
AnyType, since we are only interested in specific types.

Signed-off-by: Marton Balint 
(cherry picked from commit aa299faa9ad2b01010acc4641b1f215d60a1336b)

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

 libavformat/mxf.h|  3 +--
 libavformat/mxfdec.c | 54 ++--
 2 files changed, 20 insertions(+), 37 deletions(-)

diff --git a/libavformat/mxf.h b/libavformat/mxf.h
index 4d9f5119a3..1bbefad7af 100644
--- a/libavformat/mxf.h
+++ b/libavformat/mxf.h
@@ -30,8 +30,7 @@
 typedef AVUUID UID;
 
 enum MXFMetadataSetType {
-AnyType,
-MaterialPackage,
+MaterialPackage = 1,
 SourcePackage,
 SourceClip,
 TimecodeComponent,
diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index d6a0200ad9..446beab7f4 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -1546,7 +1546,7 @@ static void *mxf_resolve_strong_ref(MXFContext *mxf, UID 
*strong_ref, enum MXFMe
 return NULL;
 for (i = mxf->metadata_sets_count - 1; i >= 0; i--) {
 if (!memcmp(*strong_ref, mxf->metadata_sets[i]->uid, 16) &&
-(type == AnyType || mxf->metadata_sets[i]->type == type)) {
+(mxf->metadata_sets[i]->type == type)) {
 return mxf->metadata_sets[i];
 }
 }
@@ -2166,22 +2166,17 @@ static int mxf_add_timecode_metadata(AVDictionary **pm, 
const char *key, AVTimec
 
 static MXFTimecodeComponent* mxf_resolve_timecode_component(MXFContext *mxf, 
UID *strong_ref)
 {
-MXFStructuralComponent *component = NULL;
-MXFPulldownComponent *pulldown = NULL;
+MXFTimecodeComponent *timecode;
+MXFPulldownComponent *pulldown;
 
-component = mxf_resolve_strong_ref(mxf, strong_ref, AnyType);
-if (!component)
-return NULL;
+timecode = mxf_resolve_strong_ref(mxf, strong_ref, TimecodeComponent);
+if (timecode)
+return timecode;
 
-switch (component->meta.type) {
-case TimecodeComponent:
-return (MXFTimecodeComponent*)component;
-case PulldownComponent: /* timcode component may be located on a pulldown 
component */
-pulldown = (MXFPulldownComponent*)component;
+pulldown = mxf_resolve_strong_ref(mxf, strong_ref, PulldownComponent);
+if (pulldown)
 return mxf_resolve_strong_ref(mxf, >input_segment_ref, 
TimecodeComponent);
-default:
-break;
-}
+
 return NULL;
 }
 
@@ -2225,14 +2220,20 @@ static MXFDescriptor* mxf_resolve_descriptor(MXFContext 
*mxf, UID *strong_ref, i
 return NULL;
 }
 
-static MXFStructuralComponent* mxf_resolve_essence_group_choice(MXFContext 
*mxf, MXFEssenceGroup *essence_group)
+static MXFStructuralComponent* mxf_resolve_sourceclip(MXFContext *mxf, UID 
*strong_ref)
 {
 MXFStructuralComponent *component = NULL;
 MXFPackage *package = NULL;
 MXFDescriptor *descriptor = NULL;
+MXFEssenceGroup *essence_group;
 int i;
 
-if (!essence_group || !essence_group->structural_components_count)
+component = mxf_resolve_strong_ref(mxf, strong_ref, SourceClip);
+if (component)
+return component;
+
+essence_group = mxf_resolve_strong_ref(mxf, strong_ref, EssenceGroup);
+if (!essence_group)
 return NULL;
 
 /* essence groups contains multiple representations of the same media,
@@ -2249,24 +2250,7 @@ static MXFStructuralComponent* 
mxf_resolve_essence_group_choice(MXFContext *mxf,
 if (descriptor)
 return component;
 }
-return NULL;
-}
-
-static MXFStructuralComponent* mxf_resolve_sourceclip(MXFContext *mxf, UID 
*strong_ref)
-{
-MXFStructuralComponent *component = NULL;
 
-component = mxf_resolve_strong_ref(mxf, strong_ref, AnyType);
-if (!component)
-return NULL;
-switch (component->meta.type) {
-case SourceClip:
-return component;
-case EssenceGroup:
-return mxf_resolve_essence_group_choice(mxf, (MXFEssenceGroup*) 
component);
-default:
-break;
-}
 return NULL;
 }
 
@@ -3146,7 +3130,7 @@ static const MXFMetadataReadTableEntry 
mxf_metadata_read_table[] = {
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x05,0x01,0x01,0x0d,0x01,0x02,0x01,0x01,0x04,0x04,0x00 
}, mxf_read_partition_pack },
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x2f,0x00 
}, mxf_read_preface_metadata },
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x30,0x00 
}, mxf_read_identification_metadata },
-{ { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x18,0x00 
}, mxf_read_content_storage, 0, AnyType },
+{ { 

[FFmpeg-cvslog] avformat/mxfdec: remove resolve_strong_ref usage with AnyType

2024-03-02 Thread Marton Balint
ffmpeg | branch: master | Marton Balint  | Sat Feb 17 00:06:03 
2024 +0100| [aa299faa9ad2b01010acc4641b1f215d60a1336b] | committer: Marton 
Balint

avformat/mxfdec: remove resolve_strong_ref usage with AnyType

UUIDs do not have to be unique if their type sets them apart, so avoid using
AnyType, since we are only interested in specific types.

Signed-off-by: Marton Balint 

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

 libavformat/mxf.h|  3 +--
 libavformat/mxfdec.c | 54 ++--
 2 files changed, 20 insertions(+), 37 deletions(-)

diff --git a/libavformat/mxf.h b/libavformat/mxf.h
index 7dd1681e60..e16843214c 100644
--- a/libavformat/mxf.h
+++ b/libavformat/mxf.h
@@ -30,8 +30,7 @@
 typedef AVUUID UID;
 
 enum MXFMetadataSetType {
-AnyType,
-MaterialPackage,
+MaterialPackage = 1,
 SourcePackage,
 SourceClip,
 TimecodeComponent,
diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index 446bcf3276..b7b9207a5b 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -1582,7 +1582,7 @@ static void *mxf_resolve_strong_ref(MXFContext *mxf, UID 
*strong_ref, enum MXFMe
 return NULL;
 for (i = mxf->metadata_sets_count - 1; i >= 0; i--) {
 if (!memcmp(*strong_ref, mxf->metadata_sets[i]->uid, 16) &&
-(type == AnyType || mxf->metadata_sets[i]->type == type)) {
+(mxf->metadata_sets[i]->type == type)) {
 return mxf->metadata_sets[i];
 }
 }
@@ -2221,22 +2221,17 @@ static int mxf_add_timecode_metadata(AVDictionary **pm, 
const char *key, AVTimec
 
 static MXFTimecodeComponent* mxf_resolve_timecode_component(MXFContext *mxf, 
UID *strong_ref)
 {
-MXFStructuralComponent *component = NULL;
-MXFPulldownComponent *pulldown = NULL;
+MXFTimecodeComponent *timecode;
+MXFPulldownComponent *pulldown;
 
-component = mxf_resolve_strong_ref(mxf, strong_ref, AnyType);
-if (!component)
-return NULL;
+timecode = mxf_resolve_strong_ref(mxf, strong_ref, TimecodeComponent);
+if (timecode)
+return timecode;
 
-switch (component->meta.type) {
-case TimecodeComponent:
-return (MXFTimecodeComponent*)component;
-case PulldownComponent: /* timcode component may be located on a pulldown 
component */
-pulldown = (MXFPulldownComponent*)component;
+pulldown = mxf_resolve_strong_ref(mxf, strong_ref, PulldownComponent);
+if (pulldown)
 return mxf_resolve_strong_ref(mxf, >input_segment_ref, 
TimecodeComponent);
-default:
-break;
-}
+
 return NULL;
 }
 
@@ -2280,14 +2275,20 @@ static MXFDescriptor* mxf_resolve_descriptor(MXFContext 
*mxf, UID *strong_ref, i
 return NULL;
 }
 
-static MXFStructuralComponent* mxf_resolve_essence_group_choice(MXFContext 
*mxf, MXFEssenceGroup *essence_group)
+static MXFStructuralComponent* mxf_resolve_sourceclip(MXFContext *mxf, UID 
*strong_ref)
 {
 MXFStructuralComponent *component = NULL;
 MXFPackage *package = NULL;
 MXFDescriptor *descriptor = NULL;
+MXFEssenceGroup *essence_group;
 int i;
 
-if (!essence_group || !essence_group->structural_components_count)
+component = mxf_resolve_strong_ref(mxf, strong_ref, SourceClip);
+if (component)
+return component;
+
+essence_group = mxf_resolve_strong_ref(mxf, strong_ref, EssenceGroup);
+if (!essence_group)
 return NULL;
 
 /* essence groups contains multiple representations of the same media,
@@ -2304,24 +2305,7 @@ static MXFStructuralComponent* 
mxf_resolve_essence_group_choice(MXFContext *mxf,
 if (descriptor)
 return component;
 }
-return NULL;
-}
-
-static MXFStructuralComponent* mxf_resolve_sourceclip(MXFContext *mxf, UID 
*strong_ref)
-{
-MXFStructuralComponent *component = NULL;
 
-component = mxf_resolve_strong_ref(mxf, strong_ref, AnyType);
-if (!component)
-return NULL;
-switch (component->meta.type) {
-case SourceClip:
-return component;
-case EssenceGroup:
-return mxf_resolve_essence_group_choice(mxf, (MXFEssenceGroup*) 
component);
-default:
-break;
-}
 return NULL;
 }
 
@@ -3243,7 +3227,7 @@ static const MXFMetadataReadTableEntry 
mxf_metadata_read_table[] = {
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x05,0x01,0x01,0x0d,0x01,0x02,0x01,0x01,0x04,0x04,0x00 
}, mxf_read_partition_pack },
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x2f,0x00 
}, mxf_read_preface_metadata },
 { { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x30,0x00 
}, mxf_read_identification_metadata },
-{ { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x18,0x00 
}, mxf_read_content_storage, 0, AnyType },
+{ { 
0x06,0x0e,0x2b,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x18,0x00 
},