| | |
| | | LOG_INFO << "CameraWrapper::start" << LOG_ENDL;
|
| | |
|
| | | running = true;
|
| | | int ret = pthread_create(&live_daemon_thid, NULL, CameraWrapper::live_daemon_thd, this);
|
| | | int ret = pthread_create(&decoder_thid, NULL, CameraWrapper::decoder_thd, this);
|
| | | if(ret != 0)
|
| | | {
|
| | | LOGP(ERROR, "pthread_create: %s/n", strerror(ret));
|
| | |
| | | return;
|
| | |
|
| | | running = false;
|
| | | pthread_join(live_daemon_thid, NULL);
|
| | | pthread_join(decoder_thid, NULL);
|
| | | }
|
| | |
|
| | | static float pl_analizer_plbg_user_score_2_func(const MB_Frame* frame, const PLGH_Rect& rects, uint8_t* croppedData)
|
| | |
| | | plplContext.params.push_back(iter->rect.leftTop.Y);
|
| | | plplContext.params.push_back(iter->rect.rightBottom.X);
|
| | | plplContext.params.push_back(iter->rect.rightBottom.Y);
|
| | |
|
| | | plplContext.cmds.push_back(PLPLC_TEXT);
|
| | | plplContext.params.push_back(iter->rect.leftTop.X);
|
| | | plplContext.params.push_back(iter->rect.leftTop.Y);
|
| | | plplContext.params.push_back(PLPLType("abc"));
|
| | | }
|
| | |
|
| | | return false;
|
| | |
| | | return false;
|
| | | }
|
| | |
|
| | | /*static*/ void* CameraWrapper::live_daemon_thd(void* arg)
|
| | | void test_paint(CameraWrapper& cameraWrapper)
|
| | | {
|
| | | LOG_INFO << "CameraWrapper::live_daemon_thd start" << LOG_ENDL;
|
| | | cameraWrapper.plplContext.cmds.push_back(PLPLC_COLOR);
|
| | | cameraWrapper.plplContext.params.push_back('F');
|
| | | cameraWrapper.plplContext.params.push_back(255);
|
| | | cameraWrapper.plplContext.params.push_back(0);
|
| | | cameraWrapper.plplContext.params.push_back(0);
|
| | | cameraWrapper.plplContext.params.push_back(255);
|
| | | cameraWrapper.plplContext.cmds.push_back(PLPLC_RECT);
|
| | | cameraWrapper.plplContext.params.push_back(20);
|
| | | cameraWrapper.plplContext.params.push_back(20);
|
| | | cameraWrapper.plplContext.params.push_back(100);
|
| | | cameraWrapper.plplContext.params.push_back(100);
|
| | | }
|
| | |
|
| | | /*static*/ void* CameraWrapper::decoder_thd(void* arg)
|
| | | {
|
| | | LOG_INFO << "CameraWrapper::decoder_thd start" << LOG_ENDL;
|
| | |
|
| | | CameraWrapper& cameraWrapper = *(CameraWrapper*)arg;
|
| | |
|
| | |
| | | pm.breake(PipeMaterial::PMT_PTR, MB_Frame::MBFT__FIRST, cw_pm_breaker_ptr_paint, &(cameraWrapper.plplContext));
|
| | |
|
| | | //#debug
|
| | | //cameraWrapper.plplContext.cmds.push_back(PLPLC_COLOR);
|
| | | //cameraWrapper.plplContext.params.push_back('F');
|
| | | //cameraWrapper.plplContext.params.push_back(255);
|
| | | //cameraWrapper.plplContext.params.push_back(0);
|
| | | //cameraWrapper.plplContext.params.push_back(0);
|
| | | //cameraWrapper.plplContext.params.push_back(255);
|
| | | //cameraWrapper.plplContext.cmds.push_back(PLPLC_RECT);
|
| | | //cameraWrapper.plplContext.params.push_back(20);
|
| | | //cameraWrapper.plplContext.params.push_back(20);
|
| | | //cameraWrapper.plplContext.params.push_back(100);
|
| | | //cameraWrapper.plplContext.params.push_back(100);
|
| | | //test_paint(cameraWrapper);
|
| | |
|
| | | cameraWrapper.pipeLineRender->pipe(&pm);
|
| | | }
|
| | |
|
| | | LOG_INFO << "CameraWrapper::live_daemon_thd stop, ret=" << LOG_ENDL;
|
| | | LOG_INFO << "CameraWrapper::decoder_thd stop, ret=" << LOG_ENDL;
|
| | | }
|
| | |
|
| | | void CameraWrapper::lockFace()
|