Changeset 121 in 3DVCSoftware for trunk/source/Lib
- Timestamp:
- 6 Sep 2012, 18:12:56 (12 years ago)
- Location:
- trunk/source/Lib
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/Lib/TLibCommon/TComDataCU.cpp
r116 r121 90 90 m_pcTrCoeffCr = NULL; 91 91 #if ADAPTIVE_QP_SELECTION 92 #if FIX_MEM_LEAKS 93 m_ArlCoeffIsAliasedAllocation = false; 92 94 m_pcArlCoeffY = NULL; 93 95 m_pcArlCoeffCb = NULL; 94 96 m_pcArlCoeffCr = NULL; 97 #endif 95 98 #endif 96 99 … … 247 250 m_pcArlCoeffCb = m_pcGlbArlCoeffCb; 248 251 m_pcArlCoeffCr = m_pcGlbArlCoeffCr; 252 #if FIX_MEM_LEAKS 253 m_ArlCoeffIsAliasedAllocation = true; 254 #endif 249 255 } 250 256 else … … 362 368 if ( m_pcTrCoeffCr ) { xFree(m_pcTrCoeffCr); m_pcTrCoeffCr = NULL; } 363 369 #if ADAPTIVE_QP_SELECTION 370 #if FIX_MEM_LEAKS 371 if (!m_ArlCoeffIsAliasedAllocation) 372 { 373 xFree(m_pcArlCoeffY); m_pcArlCoeffY = 0; 374 xFree(m_pcArlCoeffCb); m_pcArlCoeffCb = 0; 375 xFree(m_pcArlCoeffCr); m_pcArlCoeffCr = 0; 376 } 377 #endif 364 378 if ( m_pcGlbArlCoeffY ) { xFree(m_pcGlbArlCoeffY); m_pcGlbArlCoeffY = NULL; } 365 379 if ( m_pcGlbArlCoeffCb ) { xFree(m_pcGlbArlCoeffCb); m_pcGlbArlCoeffCb = NULL; } -
trunk/source/Lib/TLibCommon/TComDataCU.h
r118 r121 159 159 Int* m_pcArlCoeffCb; ///< ARL coefficient buffer (Cb) 160 160 Int* m_pcArlCoeffCr; ///< ARL coefficient buffer (Cr) 161 #if FIX_MEM_LEAKS 162 Bool m_ArlCoeffIsAliasedAllocation; ///< ARL coefficient buffer is an alias of the global buffer and must not be free()'d 163 #endif 161 164 162 165 static Int* m_pcGlbArlCoeffY; ///< ARL coefficient buffer (Y) 163 166 static Int* m_pcGlbArlCoeffCb; ///< ARL coefficient buffer (Cb) 164 167 static Int* m_pcGlbArlCoeffCr; ///< ARL coefficient buffer (Cr) 168 165 169 #endif 166 170 -
trunk/source/Lib/TLibCommon/TComPicSym.cpp
r56 r121 122 122 m_apcTComDataCU = NULL; 123 123 124 125 #if FIX_MEM_LEAKS 126 for( i=0; i<(m_iNumColumnsMinus1+1)*(m_iNumRowsMinus1+1); i++ ) 127 { 128 if ( m_apcTComTile[i] ) delete m_apcTComTile[i]; 129 } 130 #endif 131 124 132 delete [] m_apcTComTile; 125 133 m_apcTComTile = NULL; -
trunk/source/Lib/TLibCommon/TypeDef.h
r118 r121 47 47 #define FIX_INIT_ROM 1 48 48 #define FIX_VIRT_DESTRUCTOR 1 49 #define FIX_MEM_LEAKS 1 49 50 50 51 #define FIX_LG_RESTRICTEDRESPRED_M24766 1 52 #define FIX_REMOVE_TILE_DEPENDENCE 1 51 53 52 54 -
trunk/source/Lib/TLibEncoder/TEncCfg.h
r120 r121 272 272 Int m_iColumnRowInfoPresent; 273 273 Int m_iUniformSpacingIdr; 274 #if FIX_REMOVE_TILE_DEPENDENCE 275 #else 274 276 Int m_iTileBoundaryIndependenceIdr; 277 #endif 275 278 Int m_iNumColumnsMinus1; 276 279 UInt* m_puiColumnWidth; … … 287 290 Int m_iWaveFrontSubstreams; 288 291 289 boolm_pictureDigestEnabled; ///< enable(1)/disable(0) md5 computation and SEI signalling292 Bool m_pictureDigestEnabled; ///< enable(1)/disable(0) md5 computation and SEI signalling 290 293 291 294 //====== Weighted Prediction ======== -
trunk/source/Lib/TLibEncoder/TEncTop.cpp
r116 r121 1102 1102 1103 1103 // # substreams is "per tile" when tiles are independent. 1104 #if FIX_REMOVE_TILE_DEPENDENCE 1105 if ( m_iWaveFrontSynchro ) 1106 #else 1104 1107 if (m_iTileBoundaryIndependenceIdr && m_iWaveFrontSynchro) 1108 #endif 1105 1109 { 1106 1110 m_cPPS.setNumSubstreams(m_iWaveFrontSubstreams * (m_iNumColumnsMinus1+1)*(m_iNumRowsMinus1+1)); -
trunk/source/Lib/TLibRenderer/TRenSingleModel.cpp
r100 r121 99 99 if ( m_pcInputSamples [0] ) delete[] m_pcInputSamples [0]; 100 100 if ( m_pcInputSamples [1] ) delete[] m_pcInputSamples [1]; 101 102 #if FIX_MEM_LEAKS 103 if ( m_pcOutputSamples ) delete[] m_pcOutputSamples ; 104 #else 101 105 if ( m_pcOutputSamples ) delete m_pcOutputSamples ; 106 #endif 107 108 #if FIX_MEM_LEAKS 109 if ( m_piInvZLUTLeft ) delete[] m_piInvZLUTLeft ; 110 if ( m_piInvZLUTRight ) delete[] m_piInvZLUTRight; 111 112 if ( m_aapiRefVideoPel[0] ) delete[] ( m_aapiRefVideoPel[0] - ( m_aiRefVideoStrides[0] * m_iPad + m_iPad ) ); 113 if ( m_aapiRefVideoPel[1] ) delete[] ( m_aapiRefVideoPel[1] - ( m_aiRefVideoStrides[1] * m_iPad + m_iPad ) ); 114 if ( m_aapiRefVideoPel[2] ) delete[] ( m_aapiRefVideoPel[2] - ( m_aiRefVideoStrides[2] * m_iPad + m_iPad ) ); 115 #endif 102 116 } 103 117
Note: See TracChangeset for help on using the changeset viewer.