[Hdrflow-svn] SF.net SVN: hdrflow: [399] trunk/lib/openlibraries/src/openimagelib
Status: Pre-Alpha
Brought to you by:
glslang
From: <gl...@us...> - 2008-01-08 23:14:59
|
Revision: 399 http://hdrflow.svn.sourceforge.net/hdrflow/?rev=399&view=rev Author: glslang Date: 2008-01-08 15:14:58 -0800 (Tue, 08 Jan 2008) Log Message: ----------- + rec709 transfer function Modified Paths: -------------- trunk/lib/openlibraries/src/openimagelib/il/lut_functions.cpp trunk/lib/openlibraries/src/openimagelib/il/lut_functions.hpp trunk/lib/openlibraries/src/openimagelib/py/lut_functions.cpp Modified: trunk/lib/openlibraries/src/openimagelib/il/lut_functions.cpp =================================================================== --- trunk/lib/openlibraries/src/openimagelib/il/lut_functions.cpp 2008-01-06 11:09:50 UTC (rev 398) +++ trunk/lib/openlibraries/src/openimagelib/il/lut_functions.cpp 2008-01-08 23:14:58 UTC (rev 399) @@ -22,4 +22,20 @@ return 1.055f * powf( v, 1.0f / 2.4f ) - 0.055f; } +float to_rec709( float v ) +{ + if( v < 0.018f ) + return v * 4.5f; + else + return 1.099f * powf( v, 0.45f ) - 0.099f; +} + +float from_rec709( float v ) +{ + if( v < 0.081 ) + return v / 4.5f; + else + return powf( ( v + 0.099f) / 1.099f, 1.0f / 0.45f ); +} + } } } Modified: trunk/lib/openlibraries/src/openimagelib/il/lut_functions.hpp =================================================================== --- trunk/lib/openlibraries/src/openimagelib/il/lut_functions.hpp 2008-01-06 11:09:50 UTC (rev 398) +++ trunk/lib/openlibraries/src/openimagelib/il/lut_functions.hpp 2008-01-08 23:14:58 UTC (rev 399) @@ -11,6 +11,8 @@ namespace olib { namespace openimagelib { namespace il { IL_DECLSPEC float to_sRGB( float v ); +IL_DECLSPEC float to_rec709( float v ); +IL_DECLSPEC float from_rec709( float v ); } } } Modified: trunk/lib/openlibraries/src/openimagelib/py/lut_functions.cpp =================================================================== --- trunk/lib/openlibraries/src/openimagelib/py/lut_functions.cpp 2008-01-06 11:09:50 UTC (rev 398) +++ trunk/lib/openlibraries/src/openimagelib/py/lut_functions.cpp 2008-01-08 23:14:58 UTC (rev 399) @@ -18,6 +18,8 @@ void py_lut_functions( ) { py::def( "to_sRGB", &il::to_sRGB ); + py::def( "to_rec709", &il::to_rec709 ); + py::def( "from_rec709", &il::from_rec709 ); } } } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |