summaryrefslogtreecommitdiffstats
path: root/postproc/swscale.c
diff options
context:
space:
mode:
Diffstat (limited to 'postproc/swscale.c')
-rw-r--r--postproc/swscale.c27
1 files changed, 13 insertions, 14 deletions
diff --git a/postproc/swscale.c b/postproc/swscale.c
index da4a4de5d4..985bfdbc6d 100644
--- a/postproc/swscale.c
+++ b/postproc/swscale.c
@@ -1764,7 +1764,7 @@ static int yvu9toyv12Wrapper(SwsContext *c, uint8_t* src[], int srcStride[], int
/**
* bring pointers in YUV order instead of YVU
*/
-inline void sws_orderYUV(int format, uint8_t * sortedP[], int sortedStride[], uint8_t * p[], int stride[]){
+inline static void sws_orderYUV(int format, uint8_t * sortedP[], int sortedStride[], uint8_t * p[], int stride[]){
if(format == IMGFMT_YV12 || format == IMGFMT_YVU9
|| format == IMGFMT_444P || format == IMGFMT_422P || format == IMGFMT_411P){
sortedP[0]= p[0];
@@ -1797,16 +1797,8 @@ inline void sws_orderYUV(int format, uint8_t * sortedP[], int sortedStride[], ui
}
/* unscaled copy like stuff (assumes nearly identical formats) */
-static int simpleCopy(SwsContext *c, uint8_t* srcParam[], int srcStrideParam[], int srcSliceY,
- int srcSliceH, uint8_t* dstParam[], int dstStrideParam[]){
-
- int srcStride[3];
- int dstStride[3];
- uint8_t *src[3];
- uint8_t *dst[3];
-
- sws_orderYUV(c->srcFormat, src, srcStride, srcParam, srcStrideParam);
- sws_orderYUV(c->dstFormat, dst, dstStride, dstParam, dstStrideParam);
+static int simpleCopy(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,
+ int srcSliceH, uint8_t* dst[], int dstStride[]){
if(isPacked(c->srcFormat))
{
@@ -2382,11 +2374,18 @@ SwsContext *sws_getContext(int srcW, int srcH, int srcFormat, int dstW, int dstH
/**
* swscale warper, so we dont need to export the SwsContext
*/
-int sws_scale(SwsContext *c, uint8_t* src[], int srcStride[], int srcSliceY,
- int srcSliceH, uint8_t* dst[], int dstStride[]){
+int sws_scale(SwsContext *c, uint8_t* srcParam[], int srcStrideParam[], int srcSliceY,
+ int srcSliceH, uint8_t* dstParam[], int dstStrideParam[]){
+ int srcStride[3];
+ int dstStride[3];
+ uint8_t *src[3];
+ uint8_t *dst[3];
+
+ sws_orderYUV(c->srcFormat, src, srcStride, srcParam, srcStrideParam);
+ sws_orderYUV(c->dstFormat, dst, dstStride, dstParam, dstStrideParam);
+//printf("sws: slice %d %d\n", srcSliceY, srcSliceH);
return c->swScale(c, src, srcStride, srcSliceY, srcSliceH, dst, dstStride);
}
-//FIXME order YV12/I420 here
/**
* returns a normalized gaussian curve used to filter stuff