最近由于项目涉及到音视频方面的一点东西,所以研究了一波FFmpeg,其实我对这方面是非常有兴趣的,但是由于自己不是计算机专业出身,很多其他的东西都不了解,所以只能叹息心有余而力不足。FFmpeg是一个开源的东西,几乎没有文档,幸运的是有雷神为我们铺下了一条学习的道路,我也是跟着这条道路在走下去。可惜的是2016年7月雷神就已离我们而去,我们虽然年纪相仿,但是差距实在是大,我也很膜拜这位年轻的技术大神。写本文的目的有两个,一是缅怀雷霄骅博士,感谢他为我们做出的巨大贡献,二是我在学习的时候使用的是Mac电脑,却没发现有一篇讲述打开Mac摄像头的代码,几乎都是使用的命令行打开,于是我根据雷神的代码,加以修改,邯郸学步,写了这个打开摄像头的程序,权当学习。本人也将继续学习下去。
列出设备
写这个程序的第一步,当然是要知道机器有什么设备,查询设备的代码如下:
调用该函数显示的结果如下,其中”avfoundation”是指定的表示Mac/iOS端的输入设备
可以看到,在我的机器上,有两个视频设备及一个音频设备,分别是
- [0] FaceTime HD Camera (高清摄像头)
- [1] Capture screen 0 (屏幕录制)
- [0] Built-in Microphone (内建麦克风)
我们在编译安装FFmpeg之后,会拿到一个FFmpeg命令,上述代码,就相当于一条FFmpeg命令: