一句话概括:mac上FFmpeg不会被opencv引入,要单独载入dylib文件
什么是FFmpeg?
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。
说白了,是一个音频/视频编解码库,会随着opencv一起安装(假定你已经通过mac最友好的方式——homebrew安装好了opencv)。
接下来我们介绍怎么引入FFmpeg的dylib文件:
- project中Build Settings——>Search Paths——>Header Search Paths,加入:
/usr/local/opt/ffmpeg/include
// 不推荐/usr/local/Cellar/ffmpeg/xxx/lib,因为可能存在不同的版本,在opt里可以软连接到你在使用的版本
- project中Build Settings——>Library Search Paths,加入:
/usr/local/opt/ffmpeg/lib
// 不推荐/usr/local/Cellar/ffmpeg/xxx/inclue,因为可能存在不同的版本,在opt里可以软连接到你在使用的版本
3. 添加ffmpeg link的library:点击项目,Build Phases——>Link Binary With Libraries——>Add Others——>cmd+shift+G——>选择/usr/local/opt/ffmpeg/lib下的Developers下的所有dylib库
大功告成!
不过还有一个小细节,Xcode的编译生成的可执行文件默认在一个临时文件夹,并没有在项目的工程目录下,所以要在进行一个简单的配置,可以参考我另一篇博文