summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraurel <aurel@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-08-27 11:31:53 +0000
committeraurel <aurel@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-08-27 11:31:53 +0000
commita5f69284d90323fc865e18033b6a22c11707fe20 (patch)
tree52b9ce98a17af66fa09a3d0bc8a55db1ed77fde5
parentb5ddaf20bae3d5d86951256502702910e44de207 (diff)
downloadmpv-a5f69284d90323fc865e18033b6a22c11707fe20.tar.bz2
mpv-a5f69284d90323fc865e18033b6a22c11707fe20.tar.xz
handle the lavfpref demuxer in the same way as the lavf one
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27489 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r--command.c1
-rw-r--r--libmpcodecs/vd_ffmpeg.c3
-rw-r--r--libmpdemux/video.c1
3 files changed, 4 insertions, 1 deletions
diff --git a/command.c b/command.c
index 116317432b..e5b17abafe 100644
--- a/command.c
+++ b/command.c
@@ -1356,6 +1356,7 @@ static int mp_property_sub(m_option_t * prop, int action, void *arg,
if ((mpctx->demuxer->type == DEMUXER_TYPE_MATROSKA
|| mpctx->demuxer->type == DEMUXER_TYPE_LAVF
+ || mpctx->demuxer->type == DEMUXER_TYPE_LAVF_PREFERRED
|| mpctx->demuxer->type == DEMUXER_TYPE_OGG)
&& d_sub && d_sub->sh && dvdsub_id >= 0) {
const char* lang = ((sh_sub_t*)d_sub->sh)->lang;
diff --git a/libmpcodecs/vd_ffmpeg.c b/libmpcodecs/vd_ffmpeg.c
index 43ac33729b..e082d2a5a0 100644
--- a/libmpcodecs/vd_ffmpeg.c
+++ b/libmpcodecs/vd_ffmpeg.c
@@ -755,7 +755,8 @@ static mp_image_t* decode(sh_video_t *sh,void* data,int len,int flags){
avctx->hurry_up=(flags&3)?((flags&2)?2:1):0;
- if(sh->ds->demuxer->type != DEMUXER_TYPE_LAVF)
+ if(sh->ds->demuxer->type != DEMUXER_TYPE_LAVF &&
+ sh->ds->demuxer->type != DEMUXER_TYPE_LAVF_PREFERRED)
if( sh->format == mmioFOURCC('R', 'V', '1', '0')
|| sh->format == mmioFOURCC('R', 'V', '1', '3')
|| sh->format == mmioFOURCC('R', 'V', '2', '0')
diff --git a/libmpdemux/video.c b/libmpdemux/video.c
index 0e7dfe618c..1faf077840 100644
--- a/libmpdemux/video.c
+++ b/libmpdemux/video.c
@@ -587,6 +587,7 @@ int video_read_frame(sh_video_t* sh_video,float* frame_time_ptr,unsigned char**
}
break;
case DEMUXER_TYPE_LAVF:
+ case DEMUXER_TYPE_LAVF_PREFERRED:
if((int)sh_video->fps==1000 || (int)sh_video->fps<=1){
double next_pts = ds_get_next_pts(d_video);
double d= (next_pts != MP_NOPTS_VALUE) ? next_pts - d_video->pts : d_video->pts-pts1;