annotate TOOLS/emboss.fp @ 32714:5248e989612a

Remove libswscale subdirectory. libswscale has been moved to FFmpeg since some time and only kept in the MPlayer repository for historical reasons and difficulty in moving code complete with history between Subversion repositories. FFmpeg now contains libswscale directly without indirection through an svn:externals property, so no reason to keep libswscale in MPlayer remains.
author diego
date Thu, 20 Jan 2011 09:41:43 +0000
parents cae067bfc231
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16488
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
1 !!ARBfp1.0
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
2 # Custom YUV->RGB conversion program for MPlayer's -vo gl.
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
3 # Copyleft (C) Reimar Döffinger, 2005
25605
cae067bfc231 Relicense to GPL v2 or later with Reimar's permission.
diego
parents: 19018
diff changeset
4 # Licensed under the GNU GPL v2 or later
16488
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
5 # Usage: mplayer -vo gl:yuv=4:customprog=emboss.fp
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
6 # This is an emboss effect.
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
7 PARAM sizes = program.env[0];
19018
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
8 TEMP res, yuv, pos, tmp;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
9 TEX yuv.r, fragment.texcoord[0], texture[0], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
10 MAD pos, sizes.xyxy, {-0.5, 0, 0, -0.8660}, fragment.texcoord[0].xyxy;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
11 TEX tmp.r, pos.xyxy, texture[0], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
12 MAD yuv.r, yuv.rrrr, {2}, -tmp.rrrr;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
13 TEX tmp.r, pos.zwzw, texture[0], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
14 SUB yuv.r, yuv.rrrr, tmp.rrrr;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
15 TEX yuv.g, fragment.texcoord[1], texture[1], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
16 TEX yuv.b, fragment.texcoord[2], texture[2], 2D;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
17 # now do the normal YUV -> RGB conversion but with 0.5 offset
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
18 MAD res, yuv.rrrr, {1.164, 1.164, 1.164, 0}, {-0.37416, 1.03133, -0.58599, 0.125};
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
19 MAD res.rgb, yuv.gggg, {0, -0.391, 2.018, 0}, res;
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
20 MAD res.rgb, yuv.bbbb, {1.596, -0.813, 0, 0}, res;
16488
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
21 # do gamma texture lookup
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
22 TEX res.r, res.raaa, texture[3], 2D;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
23 ADD res.a, res.a, 0.25;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
24 TEX res.g, res.gaaa, texture[3], 2D;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
25 ADD res.a, res.a, 0.25;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
26 TEX res.b, res.baaa, texture[3], 2D;
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
27 # move res into result, this allows easily commenting out some parts.
19018
69785427a61e Fix for changed env parameter contents and improve speed.
reimar
parents: 16488
diff changeset
28 MOV result.color, res;
16488
3191dcb27a12 hardware color-space conversion for vo_gl and vo_gl2
reimar
parents:
diff changeset
29 END