From 5587f912104a8b4b7d3fbc71c9b7e39981235b43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Tue, 16 Dec 2008 12:30:34 +0000 Subject: gst/mxf/: Implement an essence element handling registry and use this instead of an hardcoded, large if-then-else block. Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_is_aes_bwf_essence_track), (mxf_bwf_handle_essence_element), (mxf_aes3_handle_essence_element), (mxf_bwf_create_caps), (mxf_aes3_create_caps), (mxf_aes_bwf_create_caps), (mxf_aes_bwf_init): * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfalaw.c: (mxf_is_alaw_essence_track), (mxf_alaw_handle_essence_element), (mxf_alaw_create_caps), (mxf_alaw_init): * gst/mxf/mxfalaw.h: * gst/mxf/mxfd10.c: (mxf_is_d10_essence_track), (mxf_d10_picture_handle_essence_element), (mxf_d10_sound_handle_essence_element), (mxf_d10_create_caps), (mxf_d10_init): * gst/mxf/mxfd10.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_handle_generic_container_essence_element): * gst/mxf/mxfdv-dif.c: (mxf_is_dv_dif_essence_track), (mxf_dv_dif_handle_essence_element), (mxf_dv_dif_create_caps), (mxf_dv_dif_init): * gst/mxf/mxfdv-dif.h: * gst/mxf/mxfjpeg2000.c: (mxf_is_jpeg2000_essence_track), (mxf_jpeg2000_handle_essence_element), (mxf_jpeg2000_create_caps), (mxf_jpeg2000_init): * gst/mxf/mxfjpeg2000.h: * gst/mxf/mxfmpeg.c: (mxf_is_mpeg_essence_track), (mxf_mpeg_video_handle_essence_element), (mxf_mpeg_audio_handle_essence_element), (mxf_mpeg_es_create_caps), (mxf_mpeg_create_caps), (mxf_mpeg_init): * gst/mxf/mxfmpeg.h: * gst/mxf/mxfparse.c: (mxf_essence_element_handler_register), (mxf_essence_element_handler_find): * gst/mxf/mxfparse.h: * gst/mxf/mxfup.c: (mxf_is_up_essence_track), (mxf_up_handle_essence_element), (mxf_up_rgba_create_caps), (mxf_up_create_caps), (mxf_up_init): * gst/mxf/mxfup.h: Implement an essence element handling registry and use this instead of an hardcoded, large if-then-else block. --- gst/mxf/mxfaes-bwf.h | 73 ---------------------------------------------------- 1 file changed, 73 deletions(-) (limited to 'gst/mxf/mxfaes-bwf.h') diff --git a/gst/mxf/mxfaes-bwf.h b/gst/mxf/mxfaes-bwf.h index 7783a2d02..6412504ee 100644 --- a/gst/mxf/mxfaes-bwf.h +++ b/gst/mxf/mxfaes-bwf.h @@ -29,79 +29,6 @@ #include "mxfparse.h" #include "mxfmetadata.h" -/* SMPTE 382M Annex 1 */ -#define MXF_TYPE_METADATA_WAVE_AUDIO_ESSENCE_DESCRIPTOR \ - (mxf_metadata_wave_audio_essence_descriptor_get_type()) -#define MXF_METADATA_WAVE_AUDIO_ESSENCE_DESCRIPTOR(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj),MXF_TYPE_METADATA_WAVE_AUDIO_ESSENCE_DESCRIPTOR, MXFMetadataWaveAudioEssenceDescriptor)) -#define MXF_IS_METADATA_WAVE_AUDIO_ESSENCE_DESCRIPTOR(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj),MXF_TYPE_METADATA_WAVE_AUDIO_ESSENCE_DESCRIPTOR)) -typedef struct _MXFMetadataWaveAudioEssenceDescriptor MXFMetadataWaveAudioEssenceDescriptor; -typedef MXFMetadataBaseClass MXFMetadataWaveAudioEssenceDescriptorClass; -GType mxf_metadata_wave_audio_essence_descriptor_get_type (void); - -struct _MXFMetadataWaveAudioEssenceDescriptor { - MXFMetadataGenericSoundEssenceDescriptor parent; - - guint16 block_align; - guint8 sequence_offset; - - guint32 avg_bps; - - MXFUL channel_assignment; - - guint32 peak_envelope_version; - guint32 peak_envelope_format; - guint32 points_per_peak_value; - guint32 peak_envelope_block_size; - guint32 peak_channels; - guint32 peak_frames; - gint64 peak_of_peaks_position; - MXFTimestamp peak_envelope_timestamp; - - guint8 *peak_envelope_data; - guint16 peak_envelope_data_length; -}; - -/* SMPTE 382M Annex 2 */ -#define MXF_TYPE_METADATA_AES3_AUDIO_ESSENCE_DESCRIPTOR \ - (mxf_metadata_aes3_audio_essence_descriptor_get_type()) -#define MXF_METADATA_AES3_AUDIO_ESSENCE_DESCRIPTOR(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST((obj),MXF_TYPE_METADATA_AES3_AUDIO_ESSENCE_DESCRIPTOR, MXFMetadataAES3AudioEssenceDescriptor)) -#define MXF_IS_METADATA_AES3_AUDIO_ESSENCE_DESCRIPTOR(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE((obj),MXF_TYPE_METADATA_AES3_AUDIO_ESSENCE_DESCRIPTOR)) -typedef struct _MXFMetadataAES3AudioEssenceDescriptor MXFMetadataAES3AudioEssenceDescriptor; -typedef MXFMetadataBaseClass MXFMetadataAES3AudioEssenceDescriptorClass; -GType mxf_metadata_aes3_audio_essence_descriptor_get_type (void); - -struct _MXFMetadataAES3AudioEssenceDescriptor { - MXFMetadataWaveAudioEssenceDescriptor parent; - - guint8 emphasis; - guint16 block_start_offset; - guint8 auxiliary_bits_mode; - - guint32 n_channel_status_mode; - guint8 *channel_status_mode; - - guint32 n_fixed_channel_status_data; - guint8 **fixed_channel_status_data; - - guint32 n_user_data_mode; - guint8 *user_data_mode; - - guint32 n_fixed_user_data; - guint8 **fixed_user_data; - - guint32 linked_timecode_track_id; - guint8 stream_number; -}; - -gboolean mxf_is_aes_bwf_essence_track (const MXFMetadataTrack *track); - -GstCaps * -mxf_aes_bwf_create_caps (MXFMetadataGenericPackage *package, MXFMetadataTrack *track, GstTagList **tags, MXFEssenceElementHandler *handler, gpointer *mapping_data); - void mxf_aes_bwf_init (void); #endif /* __MXF_AES_BWF_H__ */ -- cgit v1.2.1