FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions | Variables
rgb2rgb.h File Reference
#include <inttypes.h>
#include "libavutil/avutil.h"
#include "swscale.h"

Go to the source code of this file.

Functions

void rgb64tobgr48_nobswap (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb64tobgr48_bswap (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb48tobgr48_nobswap (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb48tobgr48_bswap (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb64to48_nobswap (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb64to48_bswap (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb24to32 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb32to24 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb16tobgr32 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb16to24 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb16tobgr16 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb16tobgr15 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb15tobgr32 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb15to24 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb15tobgr16 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb15tobgr15 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb12tobgr12 (const uint8_t *src, uint8_t *dst, int src_size)
 
void rgb12to15 (const uint8_t *src, uint8_t *dst, int src_size)
 
void shuffle_bytes_0321 (const uint8_t *src, uint8_t *dst, int src_size)
 
void shuffle_bytes_1230 (const uint8_t *src, uint8_t *dst, int src_size)
 
void shuffle_bytes_3012 (const uint8_t *src, uint8_t *dst, int src_size)
 
void shuffle_bytes_3210 (const uint8_t *src, uint8_t *dst, int src_size)
 
void ff_rgb24toyv12_c (const uint8_t *src, uint8_t *ydst, uint8_t *udst, uint8_t *vdst, int width, int height, int lumStride, int chromStride, int srcStride, int32_t *rgb2yuv)
 Height should be a multiple of 2 and width should be a multiple of 2. More...
 
void sws_rgb2rgb_init (void)
 
void rgb2rgb_init_x86 (void)
 

Variables

void(* rgb24tobgr32 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb24tobgr16 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb24tobgr15 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb32tobgr24 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb32to16 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb32to15 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb15to16 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb15tobgr24 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb15to32 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb16to15 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb16tobgr24 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb16to32 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb24tobgr24 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb24to16 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb24to15 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb32tobgr16 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* rgb32tobgr15 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* shuffle_bytes_2103 )(const uint8_t *src, uint8_t *dst, int src_size)
 
void(* yv12toyuy2 )(const uint8_t *ysrc, const uint8_t *usrc, const uint8_t *vsrc, uint8_t *dst, int width, int height, int lumStride, int chromStride, int dstStride)
 Height should be a multiple of 2 and width should be a multiple of 16. More...
 
void(* yuv422ptoyuy2 )(const uint8_t *ysrc, const uint8_t *usrc, const uint8_t *vsrc, uint8_t *dst, int width, int height, int lumStride, int chromStride, int dstStride)
 Width should be a multiple of 16. More...
 
void(* yuy2toyv12 )(const uint8_t *src, uint8_t *ydst, uint8_t *udst, uint8_t *vdst, int width, int height, int lumStride, int chromStride, int srcStride)
 Height should be a multiple of 2 and width should be a multiple of 16. More...
 
void(* yv12touyvy )(const uint8_t *ysrc, const uint8_t *usrc, const uint8_t *vsrc, uint8_t *dst, int width, int height, int lumStride, int chromStride, int dstStride)
 Height should be a multiple of 2 and width should be a multiple of 16. More...
 
void(* yuv422ptouyvy )(const uint8_t *ysrc, const uint8_t *usrc, const uint8_t *vsrc, uint8_t *dst, int width, int height, int lumStride, int chromStride, int dstStride)
 Width should be a multiple of 16. More...
 
void(* ff_rgb24toyv12 )(const uint8_t *src, uint8_t *ydst, uint8_t *udst, uint8_t *vdst, int width, int height, int lumStride, int chromStride, int srcStride, int32_t *rgb2yuv)
 Height should be a multiple of 2 and width should be a multiple of 2. More...
 
void(* planar2x )(const uint8_t *src, uint8_t *dst, int width, int height, int srcStride, int dstStride)
 
void(* interleaveBytes )(const uint8_t *src1, const uint8_t *src2, uint8_t *dst, int width, int height, int src1Stride, int src2Stride, int dstStride)
 
void(* deinterleaveBytes )(const uint8_t *src, uint8_t *dst1, uint8_t *dst2, int width, int height, int srcStride, int dst1Stride, int dst2Stride)
 
void(* vu9_to_vu12 )(const uint8_t *src1, const uint8_t *src2, uint8_t *dst1, uint8_t *dst2, int width, int height, int srcStride1, int srcStride2, int dstStride1, int dstStride2)
 
void(* yvu9_to_yuy2 )(const uint8_t *src1, const uint8_t *src2, const uint8_t *src3, uint8_t *dst, int width, int height, int srcStride1, int srcStride2, int srcStride3, int dstStride)
 
void(* uyvytoyuv420 )(uint8_t *ydst, uint8_t *udst, uint8_t *vdst, const uint8_t *src, int width, int height, int lumStride, int chromStride, int srcStride)
 
void(* uyvytoyuv422 )(uint8_t *ydst, uint8_t *udst, uint8_t *vdst, const uint8_t *src, int width, int height, int lumStride, int chromStride, int srcStride)
 
void(* yuyvtoyuv420 )(uint8_t *ydst, uint8_t *udst, uint8_t *vdst, const uint8_t *src, int width, int height, int lumStride, int chromStride, int srcStride)
 
void(* yuyvtoyuv422 )(uint8_t *ydst, uint8_t *udst, uint8_t *vdst, const uint8_t *src, int width, int height, int lumStride, int chromStride, int srcStride)
 

Function Documentation

void rgb64tobgr48_nobswap ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn(), and main().

void rgb64tobgr48_bswap ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn(), and main().

void rgb48tobgr48_nobswap ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn(), and main().

void rgb48tobgr48_bswap ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn(), and main().

void rgb64to48_nobswap ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn(), and main().

void rgb64to48_bswap ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn(), and main().

void rgb24to32 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 157 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb32to24 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 139 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb16tobgr32 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 177 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb16to24 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 218 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb16tobgr16 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 232 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb16tobgr15 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 242 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb15tobgr32 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 252 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb15to24 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 274 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb15tobgr16 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 288 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb15tobgr15 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 298 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb12tobgr12 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 309 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void rgb12to15 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Definition at line 199 of file rgb2rgb.c.

Referenced by findRgbConvFn(), and main().

void shuffle_bytes_0321 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn().

void shuffle_bytes_1230 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn().

void shuffle_bytes_3012 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn().

void shuffle_bytes_3210 ( const uint8_t src,
uint8_t dst,
int  src_size 
)

Referenced by findRgbConvFn().

void ff_rgb24toyv12_c ( const uint8_t src,
uint8_t ydst,
uint8_t udst,
uint8_t vdst,
int  width,
int  height,
int  lumStride,
int  chromStride,
int  srcStride,
int32_t rgb2yuv 
)

Height should be a multiple of 2 and width should be a multiple of 2.

(If this is a problem for anyone then tell me, and I will fix it.) Chrominance data is only taken from every second line, others are ignored in the C version. FIXME: Write HQ version.

Definition at line 617 of file rgb2rgb_template.c.

Referenced by rgb2rgb_init_c().

void sws_rgb2rgb_init ( void  )

Definition at line 132 of file rgb2rgb.c.

Referenced by main(), and sws_init_context().

void rgb2rgb_init_x86 ( void  )

Definition at line 148 of file rgb2rgb.c.

Referenced by sws_rgb2rgb_init().

Variable Documentation

void(* rgb24tobgr32)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 38 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb24tobgr16)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 40 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb24tobgr15)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 41 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb32tobgr24)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 35 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb32to16)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 45 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb32to15)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 46 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb15to16)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 51 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), rgb2rgb_init_TMPL(), and sws_init_context().

