diff options
author | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2009-02-07 09:27:13 +0100 |
---|---|---|
committer | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2009-02-07 09:27:13 +0100 |
commit | 6e392318c01394667578a09ba894184d356d9960 (patch) | |
tree | 1e63d76f2ea6f06754b17bc32dc92a8385064fa6 /gst/mxf/mxfparse.c | |
parent | 1822dc99d3ca39f8ca1f273aeb225687a7705406 (diff) | |
download | gst-plugins-bad-6e392318c01394667578a09ba894184d356d9960.tar.gz gst-plugins-bad-6e392318c01394667578a09ba894184d356d9960.tar.bz2 gst-plugins-bad-6e392318c01394667578a09ba894184d356d9960.zip |
mxfdemux: Add support for non-standard Avid MXF files containing DV essence
Avid usually uses a custom essence container label for the essence
descriptors and stores the actual codec that is used inside the
picture essence coding field (and for sound probably in the sound
essence coding field but I have no sample files with sound).
Partially fixes bug #561922.
Diffstat (limited to 'gst/mxf/mxfparse.c')
-rw-r--r-- | gst/mxf/mxfparse.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gst/mxf/mxfparse.c b/gst/mxf/mxfparse.c index 91fbda57..70b98c85 100644 --- a/gst/mxf/mxfparse.c +++ b/gst/mxf/mxfparse.c @@ -203,6 +203,18 @@ mxf_is_generic_container_essence_container_label (const MXFUL * key) key->u[11] == 0x01 && (key->u[12] == 0x01 || key->u[12] == 0x02)); } +/* Essence container label found in files generated by Avid */ +static const guint8 avid_essence_container_label[] = { + 0x06, 0x0e, 0x2b, 0x34, 0x01, 0x01, 0x01, 0xff, 0x4b, 0x46, 0x41, 0x41, 0x00, + 0x0d, 0x4d, 0x4f +}; + +gboolean +mxf_is_avid_essence_container_label (const MXFUL * key) +{ + return (memcmp (&key->u, avid_essence_container_label, 16) == 0); +} + gboolean mxf_ul_is_equal (const MXFUL * a, const MXFUL * b) { |