summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/video_out/video_out_fb.c40
-rw-r--r--src/video_out/video_out_opengl.c22
-rw-r--r--src/video_out/video_out_opengl2.c16
-rw-r--r--src/video_out/video_out_raw.c16
-rw-r--r--src/video_out/video_out_vaapi.c16
-rw-r--r--src/video_out/video_out_xcbshm.c22
-rw-r--r--src/video_out/video_out_xshm.c22
7 files changed, 75 insertions, 79 deletions
diff --git a/src/video_out/video_out_fb.c b/src/video_out/video_out_fb.c
index a0a3d759c..346a4d31d 100644
--- a/src/video_out/video_out_fb.c
+++ b/src/video_out/video_out_fb.c
@@ -410,39 +410,23 @@ static void fb_update_frame_format(vo_driver_t *this_gen,
static void fb_overlay_clut_yuv2rgb(fb_driver_t *this,
vo_overlay_t *overlay, fb_frame_t *frame)
{
- size_t i;
- clut_t* clut = (clut_t*)overlay->color;
+ int i;
+ uint32_t *rgb;
- if(!overlay->rgb_clut)
- {
- for(i = 0;
- i < sizeof(overlay->color)/sizeof(overlay->color[0]);
- i++)
- {
- *((uint32_t *)&clut[i]) =
- frame->yuv2rgb->
- yuv2rgb_single_pixel_fun(frame->yuv2rgb,
- clut[i].y,
- clut[i].cb,
- clut[i].cr);
+ if (!overlay->rgb_clut) {
+ rgb = overlay->color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->rgb_clut++;
}
- if(!overlay->hili_rgb_clut)
- {
- clut = (clut_t*) overlay->hili_color;
-
- for(i = 0;
- i < sizeof(overlay->color)/sizeof(overlay->color[0]);
- i++)
- {
- *((uint32_t *)&clut[i]) =
- frame->yuv2rgb->
- yuv2rgb_single_pixel_fun(frame->yuv2rgb,
- clut[i].y,
- clut[i].cb,
- clut[i].cr);
+ if (!overlay->hili_rgb_clut) {
+ rgb = overlay->hili_color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->hili_rgb_clut++;
}
diff --git a/src/video_out/video_out_opengl.c b/src/video_out/video_out_opengl.c
index 093630605..3cb934859 100644
--- a/src/video_out/video_out_opengl.c
+++ b/src/video_out/video_out_opengl.c
@@ -1501,23 +1501,23 @@ static void opengl_update_frame_format (vo_driver_t *this_gen,
static void opengl_overlay_clut_yuv2rgb(opengl_driver_t *this, vo_overlay_t *overlay,
opengl_frame_t *frame) {
- int i;
- clut_t* clut = (clut_t*) overlay->color;
+ int i;
+ uint32_t *rgb;
if (!overlay->rgb_clut) {
- for (i = 0; i < sizeof(overlay->color)/sizeof(overlay->color[0]); i++) {
- *((uint32_t *)&clut[i]) =
- frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, clut[i].y,
- clut[i].cb, clut[i].cr);
+ rgb = overlay->color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->rgb_clut++;
}
+
if (!overlay->hili_rgb_clut) {
- clut = (clut_t*) overlay->hili_color;
- for (i = 0; i < sizeof(overlay->color)/sizeof(overlay->color[0]); i++) {
- *((uint32_t *)&clut[i]) =
- frame->yuv2rgb->yuv2rgb_single_pixel_fun(frame->yuv2rgb, clut[i].y,
- clut[i].cb, clut[i].cr);
+ rgb = overlay->hili_color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->hili_rgb_clut++;
}
diff --git a/src/video_out/video_out_opengl2.c b/src/video_out/video_out_opengl2.c
index dffee858a..548496e57 100644
--- a/src/video_out/video_out_opengl2.c
+++ b/src/video_out/video_out_opengl2.c
@@ -528,18 +528,22 @@ static void opengl2_overlay_clut_yuv2rgb(opengl2_driver_t *this, vo_overlay_t *
{
//fprintf(stderr, "opengl2_overlay_clut_yuv2rgb\n");
int i;
- clut_t* clut = (clut_t*) overlay->color;
+ uint32_t *rgb;
if (!overlay->rgb_clut) {
- for ( i=0; i<sizeof(overlay->color)/sizeof(overlay->color[0]); i++ ) {
- *((uint32_t *)&clut[i]) = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun(this->ovl_yuv2rgb, clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun (this->ovl_yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->rgb_clut++;
}
+
if (!overlay->hili_rgb_clut) {
- clut = (clut_t*) overlay->hili_color;
- for ( i=0; i<sizeof(overlay->color)/sizeof(overlay->color[0]); i++) {
- *((uint32_t *)&clut[i]) = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun(this->ovl_yuv2rgb, clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->hili_color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun (this->ovl_yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->hili_rgb_clut++;
}
diff --git a/src/video_out/video_out_raw.c b/src/video_out/video_out_raw.c
index 47f290dc9..4ca8b536a 100644
--- a/src/video_out/video_out_raw.c
+++ b/src/video_out/video_out_raw.c
@@ -106,18 +106,22 @@ typedef struct {
static void raw_overlay_clut_yuv2rgb(raw_driver_t *this, vo_overlay_t *overlay, raw_frame_t *frame)
{
int i;
- clut_t* clut = (clut_t*) overlay->color;
+ uint32_t *rgb;
if (!overlay->rgb_clut) {
- for ( i=0; i<sizeof(overlay->color)/sizeof(overlay->color[0]); i++ ) {
- *((uint32_t *)&clut[i]) = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun(frame->yuv2rgb, clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->rgb_clut++;
}
+
if (!overlay->hili_rgb_clut) {
- clut = (clut_t*) overlay->hili_color;
- for ( i=0; i<sizeof(overlay->color)/sizeof(overlay->color[0]); i++) {
- *((uint32_t *)&clut[i]) = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun(frame->yuv2rgb, clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->hili_color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->hili_rgb_clut++;
}
diff --git a/src/video_out/video_out_vaapi.c b/src/video_out/video_out_vaapi.c
index 4b480b716..5af03b897 100644
--- a/src/video_out/video_out_vaapi.c
+++ b/src/video_out/video_out_vaapi.c
@@ -2233,18 +2233,22 @@ static int vaapi_ovl_associate(vo_driver_t *this_gen, int format, int bShow) {
static void vaapi_overlay_clut_yuv2rgb(vaapi_driver_t *this, vo_overlay_t *overlay, vaapi_frame_t *frame)
{
int i;
- clut_t* clut = (clut_t*) overlay->color;
+ uint32_t *rgb;
if (!overlay->rgb_clut) {
- for ( i=0; i<sizeof(overlay->color)/sizeof(overlay->color[0]); i++ ) {
- *((uint32_t *)&clut[i]) = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun(this->ovl_yuv2rgb, clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun (this->ovl_yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->rgb_clut++;
}
+
if (!overlay->hili_rgb_clut) {
- clut = (clut_t*) overlay->hili_color;
- for ( i=0; i<sizeof(overlay->color)/sizeof(overlay->color[0]); i++) {
- *((uint32_t *)&clut[i]) = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun(this->ovl_yuv2rgb, clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->hili_color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = this->ovl_yuv2rgb->yuv2rgb_single_pixel_fun (this->ovl_yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->hili_rgb_clut++;
}
diff --git a/src/video_out/video_out_xcbshm.c b/src/video_out/video_out_xcbshm.c
index 6438cd18a..29da6a74f 100644
--- a/src/video_out/video_out_xcbshm.c
+++ b/src/video_out/video_out_xcbshm.c
@@ -603,23 +603,23 @@ static void xshm_update_frame_format (vo_driver_t *this_gen,
static void xshm_overlay_clut_yuv2rgb(xshm_driver_t *this, vo_overlay_t *overlay,
xshm_frame_t *frame) {
- size_t i;
- clut_t* clut = (clut_t*) overlay->color;
+ int i;
+ uint32_t *rgb;
if (!overlay->rgb_clut) {
- for (i = 0; i < sizeof(overlay->color)/sizeof(overlay->color[0]); i++) {
- *((uint32_t *)&clut[i]) =
- frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb,
- clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->rgb_clut++;
}
+
if (!overlay->hili_rgb_clut) {
- clut = (clut_t*) overlay->hili_color;
- for (i = 0; i < sizeof(overlay->color)/sizeof(overlay->color[0]); i++) {
- *((uint32_t *)&clut[i]) =
- frame->yuv2rgb->yuv2rgb_single_pixel_fun(frame->yuv2rgb,
- clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->hili_color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->hili_rgb_clut++;
}
diff --git a/src/video_out/video_out_xshm.c b/src/video_out/video_out_xshm.c
index 878de612b..3bccf0cdb 100644
--- a/src/video_out/video_out_xshm.c
+++ b/src/video_out/video_out_xshm.c
@@ -697,23 +697,23 @@ static void xshm_update_frame_format (vo_driver_t *this_gen,
static void xshm_overlay_clut_yuv2rgb(xshm_driver_t *this, vo_overlay_t *overlay,
xshm_frame_t *frame) {
- size_t i;
- clut_t* clut = (clut_t*) overlay->color;
+ int i;
+ uint32_t *rgb;
if (!overlay->rgb_clut) {
- for (i = 0; i < sizeof(overlay->color)/sizeof(overlay->color[0]); i++) {
- *((uint32_t *)&clut[i]) =
- frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb,
- clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->rgb_clut++;
}
+
if (!overlay->hili_rgb_clut) {
- clut = (clut_t*) overlay->hili_color;
- for (i = 0; i < sizeof(overlay->color)/sizeof(overlay->color[0]); i++) {
- *((uint32_t *)&clut[i]) =
- frame->yuv2rgb->yuv2rgb_single_pixel_fun(frame->yuv2rgb,
- clut[i].y, clut[i].cb, clut[i].cr);
+ rgb = overlay->hili_color;
+ for (i = sizeof (overlay->color) / sizeof (overlay->color[0]); i > 0; i--) {
+ clut_t *yuv = (clut_t *)rgb;
+ *rgb++ = frame->yuv2rgb->yuv2rgb_single_pixel_fun (frame->yuv2rgb, yuv->y, yuv->cb, yuv->cr);
}
overlay->hili_rgb_clut++;
}