comparison libswscale/yuv2rgb_mlib.c @ 19872:8e50cba9fe03

Remove the dependency of libswscale on img_format.h
author lucabe
date Sun, 17 Sep 2006 15:15:13 +0000
parents ac69ba536915
children 8aac0a59f9c7
comparison
equal deleted inserted replaced
19871:7dc38438c7ce 19872:8e50cba9fe03
28 #include <mlib_video.h> 28 #include <mlib_video.h>
29 #include <inttypes.h> 29 #include <inttypes.h>
30 #include <stdlib.h> 30 #include <stdlib.h>
31 #include <assert.h> 31 #include <assert.h>
32 32
33 #include "libmpcodecs/img_format.h" //FIXME try to reduce dependency of such stuff
34 #include "swscale.h" 33 #include "swscale.h"
35 34
36 static int mlib_YUV2ARGB420_32(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY, 35 static int mlib_YUV2ARGB420_32(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,
37 int srcSliceH, uint8_t* dst[], int dstStride[]){ 36 int srcSliceH, uint8_t* dst[], int dstStride[]){
38 if(c->srcFormat == IMGFMT_422P){ 37 if(c->srcFormat == PIX_FMT_YUV422P){
39 srcStride[1] *= 2; 38 srcStride[1] *= 2;
40 srcStride[2] *= 2; 39 srcStride[2] *= 2;
41 } 40 }
42 41
43 assert(srcStride[1] == srcStride[2]); 42 assert(srcStride[1] == srcStride[2]);
47 return srcSliceH; 46 return srcSliceH;
48 } 47 }
49 48
50 static int mlib_YUV2ABGR420_32(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY, 49 static int mlib_YUV2ABGR420_32(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,
51 int srcSliceH, uint8_t* dst[], int dstStride[]){ 50 int srcSliceH, uint8_t* dst[], int dstStride[]){
52 if(c->srcFormat == IMGFMT_422P){ 51 if(c->srcFormat == PIX_FMT_YUV422P){
53 srcStride[1] *= 2; 52 srcStride[1] *= 2;
54 srcStride[2] *= 2; 53 srcStride[2] *= 2;
55 } 54 }
56 55
57 assert(srcStride[1] == srcStride[2]); 56 assert(srcStride[1] == srcStride[2]);
61 return srcSliceH; 60 return srcSliceH;
62 } 61 }
63 62
64 static int mlib_YUV2RGB420_24(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY, 63 static int mlib_YUV2RGB420_24(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,
65 int srcSliceH, uint8_t* dst[], int dstStride[]){ 64 int srcSliceH, uint8_t* dst[], int dstStride[]){
66 if(c->srcFormat == IMGFMT_422P){ 65 if(c->srcFormat == PIX_FMT_YUV422P){
67 srcStride[1] *= 2; 66 srcStride[1] *= 2;
68 srcStride[2] *= 2; 67 srcStride[2] *= 2;
69 } 68 }
70 69
71 assert(srcStride[1] == srcStride[2]); 70 assert(srcStride[1] == srcStride[2]);
77 76
78 77
79 SwsFunc yuv2rgb_init_mlib(SwsContext *c) 78 SwsFunc yuv2rgb_init_mlib(SwsContext *c)
80 { 79 {
81 switch(c->dstFormat){ 80 switch(c->dstFormat){
82 case IMGFMT_RGB24: return mlib_YUV2RGB420_24; 81 case PIX_FMT_RGB24: return mlib_YUV2RGB420_24;
83 case IMGFMT_RGB32: return mlib_YUV2ARGB420_32; 82 case PIX_FMT_BGR32: return mlib_YUV2ARGB420_32;
84 case IMGFMT_BGR32: return mlib_YUV2ABGR420_32; 83 case PIX_FMT_RGB32: return mlib_YUV2ABGR420_32;
85 default: return NULL; 84 default: return NULL;
86 } 85 }
87 } 86 }
88 87