From 1307c11ce6233867fa8c2da968c102c06496efea Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 12 Dec 2014 16:21:54 +0100 Subject: [PATCH] avcodec/avdct: support >8bit per sample dcts Signed-off-by: Michael Niedermayer --- libavcodec/avdct.c | 3 +++ libavcodec/avdct.h | 2 ++ libavcodec/version.h | 2 +- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/libavcodec/avdct.c b/libavcodec/avdct.c index a01a6b767a..f92c691adb 100644 --- a/libavcodec/avdct.c +++ b/libavcodec/avdct.c @@ -63,6 +63,8 @@ static const AVOption avdct_options[] = { {"xvidmmx", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_XVID }, INT_MIN, INT_MAX, V|E|D, "idct"}, {"faani", "floating point AAN IDCT (experimental / for debugging)", 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_FAAN }, INT_MIN, INT_MAX, V|D|E, "idct"}, {"simpleauto", "experimental / for debugging", 0, AV_OPT_TYPE_CONST, {.i64 = FF_IDCT_SIMPLEAUTO }, INT_MIN, INT_MAX, V|E|D, "idct"}, + +{"bits_per_sample", "", OFFSET(bits_per_sample), AV_OPT_TYPE_INT, {.i64 = 8 }, 0, 14, 0,}, {NULL}, }; @@ -99,6 +101,7 @@ int avcodec_dct_init(AVDCT *dsp) avctx->idct_algo = dsp->idct_algo; avctx->dct_algo = dsp->dct_algo; + avctx->bits_per_raw_sample = dsp->bits_per_sample; #define COPY(src, name) memcpy(&dsp->name, &src.name, sizeof(dsp->name)) diff --git a/libavcodec/avdct.h b/libavcodec/avdct.h index 380efe1b25..272422e44c 100644 --- a/libavcodec/avdct.h +++ b/libavcodec/avdct.h @@ -65,6 +65,8 @@ typedef struct AVDCT { void (*get_pixels)(int16_t *block /* align 16 */, const uint8_t *pixels /* align 8 */, ptrdiff_t line_size); + + int bits_per_sample; } AVDCT; /** diff --git a/libavcodec/version.h b/libavcodec/version.h index ef439d63b3..6610e8ca13 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -29,7 +29,7 @@ #include "libavutil/version.h" #define LIBAVCODEC_VERSION_MAJOR 56 -#define LIBAVCODEC_VERSION_MINOR 14 +#define LIBAVCODEC_VERSION_MINOR 15 #define LIBAVCODEC_VERSION_MICRO 100 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \