From 9d85382c153bd4bcb58b7683f4d06658bf18c4d7 Mon Sep 17 00:00:00 2001 From: Bastien Bouclet Date: Wed, 8 Feb 2012 09:37:27 +0100 Subject: VIDEO: Fix the BINK decoder to play file whose width is 24px See https://ffmpeg.org/trac/ffmpeg/ticket/962 --- video/bink_decoder.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'video') diff --git a/video/bink_decoder.cpp b/video/bink_decoder.cpp index c5dc5f280b..884ca69f17 100644 --- a/video/bink_decoder.cpp +++ b/video/bink_decoder.cpp @@ -717,15 +717,15 @@ void BinkDecoder::initBundles() { for (int i = 0; i < 2; i++) { int width = MAX(cw[i], 8); - _bundles[kSourceBlockTypes ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourceSubBlockTypes].countLengths[i] = Common::intLog2((width >> 4) + 511) + 1; - _bundles[kSourceColors ].countLengths[i] = Common::intLog2((cbw[i] )*64 + 511) + 1; - _bundles[kSourceIntraDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourceInterDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourceXOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourceYOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; - _bundles[kSourcePattern ].countLengths[i] = Common::intLog2((cbw[i] << 3) + 511) + 1; - _bundles[kSourceRun ].countLengths[i] = Common::intLog2((cbw[i] )*48 + 511) + 1; + _bundles[kSourceBlockTypes ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceSubBlockTypes].countLengths[i] = Common::intLog2(((width + 7) >> 4) + 511) + 1; + _bundles[kSourceColors ].countLengths[i] = Common::intLog2((cbw[i]) * 64 + 511) + 1; + _bundles[kSourceIntraDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceInterDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceXOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceYOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourcePattern ].countLengths[i] = Common::intLog2((cbw[i] << 3) + 511) + 1; + _bundles[kSourceRun ].countLengths[i] = Common::intLog2((cbw[i]) * 48 + 511) + 1; } } -- cgit v1.2.3