首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Qt音视频开发13-mpv录像存储

    用mpv来做录像存储,保存视频文件,从来都没有如此的方便,直接设置属性stream-record对应的文件路径即可,我的乖乖,一行代码,如此精简美丽大方,搞得我都不敢相信自己的眼睛,mpv除了支持主流的win、linux、mac三大操作系统外,还支持手机安卓IOS等,尤其是居然支持各种嵌入式linux,记得vlc想要在嵌入式linux上交叉编译成功的话,难于上青天,各种插件的依赖实在是太多了,直到你放弃为止,在X86的linux系统还是比较方便一些的,而在这块,mpv简直是完爆vlc啊,直接命令行都可以在嵌入式linux上安装呢,内置的ffmpeg超强解码器,使得你可以直接命令行调用mpv来播放音视频,这在一些嵌入式linux上Qt无法播放音视频的场景,非常有用,本人在全志H3板子上使用的就是mpv来播放音视频,默认GPU解码使得CPU占用极地。

    01

    Qt编写安防视频监控系统4-删除视频

    一般会有两种处理方式来删除视频,一种是鼠标右键菜单,删除当前视频或者删除所有视频,一种是直接按住当前视频,移到视频通道界面以外就表示删除当前视频,这也是个比较人性化的设置,每个人的喜好不一样,和通道交换功能类似,按住视频拖动到窗体外面表示删除视频,这个功能也需要安装事件过滤器来处理,自动计算当前按下状态下的鼠标是否已经到了窗体外面,按下的时候记住当前视频通道,松开的时候处理删除视频动作即可。删除完成以后同样要立即更新配置文件或者数据库,以便下次应用新的配置,在删除视频的时候,为了保证界面UI的流畅,可以后台慢慢释放资源删除,而不是立即删除,有时候会卡住主界面,体验不好。

    02

    Qt编写安防视频监控系统8-双击节点

    在所有的视频监控系统中,双击摄像机的节点,对应摄像机加载到当前焦点通道显示,这个都是必须具备的功能,还有一些厂家会做双击NVR节点,自动加载该NVR下的所有摄像机全部显示,从通道1开始到通道16或者32,知道排满,或者双击对应的分组,分组下面的所有摄像机自动加载显示视频,这个基础效果在Qt中还是很好实现的,入门级别,唯独双击父节点加载节点下的所有视频,我们知道QTreeWidget默认双击父节点是折叠功能,那怎么取消这个功能呢?或者仅仅是限制单击父节点的+-号来实现折叠和展开,这个就需要用到事件过滤器,事件过滤器的优先级别很高,可以直接优先拿到对应的事件,然后进行处理,处理完成以后如果不需要继续传递下去可以直接return true即可,这样就不会再执行该事件了。

    02
    领券