Mercurial > mplayer.hg
comparison libmpcodecs/dec_video.c @ 28806:77d1e5749a09
Swap order of VFCTRL_DRAW_EOSD and VFCTRL_DRAW_OSD so that the EOSD is drawn
below the OSD and document possible issues when this is changed.
Patch by Uoti (though originally intended for a different issue) with extra comment by me.
author | reimar |
---|---|
date | Fri, 06 Mar 2009 10:45:49 +0000 |
parents | df67d03dde3b |
children | 290420c32921 |
comparison
equal
deleted
inserted
replaced
28805:b382d065ba53 | 28806:77d1e5749a09 |
---|---|
413 unsigned int t2 = GetTimer(); | 413 unsigned int t2 = GetTimer(); |
414 vf_instance_t *vf = sh_video->vfilter; | 414 vf_instance_t *vf = sh_video->vfilter; |
415 // apply video filters and call the leaf vo/ve | 415 // apply video filters and call the leaf vo/ve |
416 int ret = vf->put_image(vf, mpi, pts); | 416 int ret = vf->put_image(vf, mpi, pts); |
417 if (ret > 0) { | 417 if (ret > 0) { |
418 vf->control(vf, VFCTRL_DRAW_OSD, NULL); | 418 // draw EOSD first so it ends up below the OSD. |
419 // Note that changing this is will not work right with vf_ass and the | |
420 // vos currently always draw the EOSD first in paused mode. | |
419 #ifdef CONFIG_ASS | 421 #ifdef CONFIG_ASS |
420 vf->control(vf, VFCTRL_DRAW_EOSD, NULL); | 422 vf->control(vf, VFCTRL_DRAW_EOSD, NULL); |
421 #endif | 423 #endif |
424 vf->control(vf, VFCTRL_DRAW_OSD, NULL); | |
422 } | 425 } |
423 | 426 |
424 t2 = GetTimer()-t2; | 427 t2 = GetTimer()-t2; |
425 vout_time_usage += t2*0.000001; | 428 vout_time_usage += t2*0.000001; |
426 | 429 |