python实现屏幕录制_使用python调用ffmpeg的录制项目总结

录制项目终于做完,不用总是提醒自己抓紧时间这样来想问题了。

在完成之后带着一些满足感,回头看看哪些地方是需要改进的,哪些地方又是有更好的替代方案,自己又有哪些不足。

下面按照软件的各部分分别做作总结:

0. 软件应用场景:

客户希望用视频+音频的方式录制下会议的内容。除了录制会议室情况之外,会议中还有可能需要录制电脑屏幕内容,比如在做PPT讲解等,所以需要一个在两种录制方式之间快捷切换的软件。除此之外,需要一个防止复制运行的机制和完整的安装包。

1. 核心:subprocess子进程运行控制。

由应用来看,关键是录制屏幕和录制摄像头,以及用快捷键控制在这两者之间切换。

我的实现是通过python3调用ffmpeg,ffmpeg实现录制,python来完成切换。

从开发角度来说,并不算难,抛去录制这个功能,这个软件实际上应该这样描述:python完全控制ffmpeg.exe进程的应用。

进一步地说,ffmpeg能做到的,软件大部分都可以做到,不同的是可以添加快捷键控制等,可以用python对除了ffmpeg功能之外做一些必要的补充。比如,客户在需求实现之前测试发现win10系统下自买的摄像头运行时间长了之后会随机的中断录制,卖家也无办法解决,因为是win10系统兼容性问题。所以客户提出在录制异常中断的情况下,能够自动重新开始录制。这个需求的满足就依赖python对ffmpeg的补充。

另外,完全控制ffmpeg进程关键在于如何自然退出。ffmpeg在cmd运行按下q键是退出,利用这一点往子进程输入流写入'q'实现了自然退出,保证了数据的正常写入和保存,并且

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值