当前位置: 首页 > news >正文

FFMPEG录制远程监控摄像头MP4

手绘效果图

        上图是录制功能的HTML前端页面,录制功能和解码视频放在一起。录制功能关键是录制(开始录制按钮)、停止录像按钮。当点击“录制”的时候则会开始录制MP4文件, 当点击停止的时候就会停止录制MP4。经过录制后,则会生成MP4,并放到我的RV1126的/tmp目录下。因为我的板子内存不够,只能放到这里。 

HTML和CGI和RV1126后台程序交互框图

        图是HTML、CGI、RV1126后台程序的交互框图。HTML的界面主要是设置两个按钮,分别是录制、停止录制。在HTML页面点击开始录制按钮的时候就会跳转到start_record_cgi.cgi, 它的主要作用是封装消息队列的数据, 具体的实现是message.mtype=1,message.data=2(开始录制MP4标识)并发送到RV1126后台程序,若后台程序msgrcv接收到data == 2的指令则调用FFMPEG开始录制。

        点击“停止录制”则跳转到stop_record_cgi.cgi,它的主要作用是封装停止录制的消息队列数据,具体的实现是message.mtype=1,message.data=3(停止录制MP4标识)并发送到RV1126后台程序, 若后台程序msgrcv接收到data == 3的指令则停止MP4录制。

FFMPEG远程录制功能的代码实现

        上图是HTML的实现, 画红框部分就是开始录制按钮和停止录制按钮的设计,开始按钮的实现是<button type="button" class="button green" οnclick="window.location.href='/cgi-bin/start_record_cgi.cgi'">Start_Record</button>,这里的关键是οnclick="window.location.href='/cgi-bin/start_record_cgi.cgi指的是跳转到start_record_cgi.cgi的CGI程序。停止录制的按钮是<button type="button" class="button blue" οnclick="window.location.href='/cgi-bin/stop_record_cgi.cgi'">Stop_Record</button>,这里的关键是οnclick="window.location.href='/cgi-bin/stop_record_cgi.cgi指的是跳转到stop_record_cgi.cgi的CGI程序。

start_record_cgi.cgi的CGI程序 

stop_record_cgi.cgi程序

RV1126后台程序代码实现

        消息队列接收开始录制和停止录制指令,在rv1126后台程序里面通过一个线程,一直在这里面获取消息队列里面的数据

相关文章:

  • 量子纠缠与类空间隔信息传送
  • 课上测试:MIRACL共享库使用测试
  • 【项目管理git】git学习
  • SpringBoot旅游管理系统的设计与实现
  • 【CSS3】化神篇
  • AI助力芯片设计:解决日益复杂的问题
  • Web后端开发之Maven
  • cudaSetDeviceFlags()函数简介
  • Linux权限(0基础)
  • 探索CSS魔法:3D翻转与渐变光效的结合
  • Axure设计之堆叠柱状图教程(中继器)
  • 2006-2023年上市公司社会责任报告文本(TXT格式)
  • 【生活好帮手】saas小程序,让线上服务触手可及。
  • FreeRTOS之互斥量
  • 机器视觉工程师如何学习C#通讯
  • SANS 网络安全 网络安全三件套
  • 解决MySQL 8.x初始化后设置忽略表和字段大小写敏感的问题
  • 算法刷题整理合集(二)
  • C题库-判断水仙花数
  • 基于 Redis Stream 实现消息队列功能
  • 侵害孩子者,必严惩不贷!3名性侵害未成年人罪犯今日执行死刑
  • 媒体:中国女排前队长朱婷妹妹被保送浙大受质疑,多方回应
  • 混乱的5天:俄乌和谈如何从充满希望走向“卡壳”
  • 董军在第六届联合国维和部长级会议上作大会发言
  • 北方产粮大省遭遇气象干旱,夏粮用水如何解决?
  • 马上评|让查重回归促进学术规范的本意