diff options
author | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2007-12-07 15:28:35 +0100 |
---|---|---|
committer | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2007-12-07 15:28:35 +0100 |
commit | 18425f7e1c44a3d9280cbc6f9220032c4077dd25 (patch) | |
tree | e88354068676818af5747e8ccf3e8c620347b7c5 /src | |
parent | 048e921c00ddd8acbb003d24692355638ef739d4 (diff) | |
parent | 545be54bdc7e0879cab0d5bb964816b88a354c72 (diff) | |
download | xine-lib-18425f7e1c44a3d9280cbc6f9220032c4077dd25.tar.gz xine-lib-18425f7e1c44a3d9280cbc6f9220032c4077dd25.tar.bz2 |
Merge from 1.1.
Diffstat (limited to 'src')
-rw-r--r-- | src/libffmpeg/ff_video_decoder.c | 10 | ||||
-rw-r--r-- | src/libffmpeg/ffmpeg_encoder.c | 2 |
2 files changed, 7 insertions, 5 deletions
diff --git a/src/libffmpeg/ff_video_decoder.c b/src/libffmpeg/ff_video_decoder.c index a941481ae..0f63df738 100644 --- a/src/libffmpeg/ff_video_decoder.c +++ b/src/libffmpeg/ff_video_decoder.c @@ -213,12 +213,14 @@ static void release_buffer(struct AVCodecContext *context, AVFrame *av_frame){ ff_video_decoder_t *this = (ff_video_decoder_t *)context->opaque; if (av_frame->type == FF_BUFFER_TYPE_USER) { - vo_frame_t *img = (vo_frame_t *)av_frame->opaque; + if ( av_frame->opaque ) { + vo_frame_t *img = (vo_frame_t *)av_frame->opaque; + + img->free(img); + } + xine_list_iterator_t it; - assert(av_frame->opaque); - img->free(img); - it = xine_list_find(this->dr1_frames, av_frame); assert(it); if( it != NULL ) diff --git a/src/libffmpeg/ffmpeg_encoder.c b/src/libffmpeg/ffmpeg_encoder.c index d9c4ccf5d..7fe65c7fa 100644 --- a/src/libffmpeg/ffmpeg_encoder.c +++ b/src/libffmpeg/ffmpeg_encoder.c @@ -70,7 +70,7 @@ int dxr3_encoder_init(dxr3_driver_t *drv) lavc_data_t* this; avcodec_init(); - register_avcodec(&mpeg1video_encoder); + avcodec_register_all(); lprintf("lavc init , version %x\n", avcodec_version()); this = xine_xmalloc(sizeof(lavc_data_t)); if (!this) return 0; |