HM编码架构

首先在encmain.cpp中,进入主函数int main
...
int main(int argc, char* argv[])
{
TAppEncTop cTAppEncTop;

// print information
fprintf( stdout, "\n" );
fprintf( stdout, "HM software: Encoder Version [%s] (including RExt)", NV_VERSION );
fprintf( stdout, NVM_ONOS );
fprintf( stdout, NVM_COMPILEDBY );
fprintf( stdout, NVM_BITS );
fprintf( stdout, "\n\n" );

// create application encoder class
cTAppEncTop.create();

// parse configuration
try
{
if(!cTAppEncTop.parseCfg( argc, argv ))
{
cTAppEncTop.destroy();

if ENVIRONMENT_VARIABLE_DEBUG_AND_TEST

  EnvVar::printEnvVar();

endif

  return 1;
}

}
catch (df::program_options_lite::ParseFailure &e)
{
std::cerr << "Error parsing option ""<< e.arg <<"" with argument ""<< e.val <<""." << std::endl;
return 1;
}

if PRINT_MACRO_VALUES

printMacroSettings();

endif

if ENVIRONMENT_VARIABLE_DEBUG_AND_TEST

EnvVar::printEnvVarInUse();

endif

// starting time
Double dResult;
clock_t lBefore = clock();

// call encoding function
cTAppEncTop.encode();

// ending time
dResult = (Double)(clock()-lBefore) / CLOCKS_PER_SEC;
printf("\n Total Time: %12.3f sec.\n", dResult);

// destroy application encoder class
cTAppEncTop.destroy();
system("pause");
return 0;

}
...

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容