X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fcyuv.c;h=6b9d5b930785718e50dd41a805c40836934237ee;hb=c242bbd8b6939507a1a6fb64101b0553d92d303f;hp=5bfeef001432c263d43ef09d8750d709b27b2388;hpb=00c3b67b8ac6bfdc5a01535173dc537824a53d6e;p=ffmpeg diff --git a/libavcodec/cyuv.c b/libavcodec/cyuv.c index 5bfeef00143..6b9d5b93078 100644 --- a/libavcodec/cyuv.c +++ b/libavcodec/cyuv.c @@ -33,7 +33,8 @@ #include #include "avcodec.h" -#include "dsputil.h" +#include "internal.h" +#include "libavutil/internal.h" typedef struct CyuvDecodeContext { @@ -50,15 +51,15 @@ static av_cold int cyuv_decode_init(AVCodecContext *avctx) s->width = avctx->width; /* width needs to be divisible by 4 for this codec to work */ if (s->width & 0x3) - return -1; + return AVERROR_INVALIDDATA; s->height = avctx->height; - avctx->pix_fmt = PIX_FMT_YUV411P; + avctx->pix_fmt = AV_PIX_FMT_YUV411P; return 0; } static int cyuv_decode_frame(AVCodecContext *avctx, - void *data, int *data_size, + void *data, int *got_frame, AVPacket *avpkt) { const uint8_t *buf = avpkt->data; @@ -81,8 +82,9 @@ static int cyuv_decode_frame(AVCodecContext *avctx, int stream_ptr; unsigned char cur_byte; int pixel_groups; + int ret; - if (avctx->codec_id == CODEC_ID_AURA) { + if (avctx->codec_id == AV_CODEC_ID_AURA) { y_table = u_table; u_table = v_table; } @@ -93,7 +95,7 @@ static int cyuv_decode_frame(AVCodecContext *avctx, if (buf_size != 48 + s->height * (s->width * 3 / 4)) { av_log(avctx, AV_LOG_ERROR, "got a buffer with %d bytes when %d were expected\n", buf_size, 48 + s->height * (s->width * 3 / 4)); - return -1; + return AVERROR_INVALIDDATA; } /* pixel data starts 48 bytes in, after 3x16-byte tables */ @@ -104,9 +106,9 @@ static int cyuv_decode_frame(AVCodecContext *avctx, s->frame.buffer_hints = FF_BUFFER_HINTS_VALID; s->frame.reference = 0; - if (avctx->get_buffer(avctx, &s->frame) < 0) { + if ((ret = ff_get_buffer(avctx, &s->frame)) < 0) { av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n"); - return -1; + return ret; } y_plane = s->frame.data[0]; @@ -161,7 +163,7 @@ static int cyuv_decode_frame(AVCodecContext *avctx, } } - *data_size=sizeof(AVFrame); + *got_frame = 1; *(AVFrame*)data= s->frame; return buf_size; @@ -181,7 +183,7 @@ static av_cold int cyuv_decode_end(AVCodecContext *avctx) AVCodec ff_aura_decoder = { .name = "aura", .type = AVMEDIA_TYPE_VIDEO, - .id = CODEC_ID_AURA, + .id = AV_CODEC_ID_AURA, .priv_data_size = sizeof(CyuvDecodeContext), .init = cyuv_decode_init, .close = cyuv_decode_end, @@ -195,7 +197,7 @@ AVCodec ff_aura_decoder = { AVCodec ff_cyuv_decoder = { .name = "cyuv", .type = AVMEDIA_TYPE_VIDEO, - .id = CODEC_ID_CYUV, + .id = AV_CODEC_ID_CYUV, .priv_data_size = sizeof(CyuvDecodeContext), .init = cyuv_decode_init, .close = cyuv_decode_end,