summaryrefslogtreecommitdiffstats
path: root/gst/mxf/mxftypes.h
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2008-12-08 15:28:58 +0000
committerSebastian Dröge <slomo@circular-chaos.org>2008-12-08 15:28:58 +0000
commit204cd06fbee8807bcf33baf46f679196d60a107f (patch)
tree6c4670b0f3118182e1f47b8f2de2f8322dc60b8f /gst/mxf/mxftypes.h
parentd7a23866d232a457c1e7e7ea94baee15c5b32e89 (diff)
downloadgst-plugins-bad-204cd06fbee8807bcf33baf46f679196d60a107f.tar.gz
gst-plugins-bad-204cd06fbee8807bcf33baf46f679196d60a107f.tar.bz2
gst-plugins-bad-204cd06fbee8807bcf33baf46f679196d60a107f.zip
gst/mxf/: Remove the concept of "final" metadata, broken files have updated 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.
Diffstat (limited to 'gst/mxf/mxftypes.h')
-rw-r--r--gst/mxf/mxftypes.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/gst/mxf/mxftypes.h b/gst/mxf/mxftypes.h
index b66e0cc6..fe39174f 100644
--- a/gst/mxf/mxftypes.h
+++ b/gst/mxf/mxftypes.h
@@ -334,6 +334,8 @@ struct _MXFMetadataTrack {
guint32 track_id;
guint32 track_number;
+ MXFMetadataTrackType type;
+
gchar *track_name;
MXFFraction edit_rate;