Commit graph

63 commits

Author SHA1 Message Date
Sebastian Dröge 4706447ddc mxfmetadata: Set field-order correctly for interlaced video 2017-07-05 14:03:07 +03:00
Sebastian Dröge 1e646472e7 mxfmetadata: Use display width/height instead of stored width/height
Stored values contain padding and alignment, and should only be used as
fallback if neither display values nor sampled values exist.
2017-07-05 13:52:25 +03:00
Sebastian Dröge 31a2f2d5a1 mxfdemux: Handle zero-sized KLV items better and don't assert on them 2016-11-25 15:59:44 +02:00
Sebastian Dröge 329fe3eea4 mxfmetadata: Add missing NULL check 2016-11-25 15:30:39 +02:00
Sebastian Dröge b5bb6e3b38 mxfdemux: Add various missing bounds checks, NULL checks and integer overflow protection for error cases 2016-11-24 23:40:21 +02:00
Sebastian Dröge 4321fd94a1 mxfmetadata: Properly write video line map data as an array of 32 bit integers 2016-01-29 21:09:44 +01:00
Sebastian Dröge 4d13ef1034 mxfmetadata: DMSchemes in the Preface is a required field
Even if it has 0 entries.
2016-01-29 20:58:27 +01:00
Sebastian Dröge e222f28bf3 mxfmetadata: Best effort values must be written and if unset must contain the distinguished value
It's invalid to not write them at all.
2016-01-29 18:28:03 +01:00
Sebastian Dröge 3df615a503 mxfmux: Write This Generation UID into the Identification metadata
It's required according to the standard and we forgot to actually write it to
the file although we stored it in the data structures.
2016-01-28 15:38:45 +01:00
Sebastian Dröge 3a72574c59 mxfmetadata: Add workaround for ffmpeg only writing one Video Line Map value
https://ffmpeg.org/pipermail/ffmpeg-devel/2016-January/188202.html
2016-01-28 15:29:44 +01:00
Sebastian Dröge 5a1953b31f mxfmetadata: Initialize boolean to FALSE to fix valgrind warning
Seems to be a false warning though.
2016-01-07 18:13:08 +02:00
Sebastian Dröge 1addfcc0b2 mxfmetadata: Fix static local tag for index sid 2015-12-08 10:14:41 +02:00
Guillaume Desmottes da113b5ad7 mxf: fix descriptor leak
Free the existing descriptor array, if any, before replacing it.

Fix leaks with the
validate.file.playback.scrub_forward_seeking.test-mpeg2-mp3_mxf scenario.

https://bugzilla.gnome.org/show_bug.cgi?id=748580
2015-04-28 11:53:52 -03:00
Jan Schmidt f150cf2d2e Remove a bunch of silly ';;' typos at the end of lines 2015-03-12 01:33:03 +11:00
David Schleef f0ab12fe89 mxfdemux: Ignore missing metadata descriptors 2013-03-14 14:41:37 -07:00
Sebastian Dröge 28c11b2762 mxf: Add support for parsing filler structural components
This does not add support for actually producing filler data
if there's a filler component in a timeline.
2012-12-05 12:24:30 +01:00
Sebastian Dröge a83b798312 mxf: Improve debug output during metadata resolval 2012-12-05 12:10:44 +01:00
Tim-Philipp Müller 9e1b75fda3 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00:00
Michael Smith 0c8a7fa46f mxf: Port mxfdemux to 1.0
Also ports mxfmux to 1.0 to the extent that it compiles, but is 100% untested,
so remains disabled.

Conflicts:
	gst/mxf/mxfdemux.c
	gst/mxf/mxfmux.c
2012-10-26 13:48:06 -07:00
Wim Taymans 52d48bb142 Merge branch 'master' into 0.11 2011-08-17 19:01:39 +02:00
Vincent Penquerc'h 2728ead8a2 mxf: do not assert on the values of data read from input
Instead, log a warning, and return.

