AnyType is needed, descriptor_ref can reference Descriptor or MultipleDescriptor
Originally committed as revision 7451 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
		
							parent
							
								
									416519ddfa
								
							
						
					
					
						commit
						6ac558eefc
					
				| @ -50,6 +50,7 @@ | ||||
| typedef uint8_t UID[16]; | ||||
| 
 | ||||
| enum MXFMetadataSetType { | ||||
|     AnyType, | ||||
|     MaterialPackage, | ||||
|     SourcePackage, | ||||
|     SourceClip, | ||||
| @ -648,7 +649,7 @@ static void *mxf_resolve_strong_ref(MXFContext *mxf, UID *strong_ref, enum MXFMe | ||||
|         return NULL; | ||||
|     for (i = 0; i < mxf->metadata_sets_count; i++) { | ||||
|         if (!memcmp(*strong_ref, mxf->metadata_sets[i]->uid, 16) && | ||||
|             mxf->metadata_sets[i]->type == type) { | ||||
|             (type == AnyType || mxf->metadata_sets[i]->type == type)) { | ||||
|             return mxf->metadata_sets[i]; | ||||
|         } | ||||
|     } | ||||
| @ -749,7 +750,7 @@ static int mxf_parse_structural_metadata(MXFContext *mxf) | ||||
| #endif | ||||
|         st->codec->codec_type = mxf_get_codec_type(mxf_data_definition_uls, &source_track->sequence->data_definition_ul); | ||||
| 
 | ||||
|         source_package->descriptor = mxf_resolve_strong_ref(mxf, &source_package->descriptor_ref, Descriptor); | ||||
|         source_package->descriptor = mxf_resolve_strong_ref(mxf, &source_package->descriptor_ref, AnyType); | ||||
|         if (source_package->descriptor) { | ||||
|             if (source_package->descriptor->type == MultipleDescriptor) { | ||||
|                 for (j = 0; j < source_package->descriptor->sub_descriptors_count; j++) { | ||||
| @ -764,7 +765,7 @@ static int mxf_parse_structural_metadata(MXFContext *mxf) | ||||
|                         break; | ||||
|                     } | ||||
|                 } | ||||
|             } else | ||||
|             } else if (source_package->descriptor->type == Descriptor) | ||||
|                 descriptor = source_package->descriptor; | ||||
|         } | ||||
|         if (!descriptor) { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user