本文主要是介绍多路h265监控录放开发-(12)完成全部开始录制和全部停止录制代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
xviewer.h
新增
public:
void StartRecord();//126 开始全部摄像头录制
void StopRecord();//126 停止全部摄像头录制
xviewer.cpp
新增
//视频录制
static vector<XCameraRecord*> records;//126void XViewer::StartRecord() //开始全部摄像头录制 126
{StopRecord();qDebug() << "开始全部摄像头录制";ui.status->setText(C("录制中。。。"));//获取配置列表 XCameraConfig* conf = XCameraConfig::Instance();int count = conf->GetCamCount();for (int i = 0; i < count; i++){XCameraData cam = conf->GetCam(i);stringstream ss;ss << cam.save_path << "/" << i << "/";QDir dir;//创建路径存储视频dir.mkpath(ss.str().c_str());XCameraRecord* rec = new XCameraRecord();rec->set_rtsp_url(cam.url);rec->set_save_path(ss.str());rec->set_file_sec(5);rec->Start();//开始录制records.push_back(rec);}//创建录制目录//分别开始录制线程
}void XViewer::StopRecord() //停止全部摄像头录制 126
{ui.status->setText(C("监控中。。。"));for (auto rec : records){rec->Stop();delete rec;}records.clear();
}
运行结果:
不用拖拽到 xcamerawidget视图上,右键然后点击“开始全部录制”,则三个摄像头同时开始一起录制并保存到对应其摄像头索引号的文件中
这篇关于多路h265监控录放开发-(12)完成全部开始录制和全部停止录制代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!