Changeset 55 in SHVCSoftware for trunk/source/App/TAppDecoder/TAppDecTop.cpp
- Timestamp:
- 4 Mar 2013, 22:43:28 (12 years ago)
- Location:
- trunk/source
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source
- Property svn:mergeinfo changed
/branches/SHM-1.1-dev/source (added) merged: 38-49,52-53
- Property svn:mergeinfo changed
-
trunk/source/App/TAppDecoder/TAppDecTop.cpp
r6 r55 102 102 } 103 103 #endif 104 #if AVC_SYNTAX || SYNTAX_OUTPUT 105 if( m_pchBLSyntaxFile ) 106 { 107 free ( m_pchBLSyntaxFile ); 108 m_pchBLSyntaxFile = NULL; 109 } 110 #endif 104 111 } 105 112 … … 147 154 #if AVC_BASE 148 155 TComPic pcBLPic; 149 FILE* pFile = fopen( m_pchBLReconFile, "rb" ); 150 if( !pFile ) 151 { 152 printf( "BL input reading error\n" ); 153 exit(0); 156 if( !m_pchBLReconFile ) 157 { 158 printf( "Wrong base layer YUV input file\n" ); 159 exit(EXIT_FAILURE); 160 } 161 fstream streamYUV( m_pchBLReconFile, fstream::in | fstream::binary ); 162 if( !streamYUV.good() ) 163 { 164 printf( "Base layer YUV input reading error\n" ); 165 exit(EXIT_FAILURE); 154 166 } 155 167 TComList<TComPic*> *cListPic = m_acTDecTop[0].getListPic(); 156 168 m_acTDecTop[0].setBLsize( m_iBLSourceWidth, m_iBLSourceHeight ); 157 m_acTDecTop[0].setBLReconFile( pFile);169 m_acTDecTop[0].setBLReconFile( &streamYUV ); 158 170 pcBLPic.setLayerId( 0 ); 159 171 cListPic->pushBack( &pcBLPic ); 172 #if AVC_SYNTAX 173 if( !m_pchBLSyntaxFile ) 174 { 175 printf( "Wrong base layer syntax file\n" ); 176 exit(EXIT_FAILURE); 177 } 178 fstream streamSyntaxFile( m_pchBLSyntaxFile, fstream::in | fstream::binary ); 179 if( !streamSyntaxFile.good() ) 180 { 181 printf( "Base layer syntax input reading error\n" ); 182 exit(EXIT_FAILURE); 183 } 184 m_acTDecTop[0].setBLSyntaxFile( &streamSyntaxFile ); 185 #endif 160 186 #endif 161 187 … … 254 280 // delete buffers 255 281 #if AVC_BASE 256 if( pFile ) 257 { 258 fclose( pFile ); 259 } 282 if( streamYUV.is_open() ) 283 { 284 streamYUV.close(); 285 } 286 #if AVC_SYNTAX 287 if( streamSyntaxFile.is_open() ) 288 { 289 streamSyntaxFile.close(); 290 } 291 #endif 260 292 pcBLPic.destroy(); 261 293 … … 293 325 // main decoder loop 294 326 bool recon_opened = false; // reconstruction file not yet opened. (must be performed after SPS is seen) 327 328 #if SYNTAX_OUTPUT 329 if( !m_pchBLSyntaxFile ) 330 { 331 printf( "Wrong base layer syntax file\n" ); 332 exit(EXIT_FAILURE); 333 } 334 fstream streamSyntaxFile( m_pchBLSyntaxFile, fstream::out | fstream::binary ); 335 if( !streamSyntaxFile.good() ) 336 { 337 printf( "Base layer syntax input reading error\n" ); 338 exit(EXIT_FAILURE); 339 } 340 m_cTDecTop.setBLSyntaxFile( &streamSyntaxFile ); 341 342 for( Int i = m_iBLFrames * m_iBLSourceWidth * m_iBLSourceHeight * SYNTAX_BYTES / 16; i >= 0; i-- ) 343 { 344 streamSyntaxFile.put( 0 ); 345 } 346 streamSyntaxFile.seekp( 0 ); 347 #endif 295 348 296 349 while (!!bitstreamFile) … … 389 442 } 390 443 } 444 445 #if SYNTAX_OUTPUT 446 if( streamSyntaxFile.is_open() ) 447 { 448 streamSyntaxFile.close(); 449 } 450 #endif 391 451 392 452 xFlushOutput( pcListPic );
Note: See TracChangeset for help on using the changeset viewer.