-#define WRITE_UV_CLIP() \
- i_u = *p_in++ ; i_v = *p_in_v++ ; \
- *p_out++ = clip_uint8_vlc( (( ((i_u * i_cos + i_v * i_sin - i_x) >> 8) \
- * i_sat) >> 8) + 128); \
- *p_out_v++ = clip_uint8_vlc( (( ((i_v * i_cos - i_u * i_sin - i_y) >> 8) \
- * i_sat) >> 8) + 128)
-
- uint8_t i_u, i_v;
-
- for( ; p_in < p_in_end ; )
- {
- p_line_end = p_in + p_pic->p[U_PLANE].i_visible_pitch - 8;
-
- for( ; p_in < p_line_end ; )
- {
- /* Do 8 pixels at a time */
- WRITE_UV_CLIP(); WRITE_UV_CLIP();
- WRITE_UV_CLIP(); WRITE_UV_CLIP();
- WRITE_UV_CLIP(); WRITE_UV_CLIP();
- WRITE_UV_CLIP(); WRITE_UV_CLIP();
- }
-
- p_line_end += 8;
-
- for( ; p_in < p_line_end ; )
- {
- WRITE_UV_CLIP();
- }
-
- p_in += p_pic->p[U_PLANE].i_pitch
- - p_pic->p[U_PLANE].i_visible_pitch;
- p_in_v += p_pic->p[V_PLANE].i_pitch
- - p_pic->p[V_PLANE].i_visible_pitch;
- p_out += p_outpic->p[U_PLANE].i_pitch
- - p_outpic->p[U_PLANE].i_visible_pitch;
- p_out_v += p_outpic->p[V_PLANE].i_pitch
- - p_outpic->p[V_PLANE].i_visible_pitch;
- }
-#undef WRITE_UV_CLIP
+ /* Currently no errors are implemented in the function, if any are added
+ * check them here */
+ p_sys->pf_process_sat_hue_clip( p_pic, p_outpic, i_sin, i_cos, i_sat,
+ i_x, i_y );