}
static void vp56_deblock_filter(VP56Context *s, uint8_t *yuv,
- int stride, int dx, int dy)
+ ptrdiff_t stride, int dx, int dy)
{
int t = ff_vp56_filter_threshold[s->quantizer];
if (dx) s->vp56dsp.edge_filter_hor(yuv + 10-dx , stride, t);
}
static void vp56_mc(VP56Context *s, int b, int plane, uint8_t *src,
- int stride, int x, int y)
+ ptrdiff_t stride, int x, int y)
{
uint8_t *dst = s->frames[VP56_FRAME_CURRENT]->data[plane] + s->block_offset[b];
uint8_t *src_block;
y<0 || y+12>=s->plane_height[plane]) {
s->vdsp.emulated_edge_mc(s->edge_emu_buffer,
src + s->block_offset[b] + (dy-2)*stride + (dx-2),
- stride, 12, 12, x, y,
+ stride, stride,
+ 12, 12, x, y,
s->plane_width[plane],
s->plane_height[plane]);
src_block = s->edge_emu_buffer;
s->mb_height = (avctx->coded_height+15) / 16;
if (s->mb_width > 1000 || s->mb_height > 1000) {
- avcodec_set_dimensions(avctx, 0, 0);
+ ff_set_dimensions(avctx, 0, 0);
av_log(avctx, AV_LOG_ERROR, "picture too big\n");
- return -1;
+ return AVERROR_INVALIDDATA;
}
s->above_blocks = av_realloc(s->above_blocks,
if (s->has_alpha) {
if (remaining_buf_size < 3)
- return -1;
+ return AVERROR_INVALIDDATA;
alpha_offset = bytestream_get_be24(&buf);
remaining_buf_size -= 3;
if (remaining_buf_size < alpha_offset)
- return -1;
+ return AVERROR_INVALIDDATA;
}
for (is_alpha=0; is_alpha < 1+s->has_alpha; is_alpha++) {
int mb_row, mb_col, mb_row_flip, mb_offset = 0;
- int block, y, uv, stride_y, stride_uv;
+ int block, y, uv;
+ ptrdiff_t stride_y, stride_uv;
int golden_frame = 0;
s->modelp = &s->models[is_alpha];
for (i = 0; i < 4; i++)
av_frame_unref(s->frames[i]);
if (is_alpha) {
- avcodec_set_dimensions(avctx, 0, 0);
- return -1;
+ ff_set_dimensions(avctx, 0, 0);
+ return AVERROR_INVALIDDATA;
}
}
if (!is_alpha) {
- if (ff_get_buffer(avctx, p, AV_GET_BUFFER_FLAG_REF) < 0) {
+ int ret = ff_get_buffer(avctx, p, AV_GET_BUFFER_FLAG_REF);
+ if (ret < 0) {
av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
- return -1;
+ return ret;
}
if (res == VP56_SIZE_CHANGE)
if (vp56_size_changed(avctx)) {
av_frame_unref(p);
- return -1;
+ return AVERROR_INVALIDDATA;
}
}
ff_hpeldsp_init(&s->hdsp, avctx->flags);
ff_videodsp_init(&s->vdsp, 8);
ff_vp3dsp_init(&s->vp3dsp, avctx->flags);
- ff_vp56dsp_init(&s->vp56dsp, avctx->codec->id);
for (i = 0; i < 64; i++) {
-#define T(x) (x >> 3) | ((x & 7) << 3)
- s->idct_scantable[i] = T(ff_zigzag_direct[i]);
-#undef T
+#define TRANSPOSE(x) (x >> 3) | ((x & 7) << 3)
+ s->idct_scantable[i] = TRANSPOSE(ff_zigzag_direct[i]);
+#undef TRANSPOSE
}
for (i = 0; i < FF_ARRAY_ELEMS(s->frames); i++) {