summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--gst/qtdemux/qtdemux.c18
2 files changed, 27 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 721a901e..c4259999 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2008-12-28 Edward Hervey <edward.hervey@collabora.co.uk>
+
+ Patch by: j^ <j at oil21.org>
+
+ * gst/qtdemux/qtdemux.c: (qtdemux_video_caps),
+ (qtdemux_audio_caps):
+ Add codec mapping for xvid, fmp4 and ac3 tracks.
+ Fixes #565850
+
2008-12-23 Wim Taymans <wim.taymans@collabora.co.uk>
* ext/jpeg/gstsmokeenc.c: (gst_smokeenc_init),
diff --git a/gst/qtdemux/qtdemux.c b/gst/qtdemux/qtdemux.c
index d1abd6fc..a72bd7fa 100644
--- a/gst/qtdemux/qtdemux.c
+++ b/gst/qtdemux/qtdemux.c
@@ -4749,6 +4749,20 @@ qtdemux_video_caps (GstQTDemux * qtdemux, QtDemuxStream * stream,
caps = gst_caps_new_simple ("video/x-divx",
"divxversion", G_TYPE_INT, 5, NULL);
break;
+ case GST_MAKE_FOURCC ('X', 'V', 'I', 'D'):
+ case GST_MAKE_FOURCC ('x', 'v', 'i', 'd'):
+ _codec ("XVID MPEG-4");
+ caps = gst_caps_new_simple ("video/x-xvid", NULL);
+ break;
+
+ case GST_MAKE_FOURCC ('F', 'M', 'P', '4'):
+ case GST_MAKE_FOURCC ('U', 'M', 'P', '4'):
+ caps = gst_caps_new_simple ("video/mpeg",
+ "mpegversion", G_TYPE_INT, 4, NULL);
+ if (codec_name)
+ *codec_name = g_strdup ("FFmpeg MPEG-4");
+ break;
+
case GST_MAKE_FOURCC ('c', 'v', 'i', 'd'):
_codec ("Cinepak");
caps = gst_caps_new_simple ("video/x-cinepak", NULL);
@@ -4951,6 +4965,10 @@ qtdemux_audio_caps (GstQTDemux * qtdemux, QtDemuxStream * stream,
caps = gst_caps_new_simple ("audio/mpeg", "layer", G_TYPE_INT, 3,
"mpegversion", G_TYPE_INT, 1, NULL);
break;
+ case 0x20736d:
+ _codec ("AC-3 audio");
+ caps = gst_caps_new_simple ("audio/x-ac3", NULL);
+ break;
case GST_MAKE_FOURCC ('M', 'A', 'C', '3'):
_codec ("MACE-3");
caps = gst_caps_new_simple ("audio/x-mace",