void(* rgb15tobgr24)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 43 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb15to32)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 52 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb16to15)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 50 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb16tobgr24)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 42 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb16to32)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 49 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb24tobgr24)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 39 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb24to16)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 47 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb24to15)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 48 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb32tobgr16)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 36 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* rgb32tobgr15)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 37 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* shuffle_bytes_2103)(const uint8_t *src, uint8_t *dst, int src_size)

Definition at line 54 of file rgb2rgb.c.

Referenced by findRgbConvFn(), main(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* yv12toyuy2)(const uint8_t *ysrc, const uint8_t *usrc, const uint8_t *vsrc, uint8_t *dst, int width, int height, int lumStride, int chromStride, int dstStride)

Height should be a multiple of 2 and width should be a multiple of 16.

(If this is a problem for anyone then tell me, and I will fix it.)

Definition at line 56 of file rgb2rgb.c.

Referenced by planarToYuy2Wrapper(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* yuv422ptoyuy2)(const uint8_t *ysrc, const uint8_t *usrc, const uint8_t *vsrc, uint8_t *dst, int width, int height, int lumStride, int chromStride, int dstStride)

Width should be a multiple of 16.

Definition at line 64 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), rgb2rgb_init_TMPL(), and yuv422pToYuy2Wrapper().

void(* yuy2toyv12)(const uint8_t *src, uint8_t *ydst, uint8_t *udst, uint8_t *vdst, int width, int height, int lumStride, int chromStride, int srcStride)

