Changeset 157 in SHVCSoftware


Ignore:
Timestamp:
8 May 2013, 01:28:01 (12 years ago)
Author:
qualcomm
Message:

Move direct_dependency_flag (MACRO: VPS_MOVE_DIR_DEPENDENCY_FLAG)

Move the syntax element direct_dependency_flag[][] to immediately follow the syntax elements dimension_id[][] in the VPS extn.

From: Adarsh K. Ramasubramonian <aramasub@…>

Location:
branches/SHM-2.0-dev/source/Lib
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-2.0-dev/source/Lib/TLibCommon/TypeDef.h

    r156 r157  
    5555#define VPS_EXTN_DIRECT_REF_LAYERS_CONTINUE   1
    5656#define VPS_OUTPUT_LAYER_SET_IDX         1      ///< Signal output_layer_set_idx[i] as output_layer_set_idx_minus1[i]
     57#define VPS_MOVE_DIR_DEPENDENCY_FLAG     1      ///< Move the syntax element direct_dependency_flag to follow the syntax element dimension_id
    5758#endif
    5859
  • branches/SHM-2.0-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r156 r157  
    903903  }
    904904#endif
    905 
     905#if VPS_MOVE_DIR_DEPENDENCY_FLAG
     906#if VPS_EXTN_DIRECT_REF_LAYERS
     907  // For layer 0
     908  vps->setNumDirectRefLayers(0, 0);
     909  // For other layers
     910  for( Int layerCtr = 1; layerCtr <= vps->getMaxLayers() - 1; layerCtr++)
     911  {
     912    UInt numDirectRefLayers = 0;
     913    for( Int refLayerCtr = 0; refLayerCtr < layerCtr; refLayerCtr++)
     914    {
     915      READ_FLAG(uiCode, "direct_dependency_flag[i][j]" ); vps->setDirectDependencyFlag(layerCtr, refLayerCtr, uiCode? true : false);
     916      if(uiCode)
     917      {
     918        vps->setRefLayerId(layerCtr, numDirectRefLayers, refLayerCtr);
     919        numDirectRefLayers++;
     920      }
     921    }
     922    vps->setNumDirectRefLayers(layerCtr, numDirectRefLayers);
     923  }
     924#endif
     925#endif
    906926#if VPS_EXTN_PROFILE_INFO
    907927  // Profile-tier-level signalling
     
    941961  } 
    942962#endif
     963#if !VPS_MOVE_DIR_DEPENDENCY_FLAG
    943964#if VPS_EXTN_DIRECT_REF_LAYERS
    944965  // For layer 0
     
    959980    vps->setNumDirectRefLayers(layerCtr, numDirectRefLayers);
    960981  }
     982#endif
    961983#endif
    962984}
  • branches/SHM-2.0-dev/source/Lib/TLibEncoder/TEncCavlc.cpp

    r156 r157  
    702702  }
    703703#endif
     704#if VPS_MOVE_DIR_DEPENDENCY_FLAG
     705#if VPS_EXTN_DIRECT_REF_LAYERS
     706  for( Int layerCtr = 1; layerCtr <= vps->getMaxLayers() - 1; layerCtr++)
     707  {
     708    for( Int refLayerCtr = 0; refLayerCtr < layerCtr; refLayerCtr++)
     709    {
     710      WRITE_FLAG(vps->getDirectDependencyFlag(layerCtr, refLayerCtr), "direct_dependency_flag[i][j]" );
     711    }
     712  }
     713#endif
     714#endif
    704715#if VPS_EXTN_PROFILE_INFO
    705716  // Profile-tier-level signalling
     
    735746  }
    736747#endif
     748#if !VPS_MOVE_DIR_DEPENDENCY_FLAG
    737749#if VPS_EXTN_DIRECT_REF_LAYERS
    738750  for( Int layerCtr = 1; layerCtr <= vps->getMaxLayers() - 1; layerCtr++)
     
    743755    }
    744756  }
     757#endif
    745758#endif
    746759}
Note: See TracChangeset for help on using the changeset viewer.