diff --git a/gst/isomp4/qtdemux.c b/gst/isomp4/qtdemux.c index 7df6259706..f2ea73b6c4 100644 --- a/gst/isomp4/qtdemux.c +++ b/gst/isomp4/qtdemux.c @@ -10493,6 +10493,11 @@ gst_qtdemux_handle_esds (GstQTDemux * qtdemux, QtDemuxStream * stream, caps = gst_caps_new_simple ("audio/x-ac3", "framed", G_TYPE_BOOLEAN, TRUE, NULL); break; + case 0xA9: /* AC3 */ + codec_name = "DTS audio"; + caps = gst_caps_new_simple ("audio/x-dts", + "framed", G_TYPE_BOOLEAN, TRUE, NULL); + break; case 0xE1: /* QCELP */ /* QCELP, the codec_data is a riff tag (little endian) with * more info (http://ftp.3gpp2.org/TSGC/Working/2003/2003-05-SanDiego/TSG-C-2003-05-San%20Diego/WG1/SWG12/C12-20030512-006%20=%20C12-20030217-015_Draft_Baseline%20Text%20of%20FFMS_R2.doc). */ @@ -11033,12 +11038,27 @@ qtdemux_audio_caps (GstQTDemux * qtdemux, QtDemuxStream * stream, "framed", G_TYPE_BOOLEAN, TRUE, NULL); stream->sampled = TRUE; break; + case GST_MAKE_FOURCC ('s', 'a', 'c', '3'): // Nero Recode case GST_MAKE_FOURCC ('a', 'c', '-', '3'): _codec ("AC-3 audio"); caps = gst_caps_new_simple ("audio/x-ac3", "framed", G_TYPE_BOOLEAN, TRUE, NULL); stream->sampled = TRUE; break; + case GST_MAKE_FOURCC ('d', 't', 's', 'c'): + case GST_MAKE_FOURCC ('D', 'T', 'S', ' '): + _codec ("DTS audio"); + caps = gst_caps_new_simple ("audio/x-dts", + "framed", G_TYPE_BOOLEAN, TRUE, NULL); + stream->sampled = TRUE; + break; + case GST_MAKE_FOURCC ('d', 't', 's', 'h'): // DTS-HD + case GST_MAKE_FOURCC ('d', 't', 's', 'l'): // DTS-HD Lossless + _codec ("DTS-HD audio"); + caps = gst_caps_new_simple ("audio/x-dts", + "framed", G_TYPE_BOOLEAN, TRUE, NULL); + stream->sampled = TRUE; + break; case GST_MAKE_FOURCC ('M', 'A', 'C', '3'): _codec ("MACE-3"); caps = gst_caps_new_simple ("audio/x-mace",