summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2008-12-22gst/mxf/mxfmetadata.*: If resolving a metadata object failed the first time ↵Sebastian Dröge3-4/+25
return Original commit message from CVS: * gst/mxf/mxfmetadata.c: (mxf_metadata_base_resolve): * gst/mxf/mxfmetadata.h: If resolving a metadata object failed the first time return FALSE for a second mxf_metadata_base_resolve() call instead of TRUE.
2008-12-22gst/mxf/: Cleanup of the includes.Sebastian Dröge8-13/+77
Original commit message from CVS: * gst/mxf/mxf.c: * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfd10.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfdms1.h: * gst/mxf/mxfmpeg.h: * gst/mxf/mxftypes.h: Cleanup of the includes.
2008-12-19gst/qtmux/gstqtmux.c: Do not tempt or suggest to violate gst_collect_pads ↵Mark Nauwelaerts2-1/+5
API specification. Original commit message from CVS: * gst/qtmux/gstqtmux.c: (gst_qt_mux_change_state): Do not tempt or suggest to violate gst_collect_pads API specification.
2008-12-19gst/qtmux/: Dual license qtmux LGPL/MIT. Fixes #564232.Mark Nauwelaerts13-0/+293
Original commit message from CVS: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/descriptors.c: * gst/qtmux/descriptors.h: * gst/qtmux/fourcc.h: * gst/qtmux/ftypcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: * gst/qtmux/gstqtmuxmap.c: * gst/qtmux/gstqtmuxmap.h: * gst/qtmux/properties.c: * gst/qtmux/properties.h: Dual license qtmux LGPL/MIT. Fixes #564232.
2008-12-19gst/mxf/: Add mxf_metadata_generic_sound_essence_descriptor_set_caps() to ↵Sebastian Dröge8-69/+115
set rate and channels and use this for all ... Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_bwf_create_caps), (mxf_aes3_create_caps): * gst/mxf/mxfalaw.c: (mxf_alaw_create_caps): * gst/mxf/mxfd10.c: (mxf_d10_create_caps): * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: (mxf_metadata_source_package_resolve), (mxf_metadata_generic_picture_essence_descriptor_set_caps), (mxf_metadata_generic_sound_essence_descriptor_set_caps): * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: (mxf_mpeg_es_create_caps): Add mxf_metadata_generic_sound_essence_descriptor_set_caps() to set rate and channels and use this for all sound essence. Give some debug output when setting picture essence caps with invalid descriptor values. Fix height calculation from the frame layout a bit more and add a TODO to check if it's really correct now or if it needs more fixing (especially, does the framerate need adjustments?).
2008-12-18gst/mxf/: Add support for VC-3 (aka DNxHD essence, see SMPTE 2019-4).Sebastian Dröge5-0/+195
Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxf.c: (plugin_init): * gst/mxf/mxfvc3.c: (mxf_is_vc3_essence_track), (mxf_vc3_handle_essence_element), (mxf_vc3_create_caps), (mxf_vc3_init): * gst/mxf/mxfvc3.h: Add support for VC-3 (aka DNxHD essence, see SMPTE 2019-4). This is untested because of lack of sample files but should work fine.
2008-12-17Add appsrc and appsink documentation.Wim Taymans7-3/+155
Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init): Add appsrc and appsink documentation.
2008-12-17gst/mxf/mxfdemux.c: In push mode skip the run in again if we get buffers ↵Sebastian Dröge2-4/+15
with an offset before the run in. This can h... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_chain): In push mode skip the run in again if we get buffers with an offset before the run in. This can happen on seeks for example.
2008-12-16Totally remove the internal taglists and fully use tagsetter. Fixes various ↵Stefan Kost6-64/+86
tag muxing issues. Original commit message from CVS: * ext/celt/gstceltenc.c: * ext/celt/gstceltenc.h: * ext/metadata/gstmetadatamux.c: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: Totally remove the internal taglists and fully use tagsetter. Fixes various tag muxing issues.
2008-12-16tests/check/elements/mxfdemux.c: Increase the timeout to 3 minutes to ↵Sebastian Dröge2-0/+6
prevent timeouts. Original commit message from CVS: * tests/check/elements/mxfdemux.c: (mxfdemux_suite): Increase the timeout to 3 minutes to prevent timeouts.
2008-12-16tests/check/elements/mxfdemux.*: Make sure the main loop is already running ↵Sebastian Dröge3-2542/+2555
when handling the EOS event in pull mode.... Original commit message from CVS: * tests/check/elements/mxfdemux.c: (_sink_event): * tests/check/elements/mxfdemux.h: Make sure the main loop is already running when handling the EOS event in pull mode. This works around a race condition that can happen if the element goes into PLAYING, handles everything and sends EOS before the main loop is started.
2008-12-16gst/mxf/: Implement an essence element handling registry and use this ↵Sebastian Dröge18-415/+430
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.
2008-12-16tests/check/Makefile.am: Blacklist rfbsrc from the state change test.Edward Hervey2-1/+6
Original commit message from CVS: * tests/check/Makefile.am: Blacklist rfbsrc from the state change test.
2008-12-16tests/check/: Add push and pull mode unit test for mxfdemux.Sebastian Dröge4-1/+2833
Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/mxfdemux.c: (_pad_added), (_sink_chain), (_sink_event), (_create_sink_pad), (_create_src_pad_push), (_src_getrange), (_src_query), (_create_src_pad_pull), (GST_START_TEST), (mxfdemux_suite): * tests/check/elements/mxfdemux.h: Add push and pull mode unit test for mxfdemux.
2008-12-16Add initial documentation for the MXF plugin and mxfdemux.Sebastian Dröge13-4166/+214
Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: Add initial documentation for the MXF plugin and mxfdemux.
2008-12-16gst/mxf/: Rename MXFMetadataBase methods to reflect that they belong toSebastian Dröge4-25/+48
Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_resolve_references): * gst/mxf/mxfmetadata.c: (mxf_metadata_base_resolve_default), (mxf_metadata_base_class_init), (mxf_metadata_base_parse), (mxf_metadata_base_resolve), (mxf_metadata_new), (mxf_metadata_preface_resolve), (mxf_metadata_content_storage_resolve), (mxf_metadata_essence_container_data_resolve), (mxf_metadata_generic_package_resolve), (mxf_metadata_source_package_resolve), (mxf_metadata_track_resolve), (mxf_metadata_sequence_resolve), (mxf_metadata_dm_segment_resolve), (mxf_metadata_generic_descriptor_resolve), (mxf_metadata_multiple_descriptor_resolve): * gst/mxf/mxfmetadata.h: Rename MXFMetadataBase methods to reflect that they belong to MXFMetadataBase and not MXFMetadata.
2008-12-15gst/mxf/: Return FALSE when parsing a metadata tag failed.Sebastian Dröge3-46/+58
Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_handle_tag), (mxf_metadata_aes3_audio_essence_descriptor_handle_tag): * gst/mxf/mxfmetadata.c: (mxf_metadata_multiple_descriptor_handle_tag): Return FALSE when parsing a metadata tag failed. Remove some useless return value assignments.
2008-12-15gst/mxf/: Convert the structural metadata to GstMiniObjects to make a lot of ↵Sebastian Dröge24-4444/+4830
code easier and to make everything bette... Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxf.c: (plugin_init): * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_handle_tag), (mxf_metadata_wave_audio_essence_descriptor_init), (mxf_metadata_wave_audio_essence_descriptor_class_init), (mxf_metadata_aes3_audio_essence_descriptor_finalize), (mxf_metadata_aes3_audio_essence_descriptor_handle_tag), (mxf_metadata_aes3_audio_essence_descriptor_init), (mxf_metadata_aes3_audio_essence_descriptor_class_init), (mxf_is_aes_bwf_essence_track), (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_create_caps), (mxf_alaw_init): * gst/mxf/mxfalaw.h: * gst/mxf/mxfd10.c: (mxf_is_d10_essence_track), (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_resolve_references), (gst_mxf_demux_find_package), (gst_mxf_demux_choose_package), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_handle_metadata), (gst_mxf_demux_handle_generic_container_essence_element), (gst_mxf_demux_handle_klv_packet), (gst_mxf_demux_src_query): * gst/mxf/mxfdemux.h: * gst/mxf/mxfdv-dif.c: (mxf_is_dv_dif_essence_track), (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_create_caps), (mxf_jpeg2000_init): * gst/mxf/mxfjpeg2000.h: * gst/mxf/mxfmetadata.c: (mxf_metadata_base_finalize), (mxf_metadata_base_handle_tag), (mxf_metadata_base_resolve), (mxf_metadata_base_init), (mxf_metadata_base_class_init), (mxf_metadata_parse), (mxf_metadata_resolve), (mxf_metadata_handle_tag), (mxf_metadata_class_init), (mxf_metadata_init), (mxf_metadata_init_types), (mxf_metadata_register), (mxf_metadata_new), (mxf_metadata_preface_finalize), (mxf_metadata_preface_handle_tag), (mxf_metadata_preface_resolve), (mxf_metadata_preface_init), (mxf_metadata_preface_class_init), (mxf_metadata_identification_finalize), (mxf_metadata_identification_handle_tag), (mxf_metadata_identification_init), (mxf_metadata_identification_class_init), (mxf_metadata_content_storage_finalize), (mxf_metadata_content_storage_handle_tag), (mxf_metadata_content_storage_resolve), (mxf_metadata_content_storage_init), (mxf_metadata_content_storage_class_init), (mxf_metadata_essence_container_data_handle_tag), (mxf_metadata_essence_container_data_resolve), (mxf_metadata_essence_container_data_init), (mxf_metadata_essence_container_data_class_init), (mxf_metadata_generic_package_finalize), (mxf_metadata_generic_package_handle_tag), (mxf_metadata_generic_package_resolve), (mxf_metadata_generic_package_init), (mxf_metadata_generic_package_class_init), (mxf_metadata_material_package_resolve), (mxf_metadata_material_package_init), (mxf_metadata_material_package_class_init), (mxf_metadata_source_package_finalize), (mxf_metadata_source_package_handle_tag), (mxf_metadata_source_package_resolve), (mxf_metadata_source_package_init), (mxf_metadata_source_package_class_init), (mxf_metadata_track_finalize), (mxf_metadata_track_handle_tag), (mxf_metadata_track_resolve), (mxf_metadata_track_init), (mxf_metadata_track_class_init), (mxf_metadata_track_identifier_parse), (mxf_metadata_timeline_track_handle_tag), (mxf_metadata_timeline_track_init), (mxf_metadata_timeline_track_class_init), (mxf_metadata_event_track_handle_tag), (mxf_metadata_event_track_init), (mxf_metadata_event_track_class_init), (mxf_metadata_static_track_init), (mxf_metadata_static_track_class_init), (mxf_metadata_sequence_finalize), (mxf_metadata_sequence_handle_tag), (mxf_metadata_sequence_resolve), (mxf_metadata_sequence_init), (mxf_metadata_sequence_class_init), (mxf_metadata_structural_component_handle_tag), (mxf_metadata_structural_component_init), (mxf_metadata_structural_component_class_init), (mxf_metadata_timecode_component_handle_tag), (mxf_metadata_timecode_component_init), (mxf_metadata_timecode_component_class_init), (mxf_metadata_source_clip_handle_tag), (mxf_metadata_source_clip_resolve), (mxf_metadata_source_clip_init), (mxf_metadata_source_clip_class_init), (mxf_metadata_dm_source_clip_finalize), (mxf_metadata_dm_source_clip_handle_tag), (mxf_metadata_dm_source_clip_init), (mxf_metadata_dm_source_clip_class_init), (mxf_metadata_dm_segment_finalize), (mxf_metadata_dm_segment_handle_tag), (mxf_metadata_dm_segment_resolve), (mxf_metadata_dm_segment_init), (mxf_metadata_dm_segment_class_init), (mxf_metadata_generic_descriptor_finalize), (mxf_metadata_generic_descriptor_handle_tag), (mxf_metadata_generic_descriptor_resolve), (mxf_metadata_generic_descriptor_init), (mxf_metadata_generic_descriptor_class_init), (mxf_metadata_file_descriptor_handle_tag), (mxf_metadata_file_descriptor_init), (mxf_metadata_file_descriptor_class_init), (mxf_metadata_generic_picture_essence_descriptor_handle_tag), (mxf_metadata_generic_picture_essence_descriptor_init), (mxf_metadata_generic_picture_essence_descriptor_class_init), (mxf_metadata_generic_picture_essence_descriptor_set_caps), (mxf_metadata_generic_sound_essence_descriptor_handle_tag), (mxf_metadata_generic_sound_essence_descriptor_init), (mxf_metadata_generic_sound_essence_descriptor_class_init), (mxf_metadata_cdci_picture_essence_descriptor_handle_tag), (mxf_metadata_cdci_picture_essence_descriptor_init), (mxf_metadata_cdci_picture_essence_descriptor_class_init), (mxf_metadata_rgba_picture_essence_descriptor_finalize), (mxf_metadata_rgba_picture_essence_descriptor_handle_tag), (mxf_metadata_rgba_picture_essence_descriptor_init), (mxf_metadata_rgba_picture_essence_descriptor_class_init), (mxf_metadata_generic_data_essence_descriptor_handle_tag), (mxf_metadata_generic_data_essence_descriptor_init), (mxf_metadata_generic_data_essence_descriptor_class_init), (mxf_metadata_multiple_descriptor_finalize), (mxf_metadata_multiple_descriptor_handle_tag), (mxf_metadata_multiple_descriptor_resolve), (mxf_metadata_multiple_descriptor_init), (mxf_metadata_multiple_descriptor_class_init), (mxf_metadata_locator_init), (mxf_metadata_locator_class_init), (mxf_metadata_text_locator_finalize), (mxf_metadata_text_locator_handle_tag), (mxf_metadata_text_locator_init), (mxf_metadata_text_locator_class_init), (mxf_metadata_network_locator_finalize), (mxf_metadata_network_locator_handle_tag), (mxf_metadata_network_locator_init), (mxf_metadata_network_locator_class_init): * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: (mxf_metadata_mpeg_video_descriptor_handle_tag), (mxf_metadata_mpeg_video_descriptor_init), (mxf_metadata_mpeg_video_descriptor_class_init), (mxf_is_mpeg_essence_track), (mxf_mpeg_es_create_caps), (mxf_mpeg_create_caps), (mxf_mpeg_init): * gst/mxf/mxfmpeg.h: * gst/mxf/mxfparse.c: (mxf_index_table_segment_parse), (mxf_local_tag_add_to_hash_table): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: * gst/mxf/mxfup.c: (mxf_is_up_essence_track), (mxf_up_create_caps), (mxf_up_init): * gst/mxf/mxfup.h: Convert the structural metadata to GstMiniObjects to make a lot of code easier and to make everything better extensible. Add a "registry" for metadata handlers to improve extensibility even more and to remove metadata type specifics from mxfdemux. Clean up a lot of parts and add some more NULL checks.
2008-12-15ext/faac/gstfaac.c: Fix default for outputformat property.Stefan Kost2-2/+7
Original commit message from CVS: * ext/faac/gstfaac.c: Fix default for outputformat property.
2008-12-15examples/app/: Fix example to unref after emiting the push-buffer action.Wim Taymans7-18/+58
Original commit message from CVS: * examples/app/appsrc-ra.c: (feed_data): * examples/app/appsrc-seekable.c: (feed_data): * examples/app/appsrc-stream.c: (read_data): * examples/app/appsrc-stream2.c: (feed_data): Fix example to unref after emiting the push-buffer action. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_push_buffer_full), (gst_app_src_push_buffer), (gst_app_src_push_buffer_action): Don't take the ref on the buffer in push-buffer action because it's too awkward for bindings. Fixes #564482.
2008-12-13m4/Makefile.am: More .m4 that aren't shipped with gettext 0.17 anymore.Edward Hervey3-2/+5
Original commit message from CVS: * m4/Makefile.am: More .m4 that aren't shipped with gettext 0.17 anymore.
2008-12-13m4/Makefile.am: inttypes.m4 hasn't been available since gettext-0.15, and ↵Edward Hervey2-1/+7
since we now require gettext >= 0.17 ... we... Original commit message from CVS: * m4/Makefile.am: inttypes.m4 hasn't been available since gettext-0.15, and since we now require gettext >= 0.17 ... we can remove it from the list of files to dist.
2008-12-13gst/mxf/mxfdemux.c: Add a generic handler for descriptive metadata so we can ↵Sebastian Dröge3-2/+56
get some debug output and let users file... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_descriptive_metadata), (gst_mxf_demux_handle_klv_packet): Add a generic handler for descriptive metadata so we can get some debug output and let users file bugs for unsupport descriptive metadata schemes.
2008-12-12gst/mxf/: Major update of the TODO lists. There's still much to do.Sebastian Dröge9-15/+60
Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: (mxf_alaw_create_caps): * gst/mxf/mxfdemux.c: * gst/mxf/mxfdv-dif.c: (mxf_dv_dif_create_caps): * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfup.c: Major update of the TODO lists. There's still much to do.
2008-12-11gst/mxf/: Implement parsing of Event Tracks, Static Tracks, DM Segments and ↵Sebastian Dröge5-33/+239
DM Source Clips as a preparation for desc... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_metadata_track), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_metadata): * gst/mxf/mxfparse.c: (mxf_metadata_track_parse), (mxf_metadata_structural_component_parse), (mxf_metadata_structural_component_reset): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: Implement parsing of Event Tracks, Static Tracks, DM Segments and DM Source Clips as a preparation for descriptive metadata support. Next step is to implement SMPTE S380M, "Descriptive Metadata Scheme-1".
2008-12-09gst/mxf/mxfjpeg2000.c: Implement detection of the colorspace used by theSebastian Dröge2-4/+70
Original commit message from CVS: * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_create_caps): Implement detection of the colorspace used by the JPEG2000 codestream. XYZ colorspace isn't supported by our decoders yet unfortunately.
2008-12-08gst/mxf/mxfparse.c: All frame layout values except 0 are for interlaced ↵Sebastian Dröge2-1/+8
video, not only 1 and 2. Original commit message from CVS: * gst/mxf/mxfparse.c: (mxf_metadata_generic_picture_essence_descriptor_set_caps): All frame layout values except 0 are for interlaced video, not only 1 and 2.
2008-12-08gst/mxf/: Remove the concept of "final" metadata, broken files have updated ↵Sebastian Dröge4-41/+76
metadata in following partitions even if ... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_primer_pack), (gst_mxf_demux_handle_metadata_preface), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_choose_package), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_parse_footer_metadata), (gst_mxf_demux_handle_klv_packet): * gst/mxf/mxfdemux.h: * gst/mxf/mxftypes.h: Remove the concept of "final" metadata, broken files have updated metadata in following partitions even if the current partition is closed and complete. If there's a second primer pack inside a partition ignore the second one instead of throwing an error. Store the type of a track (audio, video, timestamp, ...) inside the track struct. Post no-more-pads only once for a stream and not a second time when switching the currently playing package. When updating all streams make sure that we could select and find a package instead of dereferencing NULL. Allow descriptive metadata inside metadata parts of a file when pulling the footer metadata too. Only switch the currently playing package if a new one was chosen and the metadata is in a resolved state. If the latter isn't true postpone the switch until the metadata is resolved. Pull the footer metadata directly after parsing the header partition pack if it's not closed or not complete instead of waiting until the next KLV packet.
2008-12-08gst/mxf/mxfup.c: Don't create a subbuffer, instead just change the buffer ↵Sebastian Dröge2-8/+10
metadata of the input buffer. Original commit message from CVS: * gst/mxf/mxfup.c: (mxf_up_handle_essence_element): Don't create a subbuffer, instead just change the buffer metadata of the input buffer.
2008-12-07gst/mxf/mxfdemux.c: Rename GstMXFPad to GstMXFDemuxPad to prevent name ↵Sebastian Dröge2-45/+55
clashes with the GstMXFMuxPad in the muxer (la... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_pad_finalize), (gst_mxf_demux_pad_class_init), (gst_mxf_demux_pad_init), (gst_mxf_demux_remove_pad), (gst_mxf_demux_reset_metadata), (gst_mxf_demux_combine_flows), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_handle_generic_container_essence_element), (gst_mxf_demux_pull_random_index_pack), (gst_mxf_demux_loop), (gst_mxf_demux_src_query): Rename GstMXFPad to GstMXFDemuxPad to prevent name clashes with the GstMXFMuxPad in the muxer (later). Pull the random index pack only directly after skipping the run in and don't allocate an array for it if parsing it failed.
2008-12-07gst/mxf/mxfd10.c: Use the mapping data for storing the channel count and the ↵Sebastian Dröge2-15/+29
width instead of parsing caps for every ... Original commit message from CVS: * gst/mxf/mxfd10.c: (mxf_d10_sound_handle_essence_element), (mxf_d10_create_caps): Use the mapping data for storing the channel count and the width instead of parsing caps for every buffer.
2008-12-07gst/mxf/mxfup.c: Handle the image start and end offsets, otherwise we output ↵Sebastian Dröge2-1/+47
too large image buffers. Original commit message from CVS: * gst/mxf/mxfup.c: (mxf_up_handle_essence_element), (mxf_up_rgba_create_caps): Handle the image start and end offsets, otherwise we output too large image buffers.
2008-12-07gst/mxf/mxfmpeg.c: Set codec name tags for the MPEG audio essence.Sebastian Dröge2-0/+12
Original commit message from CVS: * gst/mxf/mxfmpeg.c: (mxf_mpeg_es_create_caps): Set codec name tags for the MPEG audio essence.
2008-12-07gst/mxf/: Add initial support for uncompressed video essence (SMPTE S384M).Sebastian Dröge7-7/+325
Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams): * gst/mxf/mxftypes.h: * gst/mxf/mxfup.c: (mxf_is_up_essence_track), (mxf_up_handle_essence_element), (mxf_up_rgba_create_caps), (mxf_up_create_caps): * gst/mxf/mxfup.h: Add initial support for uncompressed video essence (SMPTE S384M). * gst/mxf/mxfparse.c: (mxf_metadata_rgba_picture_essence_descriptor_handle_tag), (mxf_metadata_rgba_picture_essence_descriptor_reset): Fix parsing of the RGBA descriptor and add support for parsing the pixel layout.
2008-12-06gst/mxf/mxfdemux.c: The previous partition field of the partition is ↵Sebastian Dröge2-10/+21
relative to the current partition and not to the... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_parse_footer_metadata): The previous partition field of the partition is relative to the current partition and not to the offset of the header partition.
2008-12-06gst/mxf/mxfd10.c: Document decoding of the AES3 data and also skip the 32 ↵Sebastian Dröge2-0/+15
bit header in the beginning of every buffer... Original commit message from CVS: * gst/mxf/mxfd10.c: (mxf_d10_sound_handle_essence_element): Document decoding of the AES3 data and also skip the 32 bit header in the beginning of every buffer, otherwise we get one broken audio channel.
2008-12-05gst/mxf/: Implement parsing of the generic data essence descriptor.Sebastian Dröge6-39/+126
Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_metadata_generic_data_essence_descriptor), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_metadata): * gst/mxf/mxfdemux.h: * gst/mxf/mxfparse.c: (mxf_metadata_generic_data_essence_descriptor_handle_tag), (mxf_metadata_generic_data_essence_descriptor_reset): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: Implement parsing of the generic data essence descriptor.
2008-12-05gst/mxf/mxfdemux.c: Generalize some lines of codes that are more or less the ↵Sebastian Dröge2-73/+41
same by a macro. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_resolve_references): Generalize some lines of codes that are more or less the same by a macro.
2008-12-04configure.ac: Apparently AC_CONFIG_MACRO_DIR breaks when using more than one ↵Sebastian Dröge2-3/+6
macro directory, reverting last change. Original commit message from CVS: * configure.ac: Apparently AC_CONFIG_MACRO_DIR breaks when using more than one macro directory, reverting last change.
2008-12-04configure.ac: Set AC_CONFIG_MACRO_DIR to common/m4 to point autoconf to our ↵Sebastian Dröge3-0/+9
M4 macros. Original commit message from CVS: * configure.ac: Set AC_CONFIG_MACRO_DIR to common/m4 to point autoconf to our M4 macros.
2008-12-04gst/selector/gstinputselector.c: Ensure we emit notify::active-pad when ↵Michael Smith2-0/+18
auto-selecting a pad due to it having activit... Original commit message from CVS: * gst/selector/gstinputselector.c: Ensure we emit notify::active-pad when auto-selecting a pad due to it having activity and us not having an existing active pad. Fixes #563147
2008-12-04gst/mxf/: Coding style fixes.Sebastian Dröge2-66/+165
Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_resolve_references): * gst/mxf/mxfdv-dif.c: (mxf_dv_dif_create_caps): * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_create_caps): Coding style fixes. * gst/mxf/mxfmpeg.c: (mxf_mpeg_audio_handle_essence_element), (mxf_mpeg_es_create_caps), (mxf_mpeg_create_caps): Add support for MPEG, AC3, DTS audio.
2008-12-04gst/mxf/mxfdemux.c: Ignore zero sized essence elements. They're often ↵Sebastian Dröge2-2/+15
inserted to fulfill the streaming requirements. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_generic_container_essence_element): Ignore zero sized essence elements. They're often inserted to fulfill the streaming requirements.
2008-12-04gst/mxf/mxfparse.c: Fix setting of the height/width and PAR of video streams.Sebastian Dröge2-9/+19
Original commit message from CVS: * gst/mxf/mxfparse.c: (mxf_metadata_generic_picture_essence_descriptor_set_caps): Fix setting of the height/width and PAR of video streams.
2008-12-04gst/mxf/: Add support for SMPTE D10 essence (SMPTE 386M).Sebastian Dröge7-11/+326
Original commit message from CVS: * gst/mxf/Makefile.am: * 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): * gst/mxf/mxfd10.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams): Add support for SMPTE D10 essence (SMPTE 386M). * gst/mxf/mxfparse.c: (mxf_metadata_generic_picture_essence_descriptor_set_caps): Don't set width/height and PAR on the caps as those values are wrong for most files (height is sometimes the height of a field and aspect ratio is some random value). * gst/mxf/mxfaes-bwf.c: (mxf_bwf_create_caps), (mxf_aes3_create_caps): Fix calculation of block align if it isn't set in the descriptor.
2008-12-03gst/mxf/: Add support for AES3 audio (SMPTE 382M).Sebastian Dröge5-6/+472
Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_metadata_aes3_audio_essence_descriptor_handle_tag), (mxf_metadata_aes3_audio_essence_descriptor_reset), (mxf_aes3_handle_essence_element), (mxf_bwf_create_caps), (mxf_aes3_create_caps), (mxf_aes_bwf_create_caps): * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_metadata_aes3_audio_essence_descriptor), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_metadata): * gst/mxf/mxfdemux.h: Add support for AES3 audio (SMPTE 382M). * gst/mxf/mxfdv-dif.c: (mxf_dv_dif_create_caps): * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_create_caps): Fix coding style.
2008-12-03gst/mxf/mxfdemux.c: Improve debugging a bit.Sebastian Dröge2-2/+18
Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_generic_container_essence_element): Improve debugging a bit.
2008-12-03gst/flv/gstflvparse.c: Check if strings are valid UTF8 before using them.Sebastian Dröge2-0/+9
Original commit message from CVS: * gst/flv/gstflvparse.c: (FLV_GET_STRING): Check if strings are valid UTF8 before using them.
2008-12-03gst/mxf/mxfparse.c: Remove FIXME, zero-ULs and UMIDs are really invalid and ↵Sebastian Dröge2-1/+6
we can use them as "unset" value. Original commit message from CVS: * gst/mxf/mxfparse.c: Remove FIXME, zero-ULs and UMIDs are really invalid and we can use them as "unset" value.
2008-12-03gst/mxf/mxfdemux.c: Use a single "track_%u" src pad template and use the ↵Sebastian Dröge2-45/+19
track ID of the playback package for the pad... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_base_init): Use a single "track_%u" src pad template and use the track ID of the playback package for the pad name instead of the track ID of the source package, as the latter could be the same for more than one track if they're in different packages.