diff options
author | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2009-03-16 12:07:20 +0100 |
---|---|---|
committer | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2009-03-21 10:19:48 +0100 |
commit | 1925b8e9f78e8deb89d451e67b6edb8ca9d7b61f (patch) | |
tree | 828dc63de674c4c4e0517ed7418b62dce8299635 | |
parent | 9fd64eee8d44d2bd039cbf7d52f84f5b28ef56d7 (diff) | |
download | gst-plugins-bad-1925b8e9f78e8deb89d451e67b6edb8ca9d7b61f.tar.gz gst-plugins-bad-1925b8e9f78e8deb89d451e67b6edb8ca9d7b61f.tar.bz2 gst-plugins-bad-1925b8e9f78e8deb89d451e67b6edb8ca9d7b61f.zip |
mxfdemux: Add support for AYUV and v308 YUV colorspaces
-rw-r--r-- | gst/mxf/mxfup.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gst/mxf/mxfup.c b/gst/mxf/mxfup.c index ccc34ffd..d76690bd 100644 --- a/gst/mxf/mxfup.c +++ b/gst/mxf/mxfup.c @@ -132,6 +132,10 @@ mxf_up_rgba_create_caps (MXFMetadataTimelineTrack * track, && d->pixel_layout[4] == 'R' && d->pixel_layout[1] == 8 && d->pixel_layout[3] == 8 && d->pixel_layout[5] == 8) { caps = gst_caps_from_string (GST_VIDEO_CAPS_BGR); + } else if (d->pixel_layout[0] == 'Y' && d->pixel_layout[2] == 'U' + && d->pixel_layout[4] == 'V' && d->pixel_layout[1] == 8 + && d->pixel_layout[3] == 8 && d->pixel_layout[5] == 8) { + caps = gst_caps_from_string (GST_VIDEO_CAPS_YUV ("v308")); } else { GST_ERROR ("Unsupport 3 component pixel layout"); return NULL; @@ -177,6 +181,11 @@ mxf_up_rgba_create_caps (MXFMetadataTimelineTrack * track, && d->pixel_layout[1] == 8 && d->pixel_layout[3] == 8 && d->pixel_layout[5] == 8 && d->pixel_layout[7] == 8) { caps = gst_caps_from_string (GST_VIDEO_CAPS_BGRA); + } else if (d->pixel_layout[0] == 'A' && d->pixel_layout[2] == 'Y' + && d->pixel_layout[4] == 'U' && d->pixel_layout[6] == 'V' + && d->pixel_layout[1] == 8 && d->pixel_layout[3] == 8 + && d->pixel_layout[5] == 8 && d->pixel_layout[7] == 8) { + caps = gst_caps_from_string (GST_VIDEO_CAPS_YUV ("AYUV")); } else { GST_ERROR ("Unsupport 4 component pixel layout"); return NULL; |