diff options
author | uid32519 <none@none> | 2001-07-04 17:10:24 +0000 |
---|---|---|
committer | uid32519 <none@none> | 2001-07-04 17:10:24 +0000 |
commit | 507e81ddf0454a0b740a69f69d917ce67075065f (patch) | |
tree | d935d772f266ee49a6a73341e1a34afda4b383d8 /src/demuxers/demux_mpeg_block.c | |
parent | c8d64e87f29e42dc2f6f0068e575dd10188999af (diff) | |
download | xine-lib-507e81ddf0454a0b740a69f69d917ce67075065f.tar.gz xine-lib-507e81ddf0454a0b740a69f69d917ce67075065f.tar.bz2 |
spu support updated (unfinished) from James
CVS patchset: 250
CVS date: 2001/07/04 17:10:24
Diffstat (limited to 'src/demuxers/demux_mpeg_block.c')
-rw-r--r-- | src/demuxers/demux_mpeg_block.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/demuxers/demux_mpeg_block.c b/src/demuxers/demux_mpeg_block.c index be362d0f0..2aa9e2a48 100644 --- a/src/demuxers/demux_mpeg_block.c +++ b/src/demuxers/demux_mpeg_block.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_mpeg_block.c,v 1.23 2001/07/03 21:25:04 guenter Exp $ + * $Id: demux_mpeg_block.c,v 1.24 2001/07/04 17:10:24 uid32519 Exp $ * * demultiplexer for mpeg 1/2 program streams * @@ -371,6 +371,11 @@ static void *demux_mpeg_block_loop (void *this_gen) { buf->decoder_info[0] = 0; /* stream finished */ this->audio_fifo->put (this->audio_fifo, buf); } + + buf = this->spu_fifo->buffer_pool_alloc (this->spu_fifo); + buf->type = BUF_CONTROL_END; + buf->decoder_info[0] = 0; /* stream finished */ + this->spu_fifo->put (this->spu_fifo, buf); } pthread_exit(NULL); @@ -411,6 +416,12 @@ static void demux_mpeg_block_stop (demux_plugin_t *this_gen) { this->audio_fifo->put (this->audio_fifo, buf); } + buf = this->spu_fifo->buffer_pool_alloc (this->spu_fifo); + buf->type = BUF_CONTROL_END; + buf->decoder_info[0] = 1; /* forced */ + + this->spu_fifo->put (this->spu_fifo, buf); + } static int demux_mpeg_block_get_status (demux_plugin_t *this_gen) { @@ -454,6 +465,10 @@ static void demux_mpeg_block_start (demux_plugin_t *this_gen, this->audio_fifo->put (this->audio_fifo, buf); } + buf = this->spu_fifo->buffer_pool_alloc (this->spu_fifo); + buf->type = BUF_CONTROL_START; + this->spu_fifo->put (this->spu_fifo, buf); + if((this->input->get_capabilities(this->input) & INPUT_CAP_SEEKABLE) != 0) { int num_buffers = NUM_PREVIEW_BUFFERS; |