diff options
author | Daniel Caujolle-Bert <f1rmb@users.sourceforge.net> | 2002-01-25 00:35:45 +0000 |
---|---|---|
committer | Daniel Caujolle-Bert <f1rmb@users.sourceforge.net> | 2002-01-25 00:35:45 +0000 |
commit | 8780a9be7227d1920f1d8c39c698573f0957260e (patch) | |
tree | 47eb968c70ab7eab0c23d9c53b03cf8b6d0c6aed /src | |
parent | 087d6b782a076904f5fd57ee7d2392e241621e65 (diff) | |
download | xine-lib-8780a9be7227d1920f1d8c39c698573f0957260e.tar.gz xine-lib-8780a9be7227d1920f1d8c39c698573f0957260e.tar.bz2 |
Remove guenter_rpms.sh from configure.in. Check INPUT_CAP_CLUT capability
of current input plugin before retrieving the clut. send UI events when
audio/spu channel changes.
CVS patchset: 1450
CVS date: 2002/01/25 00:35:45
Diffstat (limited to 'src')
-rw-r--r-- | src/demuxers/demux_mpeg_block.c | 9 | ||||
-rw-r--r-- | src/xine-engine/video_decoder.c | 27 |
2 files changed, 28 insertions, 8 deletions
diff --git a/src/demuxers/demux_mpeg_block.c b/src/demuxers/demux_mpeg_block.c index 820e4a1fa..3affa3368 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.73 2002/01/15 13:51:10 guenter Exp $ + * $Id: demux_mpeg_block.c,v 1.74 2002/01/25 00:35:46 f1rmb Exp $ * * demultiplexer for mpeg 1/2 program streams * @@ -849,11 +849,12 @@ static void demux_mpeg_block_start (demux_plugin_t *this_gen, buf = this->video_fifo->buffer_pool_alloc (this->video_fifo); - if(this->input->get_optional_data(this->input, buf->mem, - INPUT_OPTIONAL_DATA_CLUT) == INPUT_OPTIONAL_SUCCESS) { + if ((this->input->get_capabilities(this->input) & INPUT_CAP_CLUT) && + ((this->input->get_optional_data(this->input, buf->mem, INPUT_OPTIONAL_DATA_CLUT) + == INPUT_OPTIONAL_SUCCESS))) { buf->type = BUF_SPU_CLUT; buf->content = buf->mem; - + this->video_fifo->put(this->video_fifo, buf); } else { buf->free_buffer(buf); diff --git a/src/xine-engine/video_decoder.c b/src/xine-engine/video_decoder.c index d4fef6664..6c0f1db43 100644 --- a/src/xine-engine/video_decoder.c +++ b/src/xine-engine/video_decoder.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: video_decoder.c,v 1.70 2002/01/14 00:34:22 guenter Exp $ + * $Id: video_decoder.c,v 1.71 2002/01/25 00:35:46 f1rmb Exp $ * */ @@ -127,9 +127,19 @@ void *video_decoder_loop (void *this_gen) { break; case BUF_CONTROL_SPU_CHANNEL: - this->spu_channel_auto = buf->decoder_info[0]; - if (this->spu_channel_user == -1) - this->spu_channel = this->spu_channel_auto; + { + xine_ui_event_t ui_event; + + this->spu_channel_auto = buf->decoder_info[0]; + if (this->spu_channel_user == -1) + this->spu_channel = this->spu_channel_auto; + + /* Inform UI of SPU channel changes */ + ui_event.event.type = XINE_EVENT_UI_CHANNELS_CHANGED; + ui_event.data = NULL; + xine_send_event(this, &ui_event.event); + + } break; case BUF_CONTROL_END: @@ -199,6 +209,15 @@ void *video_decoder_loop (void *this_gen) { break; case BUF_CONTROL_AUDIO_CHANNEL: + { + xine_ui_event_t ui_event; + /* Inform UI of AUDIO channel changes */ + ui_event.event.type = XINE_EVENT_UI_CHANNELS_CHANGED; + ui_event.data = NULL; + xine_send_event(this, &ui_event.event); + } + break; + case BUF_CONTROL_NOP: break; |