diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2009-02-15 08:07:36 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2009-02-15 08:07:36 +0000 |
commit | 078091e5deeb6279e71d247332919cf2cbedc1b5 (patch) | |
tree | d1cf4941a7c539f9d58f79ab7f7155b7fe00de61 | |
parent | f8b220a35cde199b0ac57c6b4e2567b0d9763c8f (diff) | |
download | mpv-078091e5deeb6279e71d247332919cf2cbedc1b5.tar.bz2 mpv-078091e5deeb6279e71d247332919cf2cbedc1b5.tar.xz |
Move direct-rendering hack from vo_xvmc to vf_vo, so it does not need to
be duplicated for other systems like VDPAU or VAAPI.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28581 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | libmpcodecs/vf_vo.c | 5 | ||||
-rw-r--r-- | libvo/vo_xvmc.c | 1 |
2 files changed, 4 insertions, 2 deletions
diff --git a/libmpcodecs/vf_vo.c b/libmpcodecs/vf_vo.c index 7e42c77034..4e0f1374c1 100644 --- a/libmpcodecs/vf_vo.c +++ b/libmpcodecs/vf_vo.c @@ -165,7 +165,10 @@ static int query_format(struct vf_instance_s* vf, unsigned int fmt){ static void get_image(struct vf_instance_s* vf, mp_image_t *mpi){ - if(vo_directrendering && vo_config_count) + if(!vo_config_count) return; + // GET_IMAGE is required for hardware-accelerated formats + if(vo_directrendering || + IMGFMT_IS_XVMC(mpi->imgfmt) || IMGFMT_IS_VDPAU(mpi->imgfmt)) video_out->control(VOCTRL_GET_IMAGE,mpi); } diff --git a/libvo/vo_xvmc.c b/libvo/vo_xvmc.c index d084528d18..5d43707cf5 100644 --- a/libvo/vo_xvmc.c +++ b/libvo/vo_xvmc.c @@ -683,7 +683,6 @@ skip_surface_allocation: free_element = 0; first_frame = 1; - vo_directrendering = 1;//ugly hack, coz xvmc works only with direct rendering image_format=format; return 0; } |