Mercurial > libavcodec.hg
changeset 10706:29d5a7712fb9 libavcodec
Add Auravision Aura decoding support
author | kostya |
---|---|
date | Wed, 23 Dec 2009 13:04:57 +0000 |
parents | 126c0fef9167 |
children | 6e3c41fb2eb7 |
files | Makefile allcodecs.c avcodec.h cyuv.c |
diffstat | 4 files changed, 25 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile Wed Dec 23 09:10:40 2009 +0000 +++ b/Makefile Wed Dec 23 13:04:57 2009 +0000 @@ -60,6 +60,7 @@ OBJS-$(CONFIG_ASV2_ENCODER) += asv1.o mpeg12data.o OBJS-$(CONFIG_ATRAC1_DECODER) += atrac1.o atrac.o OBJS-$(CONFIG_ATRAC3_DECODER) += atrac3.o atrac.o +OBJS-$(CONFIG_AURA_DECODER) += cyuv.o OBJS-$(CONFIG_AVS_DECODER) += avs.o OBJS-$(CONFIG_BETHSOFTVID_DECODER) += bethsoftvideo.o OBJS-$(CONFIG_BFI_DECODER) += bfi.o
--- a/allcodecs.c Wed Dec 23 09:10:40 2009 +0000 +++ b/allcodecs.c Wed Dec 23 13:04:57 2009 +0000 @@ -65,6 +65,7 @@ REGISTER_DECODER (AMV, amv); REGISTER_ENCDEC (ASV1, asv1); REGISTER_ENCDEC (ASV2, asv2); + REGISTER_DECODER (AURA, aura); REGISTER_DECODER (AVS, avs); REGISTER_DECODER (BETHSOFTVID, bethsoftvid); REGISTER_DECODER (BFI, bfi);
--- a/avcodec.h Wed Dec 23 09:10:40 2009 +0000 +++ b/avcodec.h Wed Dec 23 13:04:57 2009 +0000 @@ -30,7 +30,7 @@ #include "libavutil/avutil.h" #define LIBAVCODEC_VERSION_MAJOR 52 -#define LIBAVCODEC_VERSION_MINOR 43 +#define LIBAVCODEC_VERSION_MINOR 44 #define LIBAVCODEC_VERSION_MICRO 0 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
--- a/cyuv.c Wed Dec 23 09:10:40 2009 +0000 +++ b/cyuv.c Wed Dec 23 13:04:57 2009 +0000 @@ -82,6 +82,10 @@ unsigned char cur_byte; int pixel_groups; + if (avctx->codec_id == CODEC_ID_AURA) { + y_table = u_table; + u_table = v_table; + } /* sanity check the buffer size: A buffer has 3x16-bytes tables * followed by (height) lines each with 3 bytes to represent groups * of 4 pixels. Thus, the total size of the buffer ought to be: @@ -163,6 +167,23 @@ return buf_size; } +#if CONFIG_AURA_DECODER +AVCodec aura_decoder = { + "aura", + CODEC_TYPE_VIDEO, + CODEC_ID_AURA, + sizeof(CyuvDecodeContext), + cyuv_decode_init, + NULL, + NULL, + cyuv_decode_frame, + CODEC_CAP_DR1, + NULL, + .long_name = NULL_IF_CONFIG_SMALL("Auravision AURA"), +}; +#endif + +#if CONFIG_CYUV_DECODER AVCodec cyuv_decoder = { "cyuv", CODEC_TYPE_VIDEO, @@ -176,4 +197,4 @@ NULL, .long_name = NULL_IF_CONFIG_SMALL("Creative YUV (CYUV)"), }; - +#endif