summaryrefslogtreecommitdiff
path: root/recordmydesktop/src/rmd_yuv_utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'recordmydesktop/src/rmd_yuv_utils.c')
-rw-r--r--recordmydesktop/src/rmd_yuv_utils.c27
1 files changed, 18 insertions, 9 deletions
diff --git a/recordmydesktop/src/rmd_yuv_utils.c b/recordmydesktop/src/rmd_yuv_utils.c
index 5da501b..dbe87ae 100644
--- a/recordmydesktop/src/rmd_yuv_utils.c
+++ b/recordmydesktop/src/rmd_yuv_utils.c
@@ -25,14 +25,23 @@
******************************************************************************/
#include "config.h"
-
#include "rmd_yuv_utils.h"
+#include "rmd_math.h"
+
+
// Keep these global (for performance reasons I assume).
unsigned char Yr[256], Yg[256], Yb[256],
Ur[256], Ug[256], UbVr[256],
Vg[256], Vb[256];
+// FIXME: These globals are modified in other source files! We keep
+// thsee here for now. These are the cache blocks. They need to be
+// accesible in the dbuf macros
+u_int32_t *yblocks,
+ *ublocks,
+ *vblocks;
+
void MakeMatrices (void) {
int i;
@@ -68,16 +77,16 @@ void MakeMatrices (void) {
for( i = 0 ; i < 256 ; i++ ) {
- Yr[i] = (unsigned char) roundf( Yoffset + yr * i );
- Yg[i] = (unsigned char) roundf( yg * i );
- Yb[i] = (unsigned char) roundf( yb * i );
+ Yr[i] = (unsigned char) rmdRoundf( Yoffset + yr * i );
+ Yg[i] = (unsigned char) rmdRoundf( yg * i );
+ Yb[i] = (unsigned char) rmdRoundf( yb * i );
- Ur[i] = (unsigned char) roundf( Coffset + ur * i );
- Ug[i] = (unsigned char) roundf( ug * i );
- UbVr[i] = (unsigned char) roundf( ub * i );
+ Ur[i] = (unsigned char) rmdRoundf( Coffset + ur * i );
+ Ug[i] = (unsigned char) rmdRoundf( ug * i );
+ UbVr[i] = (unsigned char) rmdRoundf( ub * i );
- Vg[i] = (unsigned char) roundf( vg * i );
- Vb[i] = (unsigned char) roundf( Coffset + vb * i );
+ Vg[i] = (unsigned char) rmdRoundf( vg * i );
+ Vb[i] = (unsigned char) rmdRoundf( Coffset + vb * i );
}
© All Rights Reserved