|
|
|
@ -30,6 +30,7 @@ |
|
|
|
|
#include "libavutil/avassert.h" |
|
|
|
|
#include "libavutil/avutil.h" |
|
|
|
|
#include "libavutil/common.h" |
|
|
|
|
#include "libavutil/intreadwrite.h" |
|
|
|
|
#include "libavutil/log.h" |
|
|
|
|
#include "libavutil/pixfmt.h" |
|
|
|
|
#include "libavutil/pixdesc.h" |
|
|
|
@ -769,4 +770,24 @@ void ff_sws_init_output_funcs(SwsContext *c, |
|
|
|
|
void ff_sws_init_swScale_altivec(SwsContext *c); |
|
|
|
|
void ff_sws_init_swScale_mmx(SwsContext *c); |
|
|
|
|
|
|
|
|
|
static inline void fillPlane16(uint8_t *plane, int stride, int width, int height, int y, |
|
|
|
|
int alpha, int bits, const int big_endian) |
|
|
|
|
{ |
|
|
|
|
int i, j; |
|
|
|
|
uint8_t *ptr = plane + stride * y; |
|
|
|
|
int v = alpha ? 0xFFFF>>(15-bits) : (1<<bits); |
|
|
|
|
for (i = 0; i < height; i++) { |
|
|
|
|
#define FILL(wfunc) \ |
|
|
|
|
for (j = 0; j < width; j++) {\
|
|
|
|
|
wfunc(ptr+2*j, v);\
|
|
|
|
|
} |
|
|
|
|
if (big_endian) { |
|
|
|
|
FILL(AV_WB16); |
|
|
|
|
} else { |
|
|
|
|
FILL(AV_WL16); |
|
|
|
|
} |
|
|
|
|
ptr += stride; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#endif /* SWSCALE_SWSCALE_INTERNAL_H */ |
|
|
|
|