[vlc-commits] opengl vout: fixed chroma issue with dated PowerPC-based Macs, which run OpenGL 1.3 only and don' t support the GL_ARB_fragment_program extension
Felix Paul Kühne
git at videolan.org
Sun Jun 3 21:53:41 CEST 2012
vlc/vlc-2.0 | branch: master | Felix Paul Kühne <fkuehne at videolan.org> | Sun Jun 3 21:48:13 2012 +0200| [2c5cab2aeba49d1a5d9ba2a067f191c6103e5c58] | committer: Felix Paul Kühne
opengl vout: fixed chroma issue with dated PowerPC-based Macs, which run OpenGL 1.3 only and don't support the GL_ARB_fragment_program extension
(cherry picked from commit ac5631c730899f750338b1e47335f2159e72d407)
> http://git.videolan.org/gitweb.cgi/vlc/vlc-2.0.git/?a=commit;h=2c5cab2aeba49d1a5d9ba2a067f191c6103e5c58
---
NEWS | 2 ++
modules/video_output/opengl.c | 12 ++++++++++++
2 files changed, 14 insertions(+)
diff --git a/NEWS b/NEWS
index 0266811..6cba1ef 100644
--- a/NEWS
+++ b/NEWS
@@ -8,6 +8,8 @@ Video Output:
* Various fixes on Mac OS X, notably for crop, zoom, osd and menu support
* Added menu support for libvlc / VLCKit applications on Mac OS X
* Misc fixes in OpenGL module
+ * Fixed video output on PowerPC-based Macs equipped with an ATI Radeon 7500,
+ an ATI Radeon 9200 or a NVIDIA GeForceFX 5200 Ultra.
Access:
* Reworked Digital TV module for Windows. DVB-T and DVB-C work again.
diff --git a/modules/video_output/opengl.c b/modules/video_output/opengl.c
index af3235c..e64b219 100644
--- a/modules/video_output/opengl.c
+++ b/modules/video_output/opengl.c
@@ -263,6 +263,18 @@ vout_display_opengl_t *vout_display_opengl_New(video_format_t *fmt,
list++;
}
}
+#if (defined (__ppc__) || defined (__ppc64__) || defined (__powerpc__)) && defined (__APPLE__)
+ /* This is a work-around for dated PowerPC-based Macs, which run OpenGL 1.3 only and don't
+ * support the GL_ARB_fragment_program extension.
+ * Affected devices are all Macs built between 2002 and 2005 with an ATI Radeon 7500,
+ * an ATI Radeon 9200 or a NVIDIA GeForceFX 5200 Ultra. */
+ else
+ {
+ vgl->tex_format = GL_YCBCR_422_APPLE;
+ vgl->tex_type = GL_UNSIGNED_SHORT_8_8_APPLE;
+ vgl->fmt.i_chroma = VLC_CODEC_YUYV;
+ }
+#endif
vgl->chroma = vlc_fourcc_GetChromaDescription(vgl->fmt.i_chroma);
vgl->use_multitexture = vgl->chroma->plane_count > 1;
More information about the vlc-commits
mailing list