and deprecate the old function. Originally committed as revision 25064 to svn://svn.ffmpeg.org/ffmpeg/trunktags/n0.8
@@ -32,7 +32,7 @@ | |||||
#define LIBAVCODEC_VERSION_MAJOR 52 | #define LIBAVCODEC_VERSION_MAJOR 52 | ||||
#define LIBAVCODEC_VERSION_MINOR 87 | #define LIBAVCODEC_VERSION_MINOR 87 | ||||
#define LIBAVCODEC_VERSION_MICRO 2 | |||||
#define LIBAVCODEC_VERSION_MICRO 3 | |||||
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ | #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ | ||||
LIBAVCODEC_VERSION_MINOR, \ | LIBAVCODEC_VERSION_MINOR, \ | ||||
@@ -27,6 +27,7 @@ | |||||
* DSP utils | * DSP utils | ||||
*/ | */ | ||||
#include "libavcore/imgutils.h" | |||||
#include "avcodec.h" | #include "avcodec.h" | ||||
#include "dsputil.h" | #include "dsputil.h" | ||||
#include "simple_idct.h" | #include "simple_idct.h" | ||||
@@ -4454,7 +4455,7 @@ av_cold void dsputil_init(DSPContext* c, AVCodecContext *avctx) | |||||
c->sv_fmul_scalar[0] = sv_fmul_scalar_2_c; | c->sv_fmul_scalar[0] = sv_fmul_scalar_2_c; | ||||
c->sv_fmul_scalar[1] = sv_fmul_scalar_4_c; | c->sv_fmul_scalar[1] = sv_fmul_scalar_4_c; | ||||
c->shrink[0]= ff_img_copy_plane; | |||||
c->shrink[0]= av_image_copy_plane; | |||||
c->shrink[1]= ff_shrink22; | c->shrink[1]= ff_shrink22; | ||||
c->shrink[2]= ff_shrink44; | c->shrink[2]= ff_shrink44; | ||||
c->shrink[3]= ff_shrink88; | c->shrink[3]= ff_shrink88; | ||||
@@ -105,7 +105,14 @@ void ff_bink_idct_put_c(uint8_t *dest, int linesize, DCTELEM *block); | |||||
void ff_ea_idct_put_c(uint8_t *dest, int linesize, DCTELEM *block); | void ff_ea_idct_put_c(uint8_t *dest, int linesize, DCTELEM *block); | ||||
/* 1/2^n downscaling functions from imgconvert.c */ | /* 1/2^n downscaling functions from imgconvert.c */ | ||||
#if LIBAVCODEC_VERSION_MAJOR < 53 | |||||
/** | |||||
* @deprecated Use av_image_copy_plane() instead. | |||||
*/ | |||||
attribute_deprecated | |||||
void ff_img_copy_plane(uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height); | void ff_img_copy_plane(uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height); | ||||
#endif | |||||
void ff_shrink22(uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height); | void ff_shrink22(uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height); | ||||
void ff_shrink44(uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height); | void ff_shrink44(uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height); | ||||
void ff_shrink88(uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height); | void ff_shrink88(uint8_t *dst, int dst_wrap, const uint8_t *src, int src_wrap, int width, int height); | ||||
@@ -781,20 +781,14 @@ enum PixelFormat avcodec_find_best_pix_fmt(int64_t pix_fmt_mask, enum PixelForma | |||||
return dst_pix_fmt; | return dst_pix_fmt; | ||||
} | } | ||||
#if LIBAVCODEC_VERSION_MAJOR < 53 | |||||
void ff_img_copy_plane(uint8_t *dst, int dst_wrap, | void ff_img_copy_plane(uint8_t *dst, int dst_wrap, | ||||
const uint8_t *src, int src_wrap, | const uint8_t *src, int src_wrap, | ||||
int width, int height) | int width, int height) | ||||
{ | { | ||||
if (!dst || !src) | |||||
return; | |||||
for(;height > 0; height--) { | |||||
memcpy(dst, src, width); | |||||
dst += dst_wrap; | |||||
src += src_wrap; | |||||
} | |||||
av_image_copy_plane(dst, dst_wrap, src, src_wrap, width, height); | |||||
} | } | ||||
#if LIBAVCODEC_VERSION_MAJOR < 53 | |||||
int ff_get_plane_bytewidth(enum PixelFormat pix_fmt, int width, int plane) | int ff_get_plane_bytewidth(enum PixelFormat pix_fmt, int width, int plane) | ||||
{ | { | ||||
return av_image_get_linesize(pix_fmt, width, plane); | return av_image_get_linesize(pix_fmt, width, plane); | ||||
@@ -819,13 +813,13 @@ void av_picture_data_copy(uint8_t *dst_data[4], int dst_linesize[4], | |||||
if (i == 1 || i == 2) { | if (i == 1 || i == 2) { | ||||
h= -((-height)>>desc->log2_chroma_h); | h= -((-height)>>desc->log2_chroma_h); | ||||
} | } | ||||
ff_img_copy_plane(dst_data[i], dst_linesize[i], | |||||
av_image_copy_plane(dst_data[i], dst_linesize[i], | |||||
src_data[i], src_linesize[i], | src_data[i], src_linesize[i], | ||||
bwidth, h); | bwidth, h); | ||||
} | } | ||||
break; | break; | ||||
case FF_PIXEL_PALETTE: | case FF_PIXEL_PALETTE: | ||||
ff_img_copy_plane(dst_data[0], dst_linesize[0], | |||||
av_image_copy_plane(dst_data[0], dst_linesize[0], | |||||
src_data[0], src_linesize[0], | src_data[0], src_linesize[0], | ||||
width, height); | width, height); | ||||
/* copy the palette */ | /* copy the palette */ | ||||
@@ -27,7 +27,7 @@ | |||||
#include "libavutil/avutil.h" | #include "libavutil/avutil.h" | ||||
#define LIBAVCORE_VERSION_MAJOR 0 | #define LIBAVCORE_VERSION_MAJOR 0 | ||||
#define LIBAVCORE_VERSION_MINOR 7 | |||||
#define LIBAVCORE_VERSION_MINOR 8 | |||||
#define LIBAVCORE_VERSION_MICRO 0 | #define LIBAVCORE_VERSION_MICRO 0 | ||||
#define LIBAVCORE_VERSION_INT AV_VERSION_INT(LIBAVCORE_VERSION_MAJOR, \ | #define LIBAVCORE_VERSION_INT AV_VERSION_INT(LIBAVCORE_VERSION_MAJOR, \ | ||||
@@ -139,6 +139,19 @@ int av_image_check_size(unsigned int w, unsigned int h, int log_offset, void *lo | |||||
return AVERROR(EINVAL); | return AVERROR(EINVAL); | ||||
} | } | ||||
void av_image_copy_plane(uint8_t *dst, int dst_linesize, | |||||
const uint8_t *src, int src_linesize, | |||||
int bytewidth, int height) | |||||
{ | |||||
if (!dst || !src) | |||||
return; | |||||
for (;height > 0; height--) { | |||||
memcpy(dst, src, bytewidth); | |||||
dst += dst_linesize; | |||||
src += src_linesize; | |||||
} | |||||
} | |||||
#if FF_API_OLD_IMAGE_NAMES | #if FF_API_OLD_IMAGE_NAMES | ||||
void av_fill_image_max_pixsteps(int max_pixsteps[4], int max_pixstep_comps[4], | void av_fill_image_max_pixsteps(int max_pixsteps[4], int max_pixstep_comps[4], | ||||
const AVPixFmtDescriptor *pixdesc) | const AVPixFmtDescriptor *pixdesc) | ||||
@@ -77,6 +77,19 @@ int av_image_fill_linesizes(int linesizes[4], enum PixelFormat pix_fmt, int widt | |||||
int av_image_fill_pointers(uint8_t *data[4], enum PixelFormat pix_fmt, int height, | int av_image_fill_pointers(uint8_t *data[4], enum PixelFormat pix_fmt, int height, | ||||
uint8_t *ptr, const int linesizes[4]); | uint8_t *ptr, const int linesizes[4]); | ||||
/** | |||||
* Copy image plane from src to dst. | |||||
* That is, copy "height" number of lines of "bytewidth" bytes each. | |||||
* The first byte of each successive line is separated by *_linesize | |||||
* bytes. | |||||
* | |||||
* @param dst_linesize linesize for the image plane in dst | |||||
* @param src_linesize linesize for the image plane in src | |||||
*/ | |||||
void av_image_copy_plane(uint8_t *dst, int dst_linesize, | |||||
const uint8_t *src, int src_linesize, | |||||
int bytewidth, int height); | |||||
/** | /** | ||||
* Check if the given dimension of an image is valid, meaning that all | * Check if the given dimension of an image is valid, meaning that all | ||||
* bytes of the image can be addressed with a signed int. | * bytes of the image can be addressed with a signed int. | ||||