diff options
author | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2004-10-18 19:08:05 +0000 |
---|---|---|
committer | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2004-10-18 19:08:05 +0000 |
commit | 8c4801a6b25d637f9b56e61b0b39d66b8208dc0a (patch) | |
tree | e6950569edfaf1ac8f3f431b28b8b1c2db3a9e28 | |
parent | 2fa65990a464d5292187b66cde870d9c9018d7df (diff) | |
download | xine-lib-8c4801a6b25d637f9b56e61b0b39d66b8208dc0a.tar.gz xine-lib-8c4801a6b25d637f9b56e61b0b39d66b8208dc0a.tar.bz2 |
patch by Gert Vervoort to handle AC3 audio when the sync word (0x0b 0x77)
is not aligned with the PES packet.
CVS patchset: 7048
CVS date: 2004/10/18 19:08:05
-rw-r--r-- | src/demuxers/demux_ts.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/demuxers/demux_ts.c b/src/demuxers/demux_ts.c index f95d39e5a..2be2e900c 100644 --- a/src/demuxers/demux_ts.c +++ b/src/demuxers/demux_ts.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: demux_ts.c,v 1.106 2004/09/02 14:27:56 hadess Exp $ + * $Id: demux_ts.c,v 1.107 2004/10/18 19:08:05 miguelfreitas Exp $ * * Demultiplexer for MPEG2 Transport Streams. * @@ -1166,10 +1166,19 @@ static void demux_ts_parse_pmt (demux_ts_t *this, case ISO_13818_PES_PRIVATE: for (i = 5; i < coded_length; i += stream[i+1] + 2) { if ((stream[i] == 0x6a) && (this->audioPid == INVALID_PID)) { + uint32_t format_identifier=0; #ifdef TS_PMT_LOG printf ("demux_ts: PMT AC3 audio pid 0x%.4x\n", pid); #endif - demux_ts_pes_new(this, this->media_num, pid, this->audio_fifo,stream[0]); + demux_ts_get_reg_desc(this, &format_identifier, + stream + 5, stream_info_length); + if (format_identifier == 0x41432d33) /* AC-3 */ + demux_ts_pes_new(this, this->media_num, pid, + this->audio_fifo, 0x81); + else + demux_ts_pes_new(this, this->media_num, pid, + this->audio_fifo,stream[0]); + this->audioPid = pid; this->audioMedia = this->media_num; demux_ts_get_lang_desc(this, this->audioLang, |