GST_MTS_DESC_EXT_DVB_VIDEO_DEPTH_RANGE = 0x10,
GST_MTS_DESC_EXT_DVB_T2MI = 0x11,
GST_MTS_DESC_EXT_DVB_URI_LINKAGE = 0x13,
+ GST_MTS_DESC_EXT_DVB_AC4 = 0x15,
} GstMpegtsDVBExtendedDescriptorType;
/* GST_MTS_DESC_DVB_CAROUSEL_IDENTIFIER (0x13) */
#define ST_VIDEO_DIRAC 0xd1
/* private stream types */
+#define ST_PS_AUDIO_AC4 0x06
#define ST_PS_VIDEO_MPEG2_DCII 0x80
#define ST_PS_AUDIO_AC3 0x81
#define ST_PS_AUDIO_EAC3 0x87
#define ST_PS_DVD_SUBPICTURE 0xff
/* Blu-ray related (registration: 'HDMV'*/
+#define ST_BD_AUDIO_AC4 0x06
#define ST_BD_AUDIO_LPCM 0x80
#define ST_BD_AUDIO_AC3 0x81
#define ST_BD_AUDIO_DTS 0x82
"emphasis = (boolean) { FALSE, TRUE }, " \
"mute = (boolean) { FALSE, TRUE }; " \
"audio/x-ac3; audio/x-eac3;" \
+ "audio/x-ac4;" \
"audio/x-dts;" \
"audio/x-opus;" \
"audio/x-private-ts-lpcm" \
is_audio = TRUE;
caps = gst_caps_new_empty_simple ("audio/x-eac3");
break;
+ case ST_BD_AUDIO_AC4:
+ is_audio = TRUE;
+ caps = gst_caps_new_empty_simple ("audio/x-ac4");
+ break;
case ST_BD_AUDIO_AC3_TRUE_HD:
is_audio = TRUE;
caps = gst_caps_new_empty_simple ("audio/x-true-hd");
/* FIXME: Move all of this into a common method (there might be other
* types also, depending on registratino descriptors also
*/
+
+ desc =
+ mpegts_get_descriptor_from_stream (bstream,
+ GST_MTS_DESC_DVB_EXTENSION);
+ if (desc != NULL && desc->tag_extension == GST_MTS_DESC_EXT_DVB_AC4) {
+ GST_LOG ("ac4 audio");
+ is_audio = TRUE;
+ caps = gst_caps_new_empty_simple ("audio/x-ac4");
+ break;
+ }
+
desc = mpegts_get_descriptor_from_stream (bstream, GST_MTS_DESC_DVB_AC3);
if (desc) {
GST_LOG ("ac3 audio");