Include dependency graph for yuv2rgb.c:
Defines | |
| #define | DITHER1XBPP |
| #define | CAN_COMPILE_X86_ASM |
| #define | HAVE_MMX |
| #define | ARCH_X86 |
| #define | RENAME(a) a ## _MMX |
| #define | HAVE_MMX |
| #define | HAVE_MMX2 |
| #define | ARCH_X86 |
| #define | RENAME(a) a ## _MMX2 |
| #define | RGB(i) |
| #define | DST1(i) |
| #define | DST2(i) |
| #define | DST1RGB(i) |
| #define | DST2RGB(i) |
| #define | DST1BGR(i) |
| #define | DST2BGR(i) |
| #define | DST1bpp8(i, o) |
| #define | DST2bpp8(i, o) |
| #define | DST1_4(i) |
| #define | DST2_4(i) |
| #define | DST1bpp4(i, o) |
| #define | DST2bpp4(i, o) |
| #define | DST1bpp4b(i, o) |
| #define | DST2bpp4b(i, o) |
| #define | DST1bpp1(i, o) |
| #define | DST2bpp1(i, o) |
Functions | |
| const uint8_t | __attribute__ ((aligned(8))) |
| void * | yuv2rgb_c_init (unsigned bpp, int mode, void *table_rV[256], void *table_gU[256], int table_gV[256], void *table_bU[256]) |
| static void | yuv2rgb_c (void *dst, uint8_t *py, uint8_t *pu, uint8_t *pv, unsigned h_size, unsigned v_size, unsigned rgb_stride, unsigned y_stride, unsigned uv_stride) |
| void | yuv2rgb_init (unsigned bpp, int mode) |
| static void | yuv2rgb_c_32 (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_24_rgb (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_24_bgr (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_16 (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_8 (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_8_ordered_dither (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_4 (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_4_ordered_dither (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_4b (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_4b_ordered_dither (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static void | yuv2rgb_c_1_ordered_dither (uint8_t *py_1, uint8_t *py_2, uint8_t *pu, uint8_t *pv, void *_dst_1, void *_dst_2, int h_size, int v_pos) |
| static int | div_round (int dividend, int divisor) |
Variables | |
| uint32_t | matrix_coefficients = 6 |
| const int32_t | Inverse_Table_6_9 [8][4] |
| yuv2rgb_fun | yuv2rgb = NULL |
| static void(*) | yuv2rgb_c_internal (uint8_t *, uint8_t *, uint8_t *, uint8_t *, void *, void *, int, int) |
| void * | table_rV [256] |
| void * | table_gU [256] |
| int | table_gV [256] |
| void * | table_bU [256] |
| #define ARCH_X86 |
| #define ARCH_X86 |
| #define CAN_COMPILE_X86_ASM |
| #define DITHER1XBPP |
| #define DST1 | ( | i | ) |
Value:
Y = py_1[2*i]; \
dst_1[2*i] = r[Y] + g[Y] + b[Y]; \
Y = py_1[2*i+1]; \
dst_1[2*i+1] = r[Y] + g[Y] + b[Y];
| #define DST1_4 | ( | i | ) |
Value:
Y = py_1[2*i]; \
acc = r[Y] + g[Y] + b[Y]; \
Y = py_1[2*i+1]; \
acc |= (r[Y] + g[Y] + b[Y])<<4;\
dst_1[i] = acc;
| #define DST1BGR | ( | i | ) |
Value:
Y = py_1[2*i]; \
dst_1[6*i] = b[Y]; dst_1[6*i+1] = g[Y]; dst_1[6*i+2] = r[Y]; \
Y = py_1[2*i+1]; \
dst_1[6*i+3] = b[Y]; dst_1[6*i+4] = g[Y]; dst_1[6*i+5] = r[Y];
| #define DST1bpp1 | ( | i, | |||
| o | ) |
Value:
Y = py_1[2*i]; \
out_1+= out_1 + g[Y+d128[0+o]]; \
Y = py_1[2*i+1]; \
out_1+= out_1 + g[Y+d128[1+o]];
| #define DST1bpp4 | ( | i, | |||
| o | ) |
Value:
Y = py_1[2*i]; \
acc = r[Y+d128[0+o]] + g[Y+d64[0+o]] + b[Y+d128[0+o]]; \
Y = py_1[2*i+1]; \
acc |= (r[Y+d128[1+o]] + g[Y+d64[1+o]] + b[Y+d128[1+o]])<<4;\
dst_1[i]= acc;
| #define DST1bpp4b | ( | i, | |||
| o | ) |
Value:
Y = py_1[2*i]; \
dst_1[2*i] = r[Y+d128[0+o]] + g[Y+d64[0+o]] + b[Y+d128[0+o]]; \
Y = py_1[2*i+1]; \
dst_1[2*i+1] = r[Y+d128[1+o]] + g[Y+d64[1+o]] + b[Y+d128[1+o]];
| #define DST1bpp8 | ( | i, | |||
| o | ) |
Value:
Y = py_1[2*i]; \
dst_1[2*i] = r[Y+d32[0+o]] + g[Y+d32[0+o]] + b[Y+d64[0+o]]; \
Y = py_1[2*i+1]; \
dst_1[2*i+1] = r[Y+d32[1+o]] + g[Y+d32[1+o]] + b[Y+d64[1+o]];
| #define DST1RGB | ( | i | ) |
Value:
Y = py_1[2*i]; \
dst_1[6*i] = r[Y]; dst_1[6*i+1] = g[Y]; dst_1[6*i+2] = b[Y]; \
Y = py_1[2*i+1]; \
dst_1[6*i+3] = r[Y]; dst_1[6*i+4] = g[Y]; dst_1[6*i+5] = b[Y];
| #define DST2 | ( | i | ) |
Value:
Y = py_2[2*i]; \
dst_2[2*i] = r[Y] + g[Y] + b[Y]; \
Y = py_2[2*i+1]; \
dst_2[2*i+1] = r[Y] + g[Y] + b[Y];
| #define DST2_4 | ( | i | ) |
Value:
Y = py_2[2*i]; \
acc = r[Y] + g[Y] + b[Y]; \
Y = py_2[2*i+1]; \
acc |= (r[Y] + g[Y] + b[Y])<<4;\
dst_2[i] = acc;
| #define DST2BGR | ( | i | ) |
Value:
Y = py_2[2*i]; \
dst_2[6*i] = b[Y]; dst_2[6*i+1] = g[Y]; dst_2[6*i+2] = r[Y]; \
Y = py_2[2*i+1]; \
dst_2[6*i+3] = b[Y]; dst_2[6*i+4] = g[Y]; dst_2[6*i+5] = r[Y];
| #define DST2bpp1 | ( | i, | |||
| o | ) |
Value:
Y = py_2[2*i]; \
out_2+= out_2 + g[Y+d128[8+o]]; \
Y = py_2[2*i+1]; \
out_2+= out_2 + g[Y+d128[9+o]];
| #define DST2bpp4 | ( | i, | |||
| o | ) |
Value:
Y = py_2[2*i]; \
acc = r[Y+d128[8+o]] + g[Y+d64[8+o]] + b[Y+d128[8+o]]; \
Y = py_2[2*i+1]; \
acc |= (r[Y+d128[9+o]] + g[Y+d64[9+o]] + b[Y+d128[9+o]])<<4;\
dst_2[i]= acc;
| #define DST2bpp4b | ( | i, | |||
| o | ) |
Value:
Y = py_2[2*i]; \
dst_2[2*i] = r[Y+d128[8+o]] + g[Y+d64[8+o]] + b[Y+d128[8+o]]; \
Y = py_2[2*i+1]; \
dst_2[2*i+1] = r[Y+d128[9+o]] + g[Y+d64[9+o]] + b[Y+d128[9+o]];
| #define DST2bpp8 | ( | i, | |||
| o | ) |
Value:
Y = py_2[2*i]; \
dst_2[2*i] = r[Y+d32[8+o]] + g[Y+d32[8+o]] + b[Y+d64[8+o]]; \
Y = py_2[2*i+1]; \
dst_2[2*i+1] = r[Y+d32[9+o]] + g[Y+d32[9+o]] + b[Y+d64[9+o]];
| #define DST2RGB | ( | i | ) |
Value:
Y = py_2[2*i]; \
dst_2[6*i] = r[Y]; dst_2[6*i+1] = g[Y]; dst_2[6*i+2] = b[Y]; \
Y = py_2[2*i+1]; \
dst_2[6*i+3] = r[Y]; dst_2[6*i+4] = g[Y]; dst_2[6*i+5] = b[Y];
| #define HAVE_MMX |
| #define HAVE_MMX |
| #define HAVE_MMX2 |
| #define RENAME | ( | a | ) | a ## _MMX2 |
| #define RENAME | ( | a | ) | a ## _MMX |
| #define RGB | ( | i | ) |
| uint64_t __attribute__ | ( | (aligned(8)) | ) |
| static int div_round | ( | int | dividend, | |
| int | divisor | |||
| ) | [static] |
| static void yuv2rgb_c | ( | void * | dst, | |
| uint8_t * | py, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| unsigned | h_size, | |||
| unsigned | v_size, | |||
| unsigned | rgb_stride, | |||
| unsigned | y_stride, | |||
| unsigned | uv_stride | |||
| ) | [static] |
| static void yuv2rgb_c_16 | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_1_ordered_dither | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_24_bgr | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_24_rgb | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_32 | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_4 | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_4_ordered_dither | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_4b | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_4b_ordered_dither | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_8 | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| static void yuv2rgb_c_8_ordered_dither | ( | uint8_t * | py_1, | |
| uint8_t * | py_2, | |||
| uint8_t * | pu, | |||
| uint8_t * | pv, | |||
| void * | _dst_1, | |||
| void * | _dst_2, | |||
| int | h_size, | |||
| int | v_pos | |||
| ) | [static] |
| void * yuv2rgb_c_init | ( | unsigned | bpp, | |
| int | mode, | |||
| void * | table_rV[256], | |||
| void * | table_gU[256], | |||
| int | table_gV[256], | |||
| void * | table_bU[256] | |||
| ) |
| void yuv2rgb_init | ( | unsigned | bpp, | |
| int | mode | |||
| ) |
| const int32_t Inverse_Table_6_9[8][4] |
Initial value:
{
{117504, 138453, 13954, 34903},
{117504, 138453, 13954, 34903},
{104597, 132201, 25675, 53279},
{104597, 132201, 25675, 53279},
{104448, 132798, 24759, 53109},
{104597, 132201, 25675, 53279},
{104597, 132201, 25675, 53279},
{117579, 136230, 16907, 35559}
}
| uint32_t matrix_coefficients = 6 |
| void* table_bU[256] |
| void* table_gU[256] |
| int table_gV[256] |
| void* table_rV[256] |
| yuv2rgb_fun yuv2rgb = NULL |
void(* ) yuv2rgb_c_internal(uint8_t *, uint8_t *, uint8_t *, uint8_t *, void *, void *, int, int) [static] |
1.5.1-p1