From 910c7749f65d2c8818eda1996516c87df5ce78de Mon Sep 17 00:00:00 2001 From: miyanhui <dennismi1024@gmail.com> Date: 星期五, 15 二月 2019 19:56:55 +0800 Subject: [PATCH] 解决视频没有的问题 --- QiaoJiaSystem/VideoToImageMulth/RtspAnalysManager.cpp | 31 +++++++++++++++++++++++++++---- 1 files changed, 27 insertions(+), 4 deletions(-) diff --git a/QiaoJiaSystem/VideoToImageMulth/RtspAnalysManager.cpp b/QiaoJiaSystem/VideoToImageMulth/RtspAnalysManager.cpp index 5e713a3..47c8eb5 100644 --- a/QiaoJiaSystem/VideoToImageMulth/RtspAnalysManager.cpp +++ b/QiaoJiaSystem/VideoToImageMulth/RtspAnalysManager.cpp @@ -37,6 +37,7 @@ return rtsp_url; } +//鍒濆鍖栧嚱鏁� void RtspAnalysManager::init() { auto lst = m_lDBTool->searchCamDevTableAll(); @@ -70,6 +71,14 @@ m_controllers.clear(); } +/** + * 鏍规嵁鎽勫儚鏈篒D鍜孯TSP璺緞,澧炲姞鎽勫儚鏈� + * 瀵逛簬姣忎釜鎽勫儚鏈烘湁涓�涓� RtspImageRedisElement 瀵硅薄鐢ㄤ簬淇濆瓨鍥剧墖鍒癛edis + * 鏈変竴涓� RtspCaptureElement 鐢ㄦ埛褰曞彇鍜屼繚瀛樿棰� + * @param index 鎽勫儚鏈篿d + * @param rtsp 涓婇潰鐨勬憚鍍忔満瀵瑰簲鐨勮棰戣矾寰� + * @return -1 娣诲姞澶辫触,0 娣诲姞鎴愬姛 + */ int RtspAnalysManager::addCamera(const std::string &index, const std::string& rtsp) { auto lst = m_lDBTool->searchCamDevTableAll(); Record_Config lst_dev = m_lDBTool->searchConfigTableWithinServerInfo(); @@ -79,7 +88,7 @@ ERR("addCamera faild, camera's num is full!") return -1; } - DBG("RTSP: "<<rtsp<<" INDEX:"<<index); + INFO("RTSP: "<<rtsp<<" INDEX:"<<index); m_imgRedisControllers[index] = new RtspImageRedisElement(index); m_imgRedisControllers[index]->start(); @@ -91,11 +100,16 @@ } else { removeCamera(index); - DBG("removeCamera " << index) - return addCamera(rtsp, index); + INFO("removeCamera " << index); + return addCamera(index, rtsp); } } +/** + * 鏍规嵁CamID绉婚櫎鎽勫儚鏈�,鍚屾椂鍋滄瑙嗛鐨勬姄鍙栧拰淇濆瓨鍥剧墖鍒癛edis + * @param index 鎽勫儚鏈篒D + * @return 鎬绘槸0 + */ int RtspAnalysManager::removeCamera(const std::string &index) { if (m_controllers.find(index) == m_controllers.end())return -1; auto controller = m_controllers[index]; @@ -113,6 +127,10 @@ return 0; } +/** + * 绉婚櫎鎵�鏈夌殑鎽勫儚鏈� + * @return + */ int RtspAnalysManager::removeAll() { for (auto controller: m_controllers) { controller.second->stop(); @@ -138,13 +156,18 @@ return 0; } +//鑾峰彇鏈�澶х殑鎽勫儚鏈烘暟閲� int RtspAnalysManager::getMaxCamCount() { return m_maxCount; } +//鑾峰彇褰撳墠鐨勬憚鍍忔満鏁伴噺 int RtspAnalysManager::getCurrentCamCount() { return m_currentCount; } + + +//褰曞彇瑙嗛鐨凴PC鐨勬帴鍙e嚱鏁� ::std::string RtspAnalysManager::recordVideo(const ::std::string& name, const ::Ice::Current&) { INFO("Record Video For: "<<name); @@ -165,7 +188,7 @@ return name; } - +//淇濆瓨瑙嗛鍒癛tspImageRedis鐨勯槦鍒�,鐢盧tspCaptureElement璋冪敤 bool RtspAnalysManager::SaveImageToRedis(const std::string& camId,const std::string& imageName,const cv::Mat& img) { auto item = m_imgRedisControllers.find(camId); -- Gitblit v1.8.0