summaryrefslogtreecommitdiffstats
path: root/gst/mxf/mxfparse.c
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2008-12-04 08:37:18 +0000
committerSebastian Dröge <slomo@circular-chaos.org>2008-12-04 08:37:18 +0000
commit8201937c549034dc26dc289295a4ca0dfdceeb32 (patch)
tree5925f36690e4072dcf1d9f66ee244b0be00311aa /gst/mxf/mxfparse.c
parent7f61ced7e61ffe636e3a9a38ee2919a7ac9a43df (diff)
downloadgst-plugins-bad-8201937c549034dc26dc289295a4ca0dfdceeb32.tar.gz
gst-plugins-bad-8201937c549034dc26dc289295a4ca0dfdceeb32.tar.bz2
gst-plugins-bad-8201937c549034dc26dc289295a4ca0dfdceeb32.zip
gst/mxf/: Add support for SMPTE D10 essence (SMPTE 386M).
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.
Diffstat (limited to 'gst/mxf/mxfparse.c')
-rw-r--r--gst/mxf/mxfparse.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/gst/mxf/mxfparse.c b/gst/mxf/mxfparse.c
index d88417cf..b1a87e04 100644
--- a/gst/mxf/mxfparse.c
+++ b/gst/mxf/mxfparse.c
@@ -2610,8 +2610,8 @@ void mxf_metadata_generic_picture_essence_descriptor_reset
void mxf_metadata_generic_picture_essence_descriptor_set_caps
(MXFMetadataGenericPictureEssenceDescriptor * descriptor, GstCaps * caps)
{
- guint par_n, par_d;
- guint width, height;
+ /*guint par_n, par_d;
+ guint width, height; */
MXFMetadataFileDescriptor *f = (MXFMetadataFileDescriptor *) descriptor;
g_return_if_fail (descriptor != NULL);
@@ -2620,6 +2620,10 @@ void mxf_metadata_generic_picture_essence_descriptor_set_caps
gst_caps_set_simple (caps, "framerate", GST_TYPE_FRACTION, f->sample_rate.n,
f->sample_rate.d, NULL);
+ return;
+
+/* FIXME: This sets wrong values for most (all?) files */
+#if 0
width = descriptor->stored_width;
height = descriptor->stored_height;
@@ -2632,11 +2636,12 @@ void mxf_metadata_generic_picture_essence_descriptor_set_caps
if (descriptor->aspect_ratio.n == 0 || descriptor->aspect_ratio.d == 0)
return;
- par_n = height * descriptor->aspect_ratio.n;
- par_d = width * descriptor->aspect_ratio.d;
+ par_n = height * descriptor->aspect_ratio.d;
+ par_d = width * descriptor->aspect_ratio.n;
gst_caps_set_simple (caps, "pixel-aspect-ratio", GST_TYPE_FRACTION,
par_n, par_d, NULL);
+#endif
}
gboolean