Ignore:
Timestamp:
13 Aug 2015, 17:38:13 (9 years ago)
Author:
tech
Message:

Merged 14.1-update-dev1@1312.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/Lib/TLibEncoder/TEncBinCoderCABACCounter.cpp

    r1179 r1313  
    22 * License, included below. This software may be subject to other third party
    33 * and contributor rights, including patent rights, and no such rights are
    4  * granted under this license. 
     4 * granted under this license.
    55 *
    6 * Copyright (c) 2010-2015, ITU/ISO/IEC
     6 * Copyright (c) 2010-2015, ITU/ISO/IEC
    77 * All rights reserved.
    88 *
     
    3838#include "TEncBinCoderCABACCounter.h"
    3939#include "TLibCommon/TComRom.h"
     40#include "TLibCommon/Debug.h"
     41
    4042
    4143#if FAST_BIT_EST
     
    5759  m_pcTComBitIf->write(0, UInt(m_fracBits >> 15) );
    5860  m_fracBits &= 32767;
     61  D_PRINT_INDENT( g_traceEncFracBits, "Finish " + n2s(m_fracBits) );   
    5962}
    6063
     
    7275Void TEncBinCABACCounter::encodeBin( UInt binValue, ContextModel &rcCtxModel )
    7376{
     77#if DEBUG_ENCODER_SEARCH_BINS
     78  const UInt64 startingFracBits = m_fracBits;
     79#endif
     80
    7481  m_uiBinsCoded += m_binCountIncrement;
    75  
    7682  m_fracBits += rcCtxModel.getEntropyBits( binValue );
     83  D_PRINT_INDENT( g_traceEncFracBits, "EncodeBin " + n2s(m_fracBits) );   
     84
    7785  rcCtxModel.update( binValue );
     86
     87#if DEBUG_ENCODER_SEARCH_BINS
     88  if ((g_debugCounter + debugEncoderSearchBinWindow) >= debugEncoderSearchBinTargetLine)
     89  {
     90    std::cout << g_debugCounter << ": coding bin value " << binValue << ", fracBits = [" << startingFracBits << "->" << m_fracBits << "]\n";
     91  }
     92
     93  if (g_debugCounter >= debugEncoderSearchBinTargetLine)
     94  {
     95    Char breakPointThis;
     96    breakPointThis = 7;
     97  }
     98  if (g_debugCounter >= (debugEncoderSearchBinTargetLine + debugEncoderSearchBinWindow))
     99  {
     100    exit(0);
     101  }
     102  g_debugCounter++;
     103#endif
    78104}
    79105
     
    83109 * \param binValue bin value
    84110 */
    85 Void TEncBinCABACCounter::encodeBinEP( UInt binValue )
     111Void TEncBinCABACCounter::encodeBinEP( UInt /*binValue*/ )
    86112{
    87113  m_uiBinsCoded += m_binCountIncrement;
    88114  m_fracBits += 32768;
     115    D_PRINT_INDENT( g_traceEncFracBits , "EncodeBinEP " + n2s(m_fracBits) );   
    89116}
    90117
     
    95122 * \param numBins number of bins
    96123 */
    97 Void TEncBinCABACCounter::encodeBinsEP( UInt binValues, Int numBins )
     124Void TEncBinCABACCounter::encodeBinsEP( UInt /*binValues*/, Int numBins )
    98125{
    99126  m_uiBinsCoded += numBins & -m_binCountIncrement;
    100127  m_fracBits += 32768 * numBins;
     128  D_PRINT_INDENT( g_traceEncFracBits , "EncodeBinsEP " + n2s(m_fracBits) );   
    101129}
    102130
     
    110138  m_uiBinsCoded += m_binCountIncrement;
    111139  m_fracBits += ContextModel::getEntropyBitsTrm( binValue );
     140  D_PRINT_INDENT( g_traceEncFracBits , "EncodeBinTrm " + n2s(m_fracBits) );   
     141}
     142
     143Void TEncBinCABACCounter::align()
     144{
     145  m_fracBits = (m_fracBits + 32767) & (~32767);
     146  D_PRINT_INDENT( g_traceEncFracBits, "Align " + n2s(m_fracBits) );   
    112147}
    113148
Note: See TracChangeset for help on using the changeset viewer.