lavc/dpx: Reset n_datum for every new line when decoding 12bit.

Fixes odd unpacked 12bit decoding.
Reported-by: Piotr Bandurski
This commit is contained in:
Carl Eugen Hoyos 2018-06-13 14:19:45 +02:00
parent 28d33c252e
commit 78298bce70
2 changed files with 4 additions and 3 deletions

View File

@ -234,10 +234,10 @@ static int decode_frame(AVCodecContext *avctx,
case 12:
if (!packing) {
int tested = 0;
if (descriptor == 50 && endian && (avctx->width%8) == 0) { // Little endian and widths not a multiple of 8 need tests
if (descriptor == 50 && endian) { // Little endian needs tests
tested = 1;
}
if (descriptor == 51 && endian && (avctx->width%2) == 0) { // Little endian and widths not a multiple of 2 need tests
if (descriptor == 51 && endian) { // Little endian needs tests
tested = 1;
}
if (!tested) {
@ -422,6 +422,7 @@ static int decode_frame(AVCodecContext *avctx,
&n_datum, endian);
}
}
n_datum = 0;
for (i = 0; i < elements; i++)
ptr[i] += p->linesize[i];
// Jump to next aligned position

View File

@ -29,7 +29,7 @@
#define LIBAVCODEC_VERSION_MAJOR 58
#define LIBAVCODEC_VERSION_MINOR 20
#define LIBAVCODEC_VERSION_MICRO 101
#define LIBAVCODEC_VERSION_MICRO 102
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
LIBAVCODEC_VERSION_MINOR, \