diff options
author | Petri Hintukainen <phintuka@users.sourceforge.net> | 2009-11-30 01:43:41 +0200 |
---|---|---|
committer | Petri Hintukainen <phintuka@users.sourceforge.net> | 2009-11-30 01:43:41 +0200 |
commit | 6d410af50e98533e07dd8ebb8fdd3870192f8a73 (patch) | |
tree | 6f4144f2b6b5f5e551a16b93679f7d16b0a30df2 | |
parent | c9567a7fa4d2f182d050c5e17855d5eed6548019 (diff) | |
download | xine-lib-6d410af50e98533e07dd8ebb8fdd3870192f8a73.tar.gz xine-lib-6d410af50e98533e07dd8ebb8fdd3870192f8a73.tar.bz2 |
Demux BluRay DTS and TrueHD audio streams
-rw-r--r-- | src/demuxers/demux_ts.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/demuxers/demux_ts.c b/src/demuxers/demux_ts.c index d258d9c54..d662bb0ed 100644 --- a/src/demuxers/demux_ts.c +++ b/src/demuxers/demux_ts.c @@ -229,6 +229,14 @@ STREAM_SPU_BITMAP_HDMV = 0x90, STREAM_VIDEO_VC1 = 0xea, /* VC-1 Video */ + + HDMV_AUDIO_80_PCM = 0x80, /* BluRay PCM */ + HDMV_AUDIO_82_DTS = 0x82, /* DTS */ + HDMV_AUDIO_83_TRUEHD = 0x83, /* Dolby TrueHD, primary audio */ + HDMV_AUDIO_84_EAC3 = 0x84, /* Dolby Digital plus, primary audio */ + HDMV_AUDIO_85_DTS_HRA = 0x85, /* DTS-HRA */ + HDMV_AUDIO_86_DTS_HD_MA = 0x86, /* DTS-HD Master audio */ + } streamType; #define WRAP_THRESHOLD 270000 @@ -800,6 +808,19 @@ static int demux_ts_parse_pes_header (xine_t *xine, demux_ts_media *m, m->type |= BUF_AUDIO_A52; return 1; + } else if (m->descriptor_tag == HDMV_AUDIO_83_TRUEHD) { + /* TODO: separate AC3 and TrueHD streams ... */ + m->content = p; + m->size = packet_len; + m->type |= BUF_AUDIO_A52; + return 1; + + } else if (m->descriptor_tag == HDMV_AUDIO_86_DTS_HD_MA ) { + m->content = p; + m->size = packet_len; + m->type |= BUF_AUDIO_DTS; + return 1; + } else if (m->descriptor_tag == ISO_13818_PES_PRIVATE && p[0] == 0x20 && p[1] == 0x00) { /* DVBSUB */ |