Remove use of the deprecated function avcodec_check_dimensions(), use
av_check_image_size() instead. Originally committed as revision 24711 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
@@ -19,6 +19,7 @@
|
|||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
#include "binkdata.h"
|
#include "binkdata.h"
|
||||||
@@ -971,7 +972,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
|
|||||||
|
|
||||||
c->pic.data[0] = NULL;
|
c->pic.data[0] = NULL;
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, avctx->width, avctx->height) < 0) {
|
if (av_check_image_size(avctx->width, avctx->height, 0, avctx) < 0) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -25,6 +25,7 @@
|
|||||||
* @author Marco Gerards <marco@gnu.org>
|
* @author Marco Gerards <marco@gnu.org>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "dirac.h"
|
#include "dirac.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "golomb.h"
|
#include "golomb.h"
|
||||||
@@ -268,7 +269,7 @@ int ff_dirac_parse_sequence_header(AVCodecContext *avctx, GetBitContext *gb,
|
|||||||
if (parse_source_parameters(avctx, gb, source))
|
if (parse_source_parameters(avctx, gb, source))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, source->width, source->height))
|
if (av_check_image_size(source->width, source->height, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
avcodec_set_dimensions(avctx, source->width, source->height);
|
avcodec_set_dimensions(avctx, source->width, source->height);
|
||||||
|
@@ -22,6 +22,7 @@
|
|||||||
//#define TRACE
|
//#define TRACE
|
||||||
//#define DEBUG
|
//#define DEBUG
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "get_bits.h"
|
#include "get_bits.h"
|
||||||
#include "dnxhddata.h"
|
#include "dnxhddata.h"
|
||||||
@@ -305,7 +306,7 @@ static int dnxhd_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
|
|||||||
}
|
}
|
||||||
|
|
||||||
avctx->pix_fmt = PIX_FMT_YUV422P;
|
avctx->pix_fmt = PIX_FMT_YUV422P;
|
||||||
if (avcodec_check_dimensions(avctx, ctx->width, ctx->height))
|
if (av_check_image_size(ctx->width, ctx->height, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
avcodec_set_dimensions(avctx, ctx->width, ctx->height);
|
avcodec_set_dimensions(avctx, ctx->width, ctx->height);
|
||||||
|
|
||||||
|
@@ -20,6 +20,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
|
|
||||||
@@ -139,7 +140,7 @@ static int decode_frame(AVCodecContext *avctx,
|
|||||||
|
|
||||||
if (s->picture.data[0])
|
if (s->picture.data[0])
|
||||||
avctx->release_buffer(avctx, &s->picture);
|
avctx->release_buffer(avctx, &s->picture);
|
||||||
if (avcodec_check_dimensions(avctx, w, h))
|
if (av_check_image_size(w, h, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if (w != avctx->width || h != avctx->height)
|
if (w != avctx->width || h != avctx->height)
|
||||||
avcodec_set_dimensions(avctx, w, h);
|
avcodec_set_dimensions(avctx, w, h);
|
||||||
|
@@ -29,6 +29,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
|
|
||||||
typedef struct CmvContext {
|
typedef struct CmvContext {
|
||||||
@@ -156,7 +157,7 @@ static int cmv_decode_frame(AVCodecContext *avctx,
|
|||||||
return buf_size;
|
return buf_size;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (avcodec_check_dimensions(s->avctx, s->width, s->height))
|
if (av_check_image_size(s->width, s->height, 0, s->avctx))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
/* shuffle */
|
/* shuffle */
|
||||||
|
@@ -34,6 +34,7 @@
|
|||||||
#include "aandcttab.h"
|
#include "aandcttab.h"
|
||||||
#include "mpeg12.h"
|
#include "mpeg12.h"
|
||||||
#include "mpeg12data.h"
|
#include "mpeg12data.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
|
|
||||||
#define EA_PREAMBLE_SIZE 8
|
#define EA_PREAMBLE_SIZE 8
|
||||||
#define MADk_TAG MKTAG('M', 'A', 'D', 'k') /* MAD i-frame */
|
#define MADk_TAG MKTAG('M', 'A', 'D', 'k') /* MAD i-frame */
|
||||||
@@ -260,7 +261,7 @@ static int decode_frame(AVCodecContext *avctx,
|
|||||||
buf += 16;
|
buf += 16;
|
||||||
|
|
||||||
if (avctx->width != s->width || avctx->height != s->height) {
|
if (avctx->width != s->width || avctx->height != s->height) {
|
||||||
if (avcodec_check_dimensions(avctx, s->width, s->height) < 0)
|
if (av_check_image_size(s->width, s->height, 0, avctx) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
avcodec_set_dimensions(avctx, s->width, s->height);
|
avcodec_set_dimensions(avctx, s->width, s->height);
|
||||||
if (t->frame.data[0])
|
if (t->frame.data[0])
|
||||||
|
@@ -32,6 +32,7 @@
|
|||||||
#define ALT_BITSTREAM_READER_LE
|
#define ALT_BITSTREAM_READER_LE
|
||||||
#include "get_bits.h"
|
#include "get_bits.h"
|
||||||
#include "libavutil/lzo.h"
|
#include "libavutil/lzo.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
|
|
||||||
#define EA_PREAMBLE_SIZE 8
|
#define EA_PREAMBLE_SIZE 8
|
||||||
#define kVGT_TAG MKTAG('k', 'V', 'G', 'T')
|
#define kVGT_TAG MKTAG('k', 'V', 'G', 'T')
|
||||||
@@ -275,7 +276,7 @@ static int tgv_decode_frame(AVCodecContext *avctx,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, s->width, s->height))
|
if (av_check_image_size(s->width, s->height, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
/* shuffle */
|
/* shuffle */
|
||||||
|
@@ -20,6 +20,7 @@
|
|||||||
#include "mpegvideo.h"
|
#include "mpegvideo.h"
|
||||||
#include "h263.h"
|
#include "h263.h"
|
||||||
#include "flv.h"
|
#include "flv.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
|
|
||||||
void ff_flv2_decode_ac_esc(GetBitContext *gb, int *level, int *run, int *last){
|
void ff_flv2_decode_ac_esc(GetBitContext *gb, int *level, int *run, int *last){
|
||||||
int is11 = get_bits1(gb);
|
int is11 = get_bits1(gb);
|
||||||
@@ -82,7 +83,7 @@ int ff_flv_decode_picture_header(MpegEncContext *s)
|
|||||||
width = height = 0;
|
width = height = 0;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if(avcodec_check_dimensions(s->avctx, width, height))
|
if(av_check_image_size(width, height, 0, s->avctx))
|
||||||
return -1;
|
return -1;
|
||||||
s->width = width;
|
s->width = width;
|
||||||
s->height = height;
|
s->height = height;
|
||||||
|
@@ -22,6 +22,7 @@
|
|||||||
|
|
||||||
//#define DEBUG
|
//#define DEBUG
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
#include "lzw.h"
|
#include "lzw.h"
|
||||||
@@ -296,7 +297,7 @@ static int gif_decode_frame(AVCodecContext *avctx, void *data, int *data_size, A
|
|||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
avctx->pix_fmt = PIX_FMT_PAL8;
|
avctx->pix_fmt = PIX_FMT_PAL8;
|
||||||
if (avcodec_check_dimensions(avctx, s->screen_width, s->screen_height))
|
if (av_check_image_size(s->screen_width, s->screen_height, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
avcodec_set_dimensions(avctx, s->screen_width, s->screen_height);
|
avcodec_set_dimensions(avctx, s->screen_width, s->screen_height);
|
||||||
|
|
||||||
|
@@ -25,6 +25,7 @@
|
|||||||
* @author Michael Niedermayer <michaelni@gmx.at>
|
* @author Michael Niedermayer <michaelni@gmx.at>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "internal.h"
|
#include "internal.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
@@ -341,7 +342,7 @@ int ff_h264_decode_seq_parameter_set(H264Context *h){
|
|||||||
sps->mb_width = get_ue_golomb(&s->gb) + 1;
|
sps->mb_width = get_ue_golomb(&s->gb) + 1;
|
||||||
sps->mb_height= get_ue_golomb(&s->gb) + 1;
|
sps->mb_height= get_ue_golomb(&s->gb) + 1;
|
||||||
if((unsigned)sps->mb_width >= INT_MAX/16 || (unsigned)sps->mb_height >= INT_MAX/16 ||
|
if((unsigned)sps->mb_width >= INT_MAX/16 || (unsigned)sps->mb_height >= INT_MAX/16 ||
|
||||||
avcodec_check_dimensions(NULL, 16*sps->mb_width, 16*sps->mb_height)){
|
av_check_image_size(16*sps->mb_width, 16*sps->mb_height, 0, h->s.avctx)){
|
||||||
av_log(h->s.avctx, AV_LOG_ERROR, "mb_width/height overflow\n");
|
av_log(h->s.avctx, AV_LOG_ERROR, "mb_width/height overflow\n");
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
|
@@ -25,6 +25,7 @@
|
|||||||
* IFF PBM/ILBM bitmap decoder
|
* IFF PBM/ILBM bitmap decoder
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "get_bits.h"
|
#include "get_bits.h"
|
||||||
@@ -160,7 +161,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
|
|||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((err = avcodec_check_dimensions(avctx, avctx->width, avctx->height)))
|
if ((err = av_check_image_size(avctx->width, avctx->height, 0, avctx)))
|
||||||
return err;
|
return err;
|
||||||
s->planesize = FFALIGN(avctx->width, 16) >> 3; // Align plane size in bits to word-boundary
|
s->planesize = FFALIGN(avctx->width, 16) >> 3; // Align plane size in bits to word-boundary
|
||||||
s->planebuf = av_malloc(s->planesize + FF_INPUT_BUFFER_PADDING_SIZE);
|
s->planebuf = av_malloc(s->planesize + FF_INPUT_BUFFER_PADDING_SIZE);
|
||||||
|
@@ -515,7 +515,7 @@ int avpicture_fill(AVPicture *picture, uint8_t *ptr,
|
|||||||
enum PixelFormat pix_fmt, int width, int height)
|
enum PixelFormat pix_fmt, int width, int height)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(avcodec_check_dimensions(NULL, width, height))
|
if(av_check_image_size(width, height, 0, NULL))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (av_fill_image_linesizes(picture->linesize, pix_fmt, width))
|
if (av_fill_image_linesizes(picture->linesize, pix_fmt, width))
|
||||||
@@ -597,7 +597,7 @@ int avpicture_layout(const AVPicture* src, enum PixelFormat pix_fmt, int width,
|
|||||||
int avpicture_get_size(enum PixelFormat pix_fmt, int width, int height)
|
int avpicture_get_size(enum PixelFormat pix_fmt, int width, int height)
|
||||||
{
|
{
|
||||||
AVPicture dummy_pict;
|
AVPicture dummy_pict;
|
||||||
if(avcodec_check_dimensions(NULL, width, height))
|
if(av_check_image_size(width, height, 0, NULL))
|
||||||
return -1;
|
return -1;
|
||||||
switch (pix_fmt) {
|
switch (pix_fmt) {
|
||||||
case PIX_FMT_RGB8:
|
case PIX_FMT_RGB8:
|
||||||
|
@@ -23,6 +23,7 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
@@ -995,7 +996,7 @@ static int iv_decode_frame(AVCodecContext *avctx,
|
|||||||
image_height = bytestream_get_le16(&buf_pos);
|
image_height = bytestream_get_le16(&buf_pos);
|
||||||
image_width = bytestream_get_le16(&buf_pos);
|
image_width = bytestream_get_le16(&buf_pos);
|
||||||
|
|
||||||
if(avcodec_check_dimensions(avctx, image_width, image_height))
|
if(av_check_image_size(image_width, image_height, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if (image_width != avctx->width || image_height != avctx->height) {
|
if (image_width != avctx->width || image_height != avctx->height) {
|
||||||
int ret;
|
int ret;
|
||||||
|
@@ -25,6 +25,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@@ -50,7 +51,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPac
|
|||||||
h = (buf[1] + 1) * 8;
|
h = (buf[1] + 1) * 8;
|
||||||
buf += 2;
|
buf += 2;
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, w, h))
|
if (av_check_image_size(w, h, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (w != avctx->width || h != avctx->height)
|
if (w != avctx->width || h != avctx->height)
|
||||||
|
@@ -105,8 +105,8 @@ static int libdirac_decode_frame(AVCodecContext *avccontext,
|
|||||||
/* tell FFmpeg about sequence details */
|
/* tell FFmpeg about sequence details */
|
||||||
dirac_sourceparams_t *src_params = &p_dirac_params->p_decoder->src_params;
|
dirac_sourceparams_t *src_params = &p_dirac_params->p_decoder->src_params;
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avccontext, src_params->width,
|
if (av_check_image_size(src_params->width, src_params->height,
|
||||||
src_params->height) < 0) {
|
0, avccontext) < 0) {
|
||||||
av_log(avccontext, AV_LOG_ERROR, "Invalid dimensions (%dx%d)\n",
|
av_log(avccontext, AV_LOG_ERROR, "Invalid dimensions (%dx%d)\n",
|
||||||
src_params->width, src_params->height);
|
src_params->width, src_params->height);
|
||||||
avccontext->height = avccontext->width = 0;
|
avccontext->height = avccontext->width = 0;
|
||||||
|
@@ -113,7 +113,7 @@ static int libopenjpeg_decode_frame(AVCodecContext *avctx,
|
|||||||
}
|
}
|
||||||
width = image->comps[0].w << avctx->lowres;
|
width = image->comps[0].w << avctx->lowres;
|
||||||
height = image->comps[0].h << avctx->lowres;
|
height = image->comps[0].h << avctx->lowres;
|
||||||
if(avcodec_check_dimensions(avctx, width, height) < 0) {
|
if(av_check_image_size(width, height, 0, avctx) < 0) {
|
||||||
av_log(avctx, AV_LOG_ERROR, "%dx%d dimension invalid.\n", width, height);
|
av_log(avctx, AV_LOG_ERROR, "%dx%d dimension invalid.\n", width, height);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
@@ -169,8 +169,8 @@ static void libschroedinger_handle_first_access_unit(AVCodecContext *avccontext)
|
|||||||
p_schro_params->format = schro_decoder_get_video_format(decoder);
|
p_schro_params->format = schro_decoder_get_video_format(decoder);
|
||||||
|
|
||||||
/* Tell FFmpeg about sequence details. */
|
/* Tell FFmpeg about sequence details. */
|
||||||
if (avcodec_check_dimensions(avccontext, p_schro_params->format->width,
|
if (av_check_image_size(p_schro_params->format->width, p_schro_params->format->height,
|
||||||
p_schro_params->format->height) < 0) {
|
0, avccontext) < 0) {
|
||||||
av_log(avccontext, AV_LOG_ERROR, "invalid dimensions (%dx%d)\n",
|
av_log(avccontext, AV_LOG_ERROR, "invalid dimensions (%dx%d)\n",
|
||||||
p_schro_params->format->width, p_schro_params->format->height);
|
p_schro_params->format->width, p_schro_params->format->height);
|
||||||
avccontext->height = avccontext->width = 0;
|
avccontext->height = avccontext->width = 0;
|
||||||
|
@@ -86,7 +86,7 @@ static int vp8_decode(AVCodecContext *avctx,
|
|||||||
if ((int) img->d_w != avctx->width || (int) img->d_h != avctx->height) {
|
if ((int) img->d_w != avctx->width || (int) img->d_h != avctx->height) {
|
||||||
av_log(avctx, AV_LOG_INFO, "dimension change! %dx%d -> %dx%d\n",
|
av_log(avctx, AV_LOG_INFO, "dimension change! %dx%d -> %dx%d\n",
|
||||||
avctx->width, avctx->height, img->d_w, img->d_h);
|
avctx->width, avctx->height, img->d_w, img->d_h);
|
||||||
if (avcodec_check_dimensions(avctx, img->d_w, img->d_h))
|
if (av_check_image_size(img->d_w, img->d_h, 0, avctx))
|
||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
avcodec_set_dimensions(avctx, img->d_w, img->d_h);
|
avcodec_set_dimensions(avctx, img->d_w, img->d_h);
|
||||||
}
|
}
|
||||||
|
@@ -33,6 +33,7 @@
|
|||||||
//#define DEBUG
|
//#define DEBUG
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
#include "mjpeg.h"
|
#include "mjpeg.h"
|
||||||
@@ -218,7 +219,7 @@ int ff_mjpeg_decode_sof(MJpegDecodeContext *s)
|
|||||||
height= s->height;
|
height= s->height;
|
||||||
|
|
||||||
av_log(s->avctx, AV_LOG_DEBUG, "sof0: picture: %dx%d\n", width, height);
|
av_log(s->avctx, AV_LOG_DEBUG, "sof0: picture: %dx%d\n", width, height);
|
||||||
if(avcodec_check_dimensions(s->avctx, width, height))
|
if(av_check_image_size(width, height, 0, s->avctx))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
nb_components = get_bits(&s->gb, 8);
|
nb_components = get_bits(&s->gb, 8);
|
||||||
|
@@ -28,6 +28,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "libavutil/intmath.h"
|
#include "libavutil/intmath.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
#include "internal.h"
|
#include "internal.h"
|
||||||
@@ -510,7 +511,7 @@ av_cold int MPV_common_init(MpegEncContext *s)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if((s->width || s->height) && avcodec_check_dimensions(s->avctx, s->width, s->height))
|
if((s->width || s->height) && av_check_image_size(s->width, s->height, 0, s->avctx))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
dsputil_init(&s->dsp, s->avctx);
|
dsputil_init(&s->dsp, s->avctx);
|
||||||
|
@@ -23,6 +23,7 @@
|
|||||||
|
|
||||||
#include "libavutil/bswap.h"
|
#include "libavutil/bswap.h"
|
||||||
#include "libavutil/lzo.h"
|
#include "libavutil/lzo.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
#include "rtjpeg.h"
|
#include "rtjpeg.h"
|
||||||
@@ -111,7 +112,7 @@ static int codec_reinit(AVCodecContext *avctx, int width, int height, int qualit
|
|||||||
if (quality >= 0)
|
if (quality >= 0)
|
||||||
get_quant_quality(c, quality);
|
get_quant_quality(c, quality);
|
||||||
if (width != c->width || height != c->height) {
|
if (width != c->width || height != c->height) {
|
||||||
if (avcodec_check_dimensions(avctx, height, width) < 0)
|
if (av_check_image_size(height, width, 0, avctx) < 0)
|
||||||
return 0;
|
return 0;
|
||||||
avctx->width = c->width = width;
|
avctx->width = c->width = width;
|
||||||
avctx->height = c->height = height;
|
avctx->height = c->height = height;
|
||||||
|
@@ -22,6 +22,7 @@
|
|||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
#include "get_bits.h"
|
#include "get_bits.h"
|
||||||
@@ -142,7 +143,7 @@ static int pcx_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
|
|||||||
if (p->data[0])
|
if (p->data[0])
|
||||||
avctx->release_buffer(avctx, p);
|
avctx->release_buffer(avctx, p);
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, w, h))
|
if (av_check_image_size(w, h, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if (w != avctx->width || h != avctx->height)
|
if (w != avctx->width || h != avctx->height)
|
||||||
avcodec_set_dimensions(avctx, w, h);
|
avcodec_set_dimensions(avctx, w, h);
|
||||||
|
@@ -24,6 +24,7 @@
|
|||||||
* Pictor/PC Paint decoder
|
* Pictor/PC Paint decoder
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
#include "cga_data.h"
|
#include "cga_data.h"
|
||||||
@@ -135,7 +136,7 @@ static int decode_frame(AVCodecContext *avctx,
|
|||||||
avctx->pix_fmt = PIX_FMT_PAL8;
|
avctx->pix_fmt = PIX_FMT_PAL8;
|
||||||
|
|
||||||
if (s->width != avctx->width && s->height != avctx->height) {
|
if (s->width != avctx->width && s->height != avctx->height) {
|
||||||
if (avcodec_check_dimensions(avctx, s->width, s->height) < 0)
|
if (av_check_image_size(s->width, s->height, 0, avctx) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
avcodec_set_dimensions(avctx, s->width, s->height);
|
avcodec_set_dimensions(avctx, s->width, s->height);
|
||||||
if (s->frame.data[0])
|
if (s->frame.data[0])
|
||||||
|
@@ -18,6 +18,7 @@
|
|||||||
* License along with FFmpeg; if not, write to the Free Software
|
* License along with FFmpeg; if not, write to the Free Software
|
||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
#include "png.h"
|
#include "png.h"
|
||||||
@@ -441,7 +442,7 @@ static int decode_frame(AVCodecContext *avctx,
|
|||||||
goto fail;
|
goto fail;
|
||||||
s->width = bytestream_get_be32(&s->bytestream);
|
s->width = bytestream_get_be32(&s->bytestream);
|
||||||
s->height = bytestream_get_be32(&s->bytestream);
|
s->height = bytestream_get_be32(&s->bytestream);
|
||||||
if(avcodec_check_dimensions(avctx, s->width, s->height)){
|
if(av_check_image_size(s->width, s->height, 0, avctx)){
|
||||||
s->width= s->height= 0;
|
s->width= s->height= 0;
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
|
@@ -19,6 +19,7 @@
|
|||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "pnm.h"
|
#include "pnm.h"
|
||||||
|
|
||||||
@@ -101,7 +102,7 @@ int ff_pnm_decode_header(AVCodecContext *avctx, PNMContext * const s)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* check that all tags are present */
|
/* check that all tags are present */
|
||||||
if (w <= 0 || h <= 0 || maxval <= 0 || depth <= 0 || tuple_type[0] == '\0' || avcodec_check_dimensions(avctx, w, h))
|
if (w <= 0 || h <= 0 || maxval <= 0 || depth <= 0 || tuple_type[0] == '\0' || av_check_image_size(w, h, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
avctx->width = w;
|
avctx->width = w;
|
||||||
@@ -134,7 +135,7 @@ int ff_pnm_decode_header(AVCodecContext *avctx, PNMContext * const s)
|
|||||||
return -1;
|
return -1;
|
||||||
pnm_get(s, buf1, sizeof(buf1));
|
pnm_get(s, buf1, sizeof(buf1));
|
||||||
avctx->height = atoi(buf1);
|
avctx->height = atoi(buf1);
|
||||||
if(avcodec_check_dimensions(avctx, avctx->width, avctx->height))
|
if(av_check_image_size(avctx->width, avctx->height, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if (avctx->pix_fmt != PIX_FMT_MONOWHITE) {
|
if (avctx->pix_fmt != PIX_FMT_MONOWHITE) {
|
||||||
pnm_get(s, buf1, sizeof(buf1));
|
pnm_get(s, buf1, sizeof(buf1));
|
||||||
|
@@ -20,6 +20,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
|
|
||||||
typedef struct PTXContext {
|
typedef struct PTXContext {
|
||||||
@@ -64,7 +65,7 @@ static int ptx_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
|
|||||||
if (p->data[0])
|
if (p->data[0])
|
||||||
avctx->release_buffer(avctx, p);
|
avctx->release_buffer(avctx, p);
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, w, h))
|
if (av_check_image_size(w, h, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if (w != avctx->width || h != avctx->height)
|
if (w != avctx->width || h != avctx->height)
|
||||||
avcodec_set_dimensions(avctx, w, h);
|
avcodec_set_dimensions(avctx, w, h);
|
||||||
|
@@ -22,6 +22,7 @@
|
|||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
|
|
||||||
@@ -62,7 +63,7 @@ static av_cold int qtrle_encode_init(AVCodecContext *avctx)
|
|||||||
{
|
{
|
||||||
QtrleEncContext *s = avctx->priv_data;
|
QtrleEncContext *s = avctx->priv_data;
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, avctx->width, avctx->height) < 0) {
|
if (av_check_image_size(avctx->width, avctx->height, 0, avctx) < 0) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
s->avctx=avctx;
|
s->avctx=avctx;
|
||||||
|
@@ -25,6 +25,7 @@
|
|||||||
* RV10/RV20 decoder
|
* RV10/RV20 decoder
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
#include "mpegvideo.h"
|
#include "mpegvideo.h"
|
||||||
@@ -369,7 +370,7 @@ static int rv20_decode_picture_header(MpegEncContext *s)
|
|||||||
}
|
}
|
||||||
if(new_w != s->width || new_h != s->height){
|
if(new_w != s->width || new_h != s->height){
|
||||||
av_log(s->avctx, AV_LOG_DEBUG, "attempting to change resolution to %dx%d\n", new_w, new_h);
|
av_log(s->avctx, AV_LOG_DEBUG, "attempting to change resolution to %dx%d\n", new_w, new_h);
|
||||||
if (avcodec_check_dimensions(s->avctx, new_w, new_h) < 0)
|
if (av_check_image_size(new_w, new_h, 0, s->avctx) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
MPV_common_end(s);
|
MPV_common_end(s);
|
||||||
avcodec_set_dimensions(s->avctx, new_w, new_h);
|
avcodec_set_dimensions(s->avctx, new_w, new_h);
|
||||||
|
@@ -24,6 +24,8 @@
|
|||||||
* RV40 decoder
|
* RV40 decoder
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
|
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
#include "mpegvideo.h"
|
#include "mpegvideo.h"
|
||||||
@@ -142,7 +144,7 @@ static int rv40_parse_slice_header(RV34DecContext *r, GetBitContext *gb, SliceIn
|
|||||||
si->pts = get_bits(gb, 13);
|
si->pts = get_bits(gb, 13);
|
||||||
if(!si->type || !get_bits1(gb))
|
if(!si->type || !get_bits1(gb))
|
||||||
rv40_parse_picture_size(gb, &w, &h);
|
rv40_parse_picture_size(gb, &w, &h);
|
||||||
if(avcodec_check_dimensions(r->s.avctx, w, h) < 0)
|
if(av_check_image_size(w, h, 0, r->s.avctx) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
si->width = w;
|
si->width = w;
|
||||||
si->height = h;
|
si->height = h;
|
||||||
|
@@ -19,6 +19,7 @@
|
|||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
#include "sgi.h"
|
#include "sgi.h"
|
||||||
@@ -201,7 +202,7 @@ static int decode_frame(AVCodecContext *avctx,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, s->width, s->height))
|
if (av_check_image_size(s->width, s->height, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
avcodec_set_dimensions(avctx, s->width, s->height);
|
avcodec_set_dimensions(avctx, s->width, s->height);
|
||||||
|
|
||||||
|
@@ -20,6 +20,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
|
|
||||||
#define RT_OLD 0
|
#define RT_OLD 0
|
||||||
@@ -97,7 +98,7 @@ static int sunrast_decode_frame(AVCodecContext *avctx, void *data,
|
|||||||
if (p->data[0])
|
if (p->data[0])
|
||||||
avctx->release_buffer(avctx, p);
|
avctx->release_buffer(avctx, p);
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, w, h))
|
if (av_check_image_size(w, h, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if (w != avctx->width || h != avctx->height)
|
if (w != avctx->width || h != avctx->height)
|
||||||
avcodec_set_dimensions(avctx, w, h);
|
avcodec_set_dimensions(avctx, w, h);
|
||||||
|
@@ -20,6 +20,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
|
|
||||||
enum TargaCompr{
|
enum TargaCompr{
|
||||||
@@ -145,7 +146,7 @@ static int decode_frame(AVCodecContext *avctx,
|
|||||||
if(s->picture.data[0])
|
if(s->picture.data[0])
|
||||||
avctx->release_buffer(avctx, &s->picture);
|
avctx->release_buffer(avctx, &s->picture);
|
||||||
|
|
||||||
if(avcodec_check_dimensions(avctx, w, h))
|
if(av_check_image_size(w, h, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if(w != avctx->width || h != avctx->height)
|
if(w != avctx->width || h != avctx->height)
|
||||||
avcodec_set_dimensions(avctx, w, h);
|
avcodec_set_dimensions(avctx, w, h);
|
||||||
|
@@ -33,6 +33,7 @@
|
|||||||
#include "faxcompr.h"
|
#include "faxcompr.h"
|
||||||
#include "libavutil/common.h"
|
#include "libavutil/common.h"
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
|
|
||||||
typedef struct TiffContext {
|
typedef struct TiffContext {
|
||||||
AVCodecContext *avctx;
|
AVCodecContext *avctx;
|
||||||
@@ -305,7 +306,7 @@ static int tiff_decode_tag(TiffContext *s, const uint8_t *start, const uint8_t *
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if(s->width != s->avctx->width || s->height != s->avctx->height){
|
if(s->width != s->avctx->width || s->height != s->avctx->height){
|
||||||
if(avcodec_check_dimensions(s->avctx, s->width, s->height))
|
if(av_check_image_size(s->width, s->height, 0, s->avctx))
|
||||||
return -1;
|
return -1;
|
||||||
avcodec_set_dimensions(s->avctx, s->width, s->height);
|
avcodec_set_dimensions(s->avctx, s->width, s->height);
|
||||||
}
|
}
|
||||||
@@ -507,7 +508,7 @@ static int decode_frame(AVCodecContext *avctx,
|
|||||||
s->bpp = 1;
|
s->bpp = 1;
|
||||||
avctx->pix_fmt = PIX_FMT_MONOBLACK;
|
avctx->pix_fmt = PIX_FMT_MONOBLACK;
|
||||||
if(s->width != s->avctx->width || s->height != s->avctx->height){
|
if(s->width != s->avctx->width || s->height != s->avctx->height){
|
||||||
if(avcodec_check_dimensions(s->avctx, s->width, s->height))
|
if(av_check_image_size(s->width, s->height, 0, s->avctx))
|
||||||
return -1;
|
return -1;
|
||||||
avcodec_set_dimensions(s->avctx, s->width, s->height);
|
avcodec_set_dimensions(s->avctx, s->width, s->height);
|
||||||
}
|
}
|
||||||
|
@@ -22,6 +22,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "s3tc.h"
|
#include "s3tc.h"
|
||||||
|
|
||||||
@@ -79,7 +80,7 @@ static int txd_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
|
|||||||
if (p->data[0])
|
if (p->data[0])
|
||||||
avctx->release_buffer(avctx, p);
|
avctx->release_buffer(avctx, p);
|
||||||
|
|
||||||
if (avcodec_check_dimensions(avctx, w, h))
|
if (av_check_image_size(w, h, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if (w != avctx->width || h != avctx->height)
|
if (w != avctx->width || h != avctx->height)
|
||||||
avcodec_set_dimensions(avctx, w, h);
|
avcodec_set_dimensions(avctx, w, h);
|
||||||
|
@@ -235,7 +235,7 @@ int avcodec_default_get_buffer(AVCodecContext *s, AVFrame *pic){
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(avcodec_check_dimensions(s,w,h))
|
if(av_check_image_size(w, h, 0, s))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if(s->internal_buffer==NULL){
|
if(s->internal_buffer==NULL){
|
||||||
@@ -487,7 +487,7 @@ int attribute_align_arg avcodec_open(AVCodecContext *avctx, AVCodec *codec)
|
|||||||
|
|
||||||
#define SANE_NB_CHANNELS 128U
|
#define SANE_NB_CHANNELS 128U
|
||||||
if (((avctx->coded_width || avctx->coded_height)
|
if (((avctx->coded_width || avctx->coded_height)
|
||||||
&& avcodec_check_dimensions(avctx, avctx->coded_width, avctx->coded_height))
|
&& av_check_image_size(avctx->coded_width, avctx->coded_height, 0, avctx))
|
||||||
|| avctx->channels > SANE_NB_CHANNELS) {
|
|| avctx->channels > SANE_NB_CHANNELS) {
|
||||||
ret = AVERROR(EINVAL);
|
ret = AVERROR(EINVAL);
|
||||||
goto free_and_end;
|
goto free_and_end;
|
||||||
@@ -554,7 +554,7 @@ int attribute_align_arg avcodec_encode_video(AVCodecContext *avctx, uint8_t *buf
|
|||||||
av_log(avctx, AV_LOG_ERROR, "buffer smaller than minimum size\n");
|
av_log(avctx, AV_LOG_ERROR, "buffer smaller than minimum size\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if(avcodec_check_dimensions(avctx,avctx->width,avctx->height))
|
if(av_check_image_size(avctx->width, avctx->height, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if((avctx->codec->capabilities & CODEC_CAP_DELAY) || pict){
|
if((avctx->codec->capabilities & CODEC_CAP_DELAY) || pict){
|
||||||
int ret = avctx->codec->encode(avctx, buf, buf_size, pict);
|
int ret = avctx->codec->encode(avctx, buf, buf_size, pict);
|
||||||
@@ -604,7 +604,7 @@ int attribute_align_arg avcodec_decode_video2(AVCodecContext *avctx, AVFrame *pi
|
|||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
*got_picture_ptr= 0;
|
*got_picture_ptr= 0;
|
||||||
if((avctx->coded_width||avctx->coded_height) && avcodec_check_dimensions(avctx,avctx->coded_width,avctx->coded_height))
|
if((avctx->coded_width||avctx->coded_height) && av_check_image_size(avctx->coded_width, avctx->coded_height, 0, avctx))
|
||||||
return -1;
|
return -1;
|
||||||
if((avctx->codec->capabilities & CODEC_CAP_DELAY) || avpkt->size){
|
if((avctx->codec->capabilities & CODEC_CAP_DELAY) || avpkt->size){
|
||||||
ret = avctx->codec->decode(avctx, picture, got_picture_ptr,
|
ret = avctx->codec->decode(avctx, picture, got_picture_ptr,
|
||||||
|
@@ -33,6 +33,7 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
#include "get_bits.h"
|
#include "get_bits.h"
|
||||||
@@ -1980,7 +1981,7 @@ static int theora_decode_header(AVCodecContext *avctx, GetBitContext *gb)
|
|||||||
visible_width = s->width = get_bits(gb, 16) << 4;
|
visible_width = s->width = get_bits(gb, 16) << 4;
|
||||||
visible_height = s->height = get_bits(gb, 16) << 4;
|
visible_height = s->height = get_bits(gb, 16) << 4;
|
||||||
|
|
||||||
if(avcodec_check_dimensions(avctx, s->width, s->height)){
|
if(av_check_image_size(s->width, s->height, 0, avctx)){
|
||||||
av_log(avctx, AV_LOG_ERROR, "Invalid dimensions (%dx%d)\n", s->width, s->height);
|
av_log(avctx, AV_LOG_ERROR, "Invalid dimensions (%dx%d)\n", s->width, s->height);
|
||||||
s->width= s->height= 0;
|
s->width= s->height= 0;
|
||||||
return -1;
|
return -1;
|
||||||
|
@@ -22,6 +22,7 @@
|
|||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "vp56.h"
|
#include "vp56.h"
|
||||||
#include "vp8data.h"
|
#include "vp8data.h"
|
||||||
@@ -224,7 +225,7 @@ static void vp8_decode_flush(AVCodecContext *avctx)
|
|||||||
|
|
||||||
static int update_dimensions(VP8Context *s, int width, int height)
|
static int update_dimensions(VP8Context *s, int width, int height)
|
||||||
{
|
{
|
||||||
if (avcodec_check_dimensions(s->avctx, width, height))
|
if (av_check_image_size(width, height, 0, s->avctx))
|
||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
|
|
||||||
vp8_decode_flush(s->avctx);
|
vp8_decode_flush(s->avctx);
|
||||||
|
@@ -68,6 +68,7 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
|
|
||||||
#define PALETTE_COUNT 256
|
#define PALETTE_COUNT 256
|
||||||
@@ -147,7 +148,7 @@ static av_cold int vqa_decode_init(AVCodecContext *avctx)
|
|||||||
s->vqa_version = vqa_header[0];
|
s->vqa_version = vqa_header[0];
|
||||||
s->width = AV_RL16(&vqa_header[6]);
|
s->width = AV_RL16(&vqa_header[6]);
|
||||||
s->height = AV_RL16(&vqa_header[8]);
|
s->height = AV_RL16(&vqa_header[8]);
|
||||||
if(avcodec_check_dimensions(avctx, s->width, s->height)){
|
if(av_check_image_size(s->width, s->height, 0, avctx)){
|
||||||
s->width= s->height= 0;
|
s->width= s->height= 0;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
@@ -18,6 +18,7 @@
|
|||||||
* License along with FFmpeg; if not, write to the Free Software
|
* License along with FFmpeg; if not, write to the Free Software
|
||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "get_bits.h"
|
#include "get_bits.h"
|
||||||
#include "bytestream.h"
|
#include "bytestream.h"
|
||||||
@@ -76,7 +77,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size,
|
|||||||
// read header
|
// read header
|
||||||
w = bytestream_get_le16(&buf);
|
w = bytestream_get_le16(&buf);
|
||||||
h = bytestream_get_le16(&buf);
|
h = bytestream_get_le16(&buf);
|
||||||
if (avcodec_check_dimensions(avctx, w, h) < 0)
|
if (av_check_image_size(w, h, 0, avctx) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
x = bytestream_get_le16(&buf);
|
x = bytestream_get_le16(&buf);
|
||||||
y = bytestream_get_le16(&buf);
|
y = bytestream_get_le16(&buf);
|
||||||
|
@@ -24,6 +24,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
|
|
||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "get_bits.h"
|
#include "get_bits.h"
|
||||||
@@ -84,7 +85,7 @@ static av_cold int yop_decode_init(AVCodecContext *avctx)
|
|||||||
s->avctx = avctx;
|
s->avctx = avctx;
|
||||||
|
|
||||||
if (avctx->width & 1 || avctx->height & 1 ||
|
if (avctx->width & 1 || avctx->height & 1 ||
|
||||||
avcodec_check_dimensions(avctx, avctx->width, avctx->height) < 0) {
|
av_check_image_size(avctx->width, avctx->height, 0, avctx) < 0) {
|
||||||
av_log(avctx, AV_LOG_ERROR, "YOP has invalid dimensions\n");
|
av_log(avctx, AV_LOG_ERROR, "YOP has invalid dimensions\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
include $(SUBDIR)../config.mak
|
include $(SUBDIR)../config.mak
|
||||||
|
|
||||||
NAME = avdevice
|
NAME = avdevice
|
||||||
FFLIBS = avformat avcodec avutil
|
FFLIBS = avformat avcodec avcore avutil
|
||||||
|
|
||||||
HEADERS = avdevice.h
|
HEADERS = avdevice.h
|
||||||
|
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
|
|
||||||
#define LIBAVDEVICE_VERSION_MAJOR 52
|
#define LIBAVDEVICE_VERSION_MAJOR 52
|
||||||
#define LIBAVDEVICE_VERSION_MINOR 2
|
#define LIBAVDEVICE_VERSION_MINOR 2
|
||||||
#define LIBAVDEVICE_VERSION_MICRO 0
|
#define LIBAVDEVICE_VERSION_MICRO 1
|
||||||
|
|
||||||
#define LIBAVDEVICE_VERSION_INT AV_VERSION_INT(LIBAVDEVICE_VERSION_MAJOR, \
|
#define LIBAVDEVICE_VERSION_INT AV_VERSION_INT(LIBAVDEVICE_VERSION_MAJOR, \
|
||||||
LIBAVDEVICE_VERSION_MINOR, \
|
LIBAVDEVICE_VERSION_MINOR, \
|
||||||
|
@@ -22,6 +22,7 @@
|
|||||||
#undef __STRICT_ANSI__ //workaround due to broken kernel headers
|
#undef __STRICT_ANSI__ //workaround due to broken kernel headers
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "libavutil/rational.h"
|
#include "libavutil/rational.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "libavformat/avformat.h"
|
#include "libavformat/avformat.h"
|
||||||
#include "libavcodec/dsputil.h"
|
#include "libavcodec/dsputil.h"
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
@@ -116,7 +117,7 @@ static int grab_read_header(AVFormatContext *s1, AVFormatParameters *ap)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(avcodec_check_dimensions(s1, s->video_win.width, s->video_win.height) < 0)
|
if(av_check_image_size(s->video_win.width, s->video_win.height, 0, s1) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
desired_palette = -1;
|
desired_palette = -1;
|
||||||
|
@@ -43,6 +43,7 @@
|
|||||||
#endif
|
#endif
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <strings.h>
|
#include <strings.h>
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
|
|
||||||
static const int desired_video_buffers = 256;
|
static const int desired_video_buffers = 256;
|
||||||
|
|
||||||
@@ -623,7 +624,7 @@ static int v4l2_read_header(AVFormatContext *s1, AVFormatParameters *ap)
|
|||||||
|
|
||||||
return AVERROR(EIO);
|
return AVERROR(EIO);
|
||||||
}
|
}
|
||||||
if (avcodec_check_dimensions(s1, s->width, s->height) < 0)
|
if (av_check_image_size(s->width, s->height, 0, s1) < 0)
|
||||||
return AVERROR(EINVAL);
|
return AVERROR(EINVAL);
|
||||||
s->frame_format = desired_format;
|
s->frame_format = desired_format;
|
||||||
|
|
||||||
|
@@ -26,7 +26,7 @@
|
|||||||
|
|
||||||
#define LIBAVFILTER_VERSION_MAJOR 1
|
#define LIBAVFILTER_VERSION_MAJOR 1
|
||||||
#define LIBAVFILTER_VERSION_MINOR 27
|
#define LIBAVFILTER_VERSION_MINOR 27
|
||||||
#define LIBAVFILTER_VERSION_MICRO 0
|
#define LIBAVFILTER_VERSION_MICRO 1
|
||||||
|
|
||||||
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
|
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
|
||||||
LIBAVFILTER_VERSION_MINOR, \
|
LIBAVFILTER_VERSION_MINOR, \
|
||||||
|
@@ -28,6 +28,7 @@
|
|||||||
#include "parseutils.h"
|
#include "parseutils.h"
|
||||||
#include "libavutil/pixdesc.h"
|
#include "libavutil/pixdesc.h"
|
||||||
#include "libavutil/colorspace.h"
|
#include "libavutil/colorspace.h"
|
||||||
|
#include "libavcore/imgutils.h"
|
||||||
#include "libavcore/parseutils.h"
|
#include "libavcore/parseutils.h"
|
||||||
|
|
||||||
enum { RED = 0, GREEN, BLUE, ALPHA };
|
enum { RED = 0, GREEN, BLUE, ALPHA };
|
||||||
@@ -406,7 +407,7 @@ static int color_config_props(AVFilterLink *inlink)
|
|||||||
|
|
||||||
color->w &= ~((1 << color->hsub) - 1);
|
color->w &= ~((1 << color->hsub) - 1);
|
||||||
color->h &= ~((1 << color->vsub) - 1);
|
color->h &= ~((1 << color->vsub) - 1);
|
||||||
if (avcodec_check_dimensions(ctx, color->w, color->h) < 0)
|
if (av_check_image_size(color->w, color->h, 0, ctx) < 0)
|
||||||
return AVERROR(EINVAL);
|
return AVERROR(EINVAL);
|
||||||
|
|
||||||
memcpy(rgba_color, color->color, sizeof(rgba_color));
|
memcpy(rgba_color, color->color, sizeof(rgba_color));
|
||||||
|
Reference in New Issue
Block a user