From: <li...@yo...> - 2007-04-17 15:44:32
|
# HG changeset patch # User Darren Salt <li...@yo...> # Date 1176778216 -3600 # Node ID b9e59c42c5a622a99c4f324dbfbd98f63e3c3997 # Parent 769f13813a07bee380f166ae57d03d840909129b Fix DVD playback (was hanging when either the AC3 or DTS demuxers were probed). This may have side-effects wrt other streams; CDDA is fine, though. diff -r b9e59c42c5a622a99c4f324dbfbd98f63e3c3997 -r 769f13813a07bee380f166ae57d03d840909129b src/demuxers/demux_ac3.c --- a/src/demuxers/demux_ac3.c Tue Apr 17 03:50:16 2007 +0100 +++ b/src/demuxers/demux_ac3.c Mon Apr 16 22:12:46 2007 +0100 @@ -135,7 +135,7 @@ static int open_ac3_file(demux_ac3_t *th uint8_t *peak; blocksize = this->input->get_blocksize(this->input); - if (blocksize) { + if (blocksize && INPUT_IS_SEEKABLE(this->input)) { this->input->seek(this->input, 0, SEEK_SET); buf_element_t *buf = this->input->read_block(this->input, this->stream->audio_fifo, diff -r b9e59c42c5a622a99c4f324dbfbd98f63e3c3997 -r 769f13813a07bee380f166ae57d03d840909129b src/demuxers/demux_dts.c --- a/src/demuxers/demux_dts.c Tue Apr 17 03:50:16 2007 +0100 +++ b/src/demuxers/demux_dts.c Mon Apr 16 22:12:46 2007 +0100 @@ -85,7 +85,7 @@ static int open_dts_file(demux_dts_t *th lprintf("open_dts_file\n"); blocksize = this->input->get_blocksize(this->input); - if (blocksize) { + if (blocksize && INPUT_IS_SEEKABLE(this->input)) { // this->input->seek(this->input, 0, SEEK_SET); buf_element_t *buf = this->input->read_block(this->input, this->stream->audio_fifo, |