diff options
Diffstat (limited to 'src/libffmpeg/xine_decoder.c')
-rw-r--r-- | src/libffmpeg/xine_decoder.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/libffmpeg/xine_decoder.c b/src/libffmpeg/xine_decoder.c index eb2c11e22..9ddbf2a7b 100644 --- a/src/libffmpeg/xine_decoder.c +++ b/src/libffmpeg/xine_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: xine_decoder.c,v 1.71 2002/11/18 00:32:20 miguelfreitas Exp $ + * $Id: xine_decoder.c,v 1.72 2002/11/20 11:57:43 mroi Exp $ * * xine decoder plugin using ffmpeg * @@ -132,7 +132,7 @@ static void init_video_codec (ff_video_decoder_t *this, AVCodec *codec) { } this->decoder_ok = 1; - this->stream->video_out->open (this->stream->video_out); + this->stream->video_out->open (this->stream->video_out, this->stream); /* needed to play streams generated by MS ISO MPEG4 codec. Michael Niedermayer explained: @@ -575,7 +575,7 @@ static void ff_decode_data (video_decoder_t *this_gen, buf_element_t *buf) { } } - this->skipframes = img->draw(img); + this->skipframes = img->draw(img, this->stream); if( this->skipframes < 0 ) this->skipframes = 0; img->free(img); @@ -649,7 +649,7 @@ static void ff_dispose (video_decoder_t *this_gen) { if (this->decoder_ok) { avcodec_close (this->context); - this->stream->video_out->close(this->stream->video_out); + this->stream->video_out->close(this->stream->video_out, this->stream); this->decoder_ok = 0; } @@ -810,7 +810,7 @@ static void ff_audio_decode_data (audio_decoder_t *this_gen, buf_element_t *buf) if (!this->output_open) { this->output_open = this->stream->audio_out->open(this->stream->audio_out, - this->audio_bits, this->audio_sample_rate, + this->stream, this->audio_bits, this->audio_sample_rate, (this->audio_channels == 2) ? AO_CAP_MODE_STEREO : AO_CAP_MODE_MONO); } @@ -867,7 +867,8 @@ static void ff_audio_decode_data (audio_decoder_t *this_gen, buf_element_t *buf) audio_buffer->vpts = buf->pts; buf->pts = 0; /* only first buffer gets the real pts */ - this->stream->audio_out->put_buffer (this->stream->audio_out, audio_buffer); + this->stream->audio_out->put_buffer (this->stream->audio_out, + audio_buffer, this->stream); out += bytes_to_send; } @@ -907,7 +908,7 @@ static void ff_audio_dispose (audio_decoder_t *this_gen) { ff_audio_decoder_t *this = (ff_audio_decoder_t *) this_gen; if (this->output_open) - this->stream->audio_out->close (this->stream->audio_out); + this->stream->audio_out->close (this->stream->audio_out, this->stream); this->output_open = 0; free(this->buf); @@ -1013,7 +1014,7 @@ static decoder_info_t dec_info_ffmpeg_audio = { plugin_info_t xine_plugin_info[] = { /* type, API, "name", version, special_info, init_function */ - { PLUGIN_VIDEO_DECODER, 12, "ffmpegvideo", XINE_VERSION_CODE, &dec_info_ffmpeg_video, init_video_plugin }, - { PLUGIN_AUDIO_DECODER, 11, "ffmpegaudio", XINE_VERSION_CODE, &dec_info_ffmpeg_audio, init_audio_plugin }, + { PLUGIN_VIDEO_DECODER, 13, "ffmpegvideo", XINE_VERSION_CODE, &dec_info_ffmpeg_video, init_video_plugin }, + { PLUGIN_AUDIO_DECODER, 12, "ffmpegaudio", XINE_VERSION_CODE, &dec_info_ffmpeg_audio, init_audio_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } }; |