adpcm: Write the proper predictor in trellis mode in IMA QT
authorMartin Storsjö <martin@martin.st>
Thu, 5 Jun 2014 11:49:14 +0000 (14:49 +0300)
committerLuca Barbato <lu_zero@gentoo.org>
Thu, 26 Jun 2014 11:43:46 +0000 (13:43 +0200)
commit21d3e0ac9e1719d8444b3f5466983587ac0ad240
tree65884f1d390f16f7b0ab012070eed586abb12f57
parent744e7eea5d815efea777b6179d96e8d94b63ccfa
adpcm: Write the proper predictor in trellis mode in IMA QT

The actual predictor value, set by the trellis code, never
was written back into the variable that was written into
the block header. This was accidentally removed in b304244b.

This significantly improves the audio quality of the trellis
case, which was plain broken since b304244b.

Encoding IMA QT with trellis still actually gives a slightly
worse quality than without trellis, since the trellis encoder
doesn't use the exact same way of rounding as in
adpcm_ima_qt_compress_sample and adpcm_ima_qt_expand_nibble.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 0776e0ef6ba4160281ef3fabea43e670f3792b4a)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
libavcodec/adpcmenc.c