Mercurial > mplayer.hg
annotate TOOLS/emboss.fp @ 32676:db882cd69776
Do not #define _WIN32 on the command line for Cygwin.
Newer Cygwin versions no longer do this and hopefully we should be able
to survive without this hack as well. This change necessitates adapting
two #ifdefs in the MPlayer codebase. It is committed untested as I do
not have access to a Cygwin system.
author | diego |
---|---|
date | Thu, 06 Jan 2011 12:42:59 +0000 |
parents | cae067bfc231 |
children |
rev | line source |
---|---|
16488 | 1 !!ARBfp1.0 |
2 # Custom YUV->RGB conversion program for MPlayer's -vo gl. | |
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 | 5 # Usage: mplayer -vo gl:yuv=4:customprog=emboss.fp |
6 # This is an emboss effect. | |
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 | 21 # do gamma texture lookup |
22 TEX res.r, res.raaa, texture[3], 2D; | |
23 ADD res.a, res.a, 0.25; | |
24 TEX res.g, res.gaaa, texture[3], 2D; | |
25 ADD res.a, res.a, 0.25; | |
26 TEX res.b, res.baaa, texture[3], 2D; | |
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 | 29 END |