main.cpp 1008 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * @Description: main.cpp
  3. * @Version: 1.0
  4. * @Autor: lishengyin
  5. * @Date: 2021-10-13 09:35:48
  6. * @LastEditors: lishengyin
  7. * @LastEditTime: 2021-11-08 16:26:21
  8. */
  9. #include <iostream>
  10. #include "user_app.h"
  11. #include <gst/gst.h>
  12. #include "inference.h"
  13. #include "md5.h"
  14. using namespace std;
  15. using namespace MIVA;
  16. int main(int argc, char *argv[])
  17. {
  18. //设置退出信号处理函数
  19. static semaphore sem;
  20. signal(SIGINT, [](int) { sem.post(); });// 设置退出信号
  21. //设置日志
  22. Logger::Instance().add(std::make_shared<ConsoleChannel>());
  23. Logger::Instance().add(std::make_shared<FileChannel>());
  24. Logger::Instance().setWriter(std::make_shared<AsyncLogWriter>());
  25. gst_init(&argc, &argv);
  26. std::string appName = "MIVA";
  27. std::shared_ptr<UserApp> app = UserApp::CreateNew();
  28. // 初始化
  29. if(app->Init(appName) != OK){
  30. ErrorL << "System initialization failed";
  31. return ERR;
  32. }
  33. // 挂起任务
  34. app->StartTask();
  35. sem.wait();
  36. app->Destroy();
  37. return 0;
  38. }