Browse Source

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

Fixes odd unpacked 12bit decoding.
Reported-by: Piotr Bandurski
tags/n4.1
Carl Eugen Hoyos 7 years ago
parent
commit
78298bce70
2 changed files with 4 additions and 3 deletions
  1. +3
    -2
      libavcodec/dpx.c
  2. +1
    -1
      libavcodec/version.h

+ 3
- 2
libavcodec/dpx.c 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


+ 1
- 1
libavcodec/version.h 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, \


Loading…
Cancel
Save