summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndre Pang <athp@users.sourceforge.net>2004-11-26 06:09:51 +0000
committerAndre Pang <athp@users.sourceforge.net>2004-11-26 06:09:51 +0000
commitaf72efe0be4bc8791453ae670be376c2838bccbf (patch)
tree7b0808056c48a2f5250530ed2cf0ed121655585c
parent5c31692730e5e0a129653492ab1e79956aeb576b (diff)
downloadxine-lib-af72efe0be4bc8791453ae670be376c2838bccbf.tar.gz
xine-lib-af72efe0be4bc8791453ae670be376c2838bccbf.tar.bz2
Update Mac OS X video output to use new alphablend API
CVS patchset: 7166 CVS date: 2004/11/26 06:09:51
-rw-r--r--src/video_out/video_out_macosx.m13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/video_out/video_out_macosx.m b/src/video_out/video_out_macosx.m
index 5e4be53e2..7a7bad769 100644
--- a/src/video_out/video_out_macosx.m
+++ b/src/video_out/video_out_macosx.m
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: video_out_macosx.m,v 1.10 2004/11/12 06:38:36 athp Exp $
+ * $Id: video_out_macosx.m,v 1.11 2004/11/26 06:09:51 athp Exp $
*
* This output driver makes use of xine's objective-c video_output
* classes located in the macosx folder.
@@ -62,6 +62,7 @@ typedef struct {
int ratio;
xine_t *xine;
id view;
+ alphablend_t alphablend_extra_data;
} macosx_driver_t;
typedef struct {
@@ -224,10 +225,12 @@ static void macosx_overlay_blend (vo_driver_t *this_gen, vo_frame_t *frame_gen,
/* TODO: It may be possible to accelerate the blending via Quartz
* Extreme ... */
blend_yuv(frame->vo_frame.base, overlay,
- frame->width, frame->height, frame->vo_frame.pitches);
+ frame->width, frame->height, frame->vo_frame.pitches,
+ &this->alphablend_extra_data);
else
blend_yuy2(frame->vo_frame.base[0], overlay,
- frame->width, frame->height, frame->vo_frame.pitches[0]);
+ frame->width, frame->height, frame->vo_frame.pitches[0],
+ &this->alphablend_extra_data);
}
}
@@ -291,6 +294,8 @@ static int macosx_gui_data_exchange(vo_driver_t *vo_driver, int data_type, void
static void macosx_dispose(vo_driver_t *vo_driver) {
macosx_driver_t *this = (macosx_driver_t *) vo_driver;
+ _x_alphablend_free(&this->alphablend_extra_data);
+
free(this);
}
@@ -325,6 +330,8 @@ static vo_driver_t *open_plugin(video_driver_class_t *driver_class, const void *
driver->vo_driver.dispose = macosx_dispose;
driver->vo_driver.redraw_needed = macosx_redraw_needed;
+ _x_alphablend_init(&driver->alphablend_extra_data, class->xine);
+
return &driver->vo_driver;
}