Opened 5 years ago

Last modified 5 years ago

#60 new defect

Encoder Crashing when Rate Control Enabled: Assertion failed: numBins <= 32

Reported by: mrcord81 Owned by: tech
Priority: major Component: HTM software
Version: HTM-10.1 Keywords:
Cc: tech, jct-3v@…

Description

When running the encoder using the configuration file provided with the project (see attached), the encoder crashes with the following error immediately after encoding POC 0 Layer 2.

Assertion failed: numBins <= 32, file ..\..\source\Lib\TLibEncoder\TEncSbac.cpp,

line 445

This was also replicated on version 10.2.

Rate control works fine with version HTM 10.0.

Moreover, upon enabling Rate Control Macros:

KWU_RC_VIEWRC_E0227 and KWU_RC_MADPRED_E0227 the compiler generated a number of errors.

A) TAppEncTop.cpp
..\..\source\App\TAppEncoder\TAppEncTop.cpp(701) : error C2664: 'TEncTop::init' : cannot convert parameter 1 from 'Bool' to 'TAppEncTop *'

Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast

This refers to the following code:

#if KWU_RC_MADPRED_E0227

m_acTEncTopList[layer]->init( isFieldCoding, this );


I think this should read as follows:

#if KWU_RC_MADPRED_E0227

m_acTEncTopList[layer]->init( this,isFieldCoding );

B) A series of error when compiling TencSlice.cpp. There seems to be a missing braces.

TEncSlice.cpp
..\..\source\Lib\TLibEncoder\TEncSlice.cpp(1211) : error C2601: 'TEncSlice::encodeSlice' : local function definitions are illegal

..\..\source\Lib\TLibEncoder\TEncSlice.cpp(796): this line contains a '{' which has not yet been matched

..\..\source\Lib\TLibEncoder\TEncSlice.cpp(1495) : error C2601: 'TEncSlice::xDetermineStartAndBoundingCUAddr' : local function definitions are illegal

..\..\source\Lib\TLibEncoder\TEncSlice.cpp(796): this line contains a '{' which has not yet been matched

..\..\source\Lib\TLibEncoder\TEncSlice.cpp(1818) : error C2601: 'TEncSlice::xGetQPValueAccordingToLambda' : local function definitions are illegal

..\..\source\Lib\TLibEncoder\TEncSlice.cpp(796): this line contains a '{' which has not yet been matched

..\..\source\Lib\TLibEncoder\TEncSlice.cpp(1824) : fatal error C1075: end of file found before the left brace '{' at '..\..\source\Lib\TLibEncoder\TEncSlice.cpp(796)' was matched

C) A series of errors when compiling TEncRateCtrl.cpp

..\..\source\Lib\TLibEncoder\TEncRateCtrl.cpp(948) : error C2374: 'totalMAD' : redefinition; multiple initialization

..\..\source\Lib\TLibEncoder\TEncRateCtrl.cpp(944) : see declaration of 'totalMAD'

..\..\source\Lib\TLibEncoder\TEncRateCtrl.cpp(949) : error C2374: 'MAD' : redefinition; multiple initialization

..\..\source\Lib\TLibEncoder\TEncRateCtrl.cpp(945) : see declaration of 'MAD'

The latter refers to a double declaration. Moreover some MACRO defines have not been updated.

Have you replicated these issues?

Attachments (2)

baseCfg_3view+depth_rate_control.cfg (24.3 KB) - added by mrcord81 5 years ago.
fix60.patch (2.8 KB) - added by lili90 5 years ago.
fix ticket #60 patch

Download all attachments as: .zip

Change history (5)

comment:1 Changed 5 years ago by DefaultCC Plugin

  • Cc tech jct-3v@… added

Changed 5 years ago by mrcord81

comment:2 Changed 5 years ago by mrcord81

  • Summary changed from Encoder Crashing when Rate Control Enabled: Assert to Encoder Crashing when Rate Control Enabled: Assertion failed: numBins <= 32

Changed 5 years ago by lili90

fix ticket #60 patch

comment:3 Changed 5 years ago by lili90

The attached file is generated for HTM-10.1

Note: See TracTickets for help on using tickets.

This list contains all users that will be notified about changes made to this ticket.

These roles will be notified: Reporter, Owner, Subscriber, Participant

  • Gerhard Tech(Owner, Subscriber, Always)
  • jct-3v@…(Subscriber)
  • Karsten Suehring(Always)
  • lili90(Participant)
  • Mario Cordina(Reporter, Participant)