Height should be a multiple of 2 and width should be a multiple of 16.

(If this is a problem for anyone then tell me, and I will fix it.)

Definition at line 72 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* yv12touyvy)(const uint8_t *ysrc, const uint8_t *usrc, const uint8_t *vsrc, uint8_t *dst, int width, int height, int lumStride, int chromStride, int dstStride)

Height should be a multiple of 2 and width should be a multiple of 16.

(If this is a problem for anyone then tell me, and I will fix it.)

Definition at line 60 of file rgb2rgb.c.

Referenced by planarToUyvyWrapper(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* yuv422ptouyvy)(const uint8_t *ysrc, const uint8_t *usrc, const uint8_t *vsrc, uint8_t *dst, int width, int height, int lumStride, int chromStride, int dstStride)

Width should be a multiple of 16.

Definition at line 68 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), rgb2rgb_init_TMPL(), and yuv422pToUyvyWrapper().

void(* ff_rgb24toyv12)(const uint8_t *src, uint8_t *ydst, uint8_t *udst, uint8_t *vdst, int width, int height, int lumStride, int chromStride, int srcStride, int32_t *rgb2yuv)

Height should be a multiple of 2 and width should be a multiple of 2.

(If this is a problem for anyone then tell me, and I will fix it.) Chrominance data is only taken from every second line, others are ignored. FIXME: Write high quality version.

Definition at line 76 of file rgb2rgb.c.

Referenced by bgr24ToYv12Wrapper(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* planar2x)(const uint8_t *src, uint8_t *dst, int width, int height, int srcStride, int dstStride)

Definition at line 81 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), rgb2rgb_init_TMPL(), and yvu9ToYv12Wrapper().

void(* interleaveBytes)(const uint8_t *src1, const uint8_t *src2, uint8_t *dst, int width, int height, int src1Stride, int src2Stride, int dstStride)

Definition at line 83 of file rgb2rgb.c.

Referenced by planarToNv12Wrapper(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* deinterleaveBytes)(const uint8_t *src, uint8_t *dst1, uint8_t *dst2, int width, int height, int srcStride, int dst1Stride, int dst2Stride)

Definition at line 86 of file rgb2rgb.c.

Referenced by nv12ToPlanarWrapper(), rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* vu9_to_vu12)(const uint8_t *src1, const uint8_t *src2, uint8_t *dst1, uint8_t *dst2, int width, int height, int srcStride1, int srcStride2, int dstStride1, int dstStride2)

Definition at line 89 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* yvu9_to_yuy2)(const uint8_t *src1, const uint8_t *src2, const uint8_t *src3, uint8_t *dst, int width, int height, int srcStride1, int srcStride2, int srcStride3, int dstStride)

Definition at line 94 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), and rgb2rgb_init_TMPL().

void(* uyvytoyuv420)(uint8_t *ydst, uint8_t *udst, uint8_t *vdst, const uint8_t *src, int width, int height, int lumStride, int chromStride, int srcStride)

Definition at line 99 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), rgb2rgb_init_TMPL(), and uyvyToYuv420Wrapper().

void(* uyvytoyuv422)(uint8_t *ydst, uint8_t *udst, uint8_t *vdst, const uint8_t *src, int width, int height, int lumStride, int chromStride, int srcStride)

Definition at line 102 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), rgb2rgb_init_TMPL(), and uyvyToYuv422Wrapper().

void(* yuyvtoyuv420)(uint8_t *ydst, uint8_t *udst, uint8_t *vdst, const uint8_t *src, int width, int height, int lumStride, int chromStride, int srcStride)

Definition at line 105 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), rgb2rgb_init_TMPL(), and yuyvToYuv420Wrapper().

void(* yuyvtoyuv422)(uint8_t *ydst, uint8_t *udst, uint8_t *vdst, const uint8_t *src, int width, int height, int lumStride, int chromStride, int srcStride)

Definition at line 108 of file rgb2rgb.c.

Referenced by rgb2rgb_init_c(), rgb2rgb_init_TMPL(), and yuyvToYuv422Wrapper().