https://bugzilla.gnome.org/show_bug.cgi?id=563827
2011-08-09 10:44:48 +02:00
Wim Taymans cbb7fa5701 miniobject: port to new 0.11 API
Remove miniobject and buffer subclassesusing GObject subclasses and
metadata.
2011-02-28 12:06:57 +01:00
Sebastian Dröge 53128c5b4f mxf: Unconditionally use GLib 2.16 API 2009-08-31 08:14:11 +02:00
Edward Hervey 0520a2a53b mxf: Fix frame_layout for non-interlaced formats. Fixes #583337 2009-05-20 17:15:51 +02:00
Sebastian Dröge 7a30947913 mxf: Properly handle the new interlaced support from libgstvideo for (de)muxing 2009-04-16 22:14:15 +02:00
Sebastian Dröge acc912599d mxf: Fix comparison 2009-04-07 15:45:50 +02:00
Sebastian Dröge 83324d6788 Use UL database for all metadata ULs 2009-04-07 15:20:10 +02:00
Sebastian Dröge c1c8b40d42 mxf: Differentiate between UL and UUID 2009-03-26 13:11:07 +01:00
Sebastian Dröge ce01236e32 mxf: Source files and #include cleanup 2009-03-26 12:46:22 +01:00
Sebastian Dröge a9f931c467 mxf: Remove some GLib < 2.14 compatibility stuff 2009-03-26 11:42:45 +01:00
Sebastian Dröge effb5786da mxfmux: Fix some memory leaks, improve debugging and handle errors better 2009-03-22 15:51:37 +01:00
Sebastian Dröge e50039897b mxf: Add MXF muxer
This muxer currently only supports OP1a and is
probably not yet 100% complying to the standards.
2009-03-21 10:19:47 +01:00
Jan Schmidt cf4485133b mxfdemux: Fix build on GLib < 2.16 some more 2009-03-18 10:35:43 +00:00
Zaheer Merali 43117a8d86 mxf: Replace g_hash_table_get_values with code working with glib 2.6.
Fixes #575565
2009-03-16 17:33:45 +00:00
Sebastian Dröge 424bb07965 mxf: Don't even try to serialize DM frameworks as it will cause an assertion until this is finished 2009-03-06 17:24:03 +01:00
Sebastian Dröge b5e87b6517 mxf: Don't use NULL GstStructures to prevent warnings
Currently serializing of DM Frameworks is not supported
yet by DMS1 and will give us NULL.
2009-03-05 14:40:57 +01:00
Sebastian Dröge 62dbf4b9bc mxfdemux: Use arrays instead of lists for the metadata registries 2009-03-02 17:00:41 +01:00
Sebastian Dröge ed72bba6a2 mxf: Fix memory leak
gst_structure_id_set() will copy GstStructures instead of taking
the ownership.
2009-02-28 20:42:49 +01:00
Sebastian Dröge b5b2e44563 mxf: Store the metadata type ID inside the class structure 2009-02-28 20:39:42 +01:00
Sebastian Dröge acc6a316ce mxfdemux: Post structural metadata tree as tag on the bus
This will later be used to keep the structural metadata when
remuxing an MXF file and can also be used in Pitivi for example
to know the file structure and to select what should be used
and played.
2009-02-21 17:38:49 +01:00
Sebastian Dröge 636b535e4a mxfdemux: Add helper function to convert MXFraction to gdouble and use it 2009-02-21 16:16:32 +01:00
Sebastian Dröge 8172830d47 mxfdemux: Only store the main descriptor in source packages
For the tracks we still resolve the descriptors but the
source package only contains the descriptor it really references
instead of all subdescriptors of multiple descriptors.

This makes it easier later to serialize the structural metadata
again.
2009-02-21 16:16:32 +01:00
Sebastian Dröge 2a93712ea1 mxfdemux: Don't use generic metadata parsers for unknown metadata, the results are useless anyway 2009-02-21 16:16:32 +01:00
Sebastian Dröge eb78f9c8f7 mxfdemux: Fix resolval of identifications from the preface 2009-02-12 11:00:07 +01:00
Sebastian Dröge 61b284de0d mxfdemux: Parse MXFTimestamp's milliseconds and add _to_string() function 2009-02-12 11:00:07 +01:00
Sebastian Dröge 33baa707a2 mxfdemux: Resolve source package before accessing it's members 2009-02-08 21:31:40 +01:00
Sebastian Dröge 658066d085 mxfdemux: For material packages make sure that tracks resolve to source tracks 2009-02-08 07:33:33 +01:00
Sebastian Dröge 410681f8b5 mxfdemux: Don't include multiple descriptors in the track's descriptors 2009-02-07 10:03:24 +01:00
Sebastian Dröge 1822dc99d3 mxfdemux: Add data definition for Avid vendor specific picture essence 2009-02-06 11:57:46 +01:00
Sebastian Dröge 6a09f5f4fe Don't use GLib 2.16 API unconditionally 2009-01-31 11:29:20 +01:00