Changeset 632 in SHVCSoftware


Ignore:
Timestamp:
15 Mar 2014, 08:51:12 (11 years ago)
Author:
qualcomm
Message:

Bugfix to r630 - corrected calculation of SH extension length

From: Adarsh K. Ramasubramonian <aramasub@…>

Location:
branches/SHM-5.1-dev/source/Lib
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-5.1-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r631 r632  
    29042904                                          );
    29052905
    2906     if( rpcSlice->getPocMsbValRequiredFlag() /* vps_poc_lsb_aligned_flag */ )
     2906    if( !rpcSlice->getPocMsbValRequiredFlag() /* vps_poc_lsb_aligned_flag */ )
    29072907    {
    29082908      READ_FLAG( uiCode,    "poc_msb_val_present_flag"); rpcSlice->setPocMsbValPresentFlag( uiCode ? true : false );
  • branches/SHM-5.1-dev/source/Lib/TLibEncoder/TEncCavlc.cpp

    r631 r632  
    264264      WRITE_FLAG( ppsExtensionTypeFlag[i], "pps_extension_type_flag" );
    265265    }
    266 #if !POC_RESET_IDC
     266#if POC_RESET_IDC
    267267    if( ppsExtensionTypeFlag[0] )
    268     {
    269 #else
    270     if( ppsExtensionTypeFlag[1] )
    271268    {
    272269      WRITE_FLAG( pcPPS->getPocResetInfoPresentFlag() ? 1 : 0, "poc_reset_info_present_flag" );
     
    22142211    {
    22152212      shExtnLengthInBit += 2;
    2216       if (slice->getPocResetIdc() > 0)
    2217       {
    2218         shExtnLengthInBit += 6;
    2219         if (slice->getPocResetIdc() == 3)
    2220         {
    2221           shExtnLengthInBit += (slice->getSPS()->getBitsForPOC() + 1);
    2222         }
    2223       }
    2224     }
    2225 
    2226 
    2227     if ( slice->getPocMsbValRequiredFlag() )
     2213    }
     2214    if (slice->getPocResetIdc() > 0)
     2215    {
     2216      shExtnLengthInBit += 6;
     2217    }
     2218    if (slice->getPocResetIdc() == 3)
     2219    {
     2220      shExtnLengthInBit += (slice->getSPS()->getBitsForPOC() + 1);
     2221    }
     2222
     2223
     2224    if( !slice->getPocMsbValRequiredFlag() /* &&  vps_poc_lsb_aligned_flag */ )
     2225    {
     2226      shExtnLengthInBit++;
     2227    }
     2228    else
     2229    {
     2230      if( slice->getPocMsbValRequiredFlag() )
     2231      {
     2232        slice->setPocMsbValPresentFlag( true );
     2233      }
     2234      else
     2235      {
     2236        slice->setPocMsbValPresentFlag( false );
     2237      }
     2238    }
     2239
     2240    if( slice->getPocMsbValPresentFlag() )
    22282241    {
    22292242      Int iMaxPOClsb = 1<< slice->getSPS()->getBitsForPOC();
     
    22612274    }
    22622275
    2263     if( slice->getPocMsbValRequiredFlag() /* vps_poc_lsb_aligned_flag */ )
     2276    if( !slice->getPocMsbValRequiredFlag() /* && vps_poc_lsb_aligned_flag */ )
    22642277    {
    22652278      WRITE_FLAG( slice->getPocMsbValPresentFlag(),                           "poc_msb_val_present_flag" );
Note: See TracChangeset for help on using the changeset viewer.