summaryrefslogtreecommitdiff
path: root/src/video_out/video_out_opengl.c
diff options
context:
space:
mode:
authorDarren Salt <linux@youmustbejoking.demon.co.uk>2012-02-08 23:41:35 +0000
committerDarren Salt <linux@youmustbejoking.demon.co.uk>2012-02-08 23:41:35 +0000
commit013fde587fae684931759737d450d6e0f45432ef (patch)
tree4bdac13f22191f6dfd09f6fa91c705364d43dec5 /src/video_out/video_out_opengl.c
parent65723aa841ea45d2974e405899687f5f6901aa31 (diff)
parenta5be135136fe669714ad4ac9c22519f06a8b2a25 (diff)
downloadxine-lib-013fde587fae684931759737d450d6e0f45432ef.tar.gz
xine-lib-013fde587fae684931759737d450d6e0f45432ef.tar.bz2
Merge from 1.2.1-branch.
Diffstat (limited to 'src/video_out/video_out_opengl.c')
-rw-r--r--src/video_out/video_out_opengl.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/video_out/video_out_opengl.c b/src/video_out/video_out_opengl.c
index d00a916e1..570afa2fd 100644
--- a/src/video_out/video_out_opengl.c
+++ b/src/video_out/video_out_opengl.c
@@ -1482,6 +1482,20 @@ static void opengl_overlay_blend (vo_driver_t *this_gen,
XUnlockDisplay (this->display);
}
} else {
+
+ if (!frame->rgb_dst) {
+ if (frame->format == XINE_IMGFMT_YV12) {
+ _x_blend_yuv(frame->vo_frame.base, overlay,
+ frame->width, frame->height, frame->vo_frame.pitches,
+ &this->alphablend_extra_data);
+ } else {
+ _x_blend_yuy2(frame->vo_frame.base[0], overlay,
+ frame->width, frame->height, frame->vo_frame.pitches[0],
+ &this->alphablend_extra_data);
+ }
+ return;
+ }
+
if (!overlay->rgb_clut || !overlay->hili_rgb_clut)
opengl_overlay_clut_yuv2rgb (this, overlay, frame);