在上篇文章Visual Studio 开发(一):安装配置Visual Studio Code 中,我们讲了一下如何配置VS CODE,来编写和调试C的代码。如果你已经使用VS Code回顾和复习好C相关的知识了,并且有想深入学习FFmpeg的方法,那么可以看看这篇文章,相信对你会很有帮助。
一、下载安装Visual Studio
下载地址为:https://visualstudio.microsoft.com/zh-hans/downloads/
然后进行安装,安装时选择C/C++开发的选项进行安装,安装时选择如下:
选好就,点击下一步,等待安装就OK了。
二、创建项目并配置FFmpeg开发环境
在文件中新建一个项目,自行起一个项目名称,例如FFmpegTest,下面是我创建项目的目录结构:
里面的代码是一个Hello World的代码,并说明了如何运行起来这个项目(针对新手)。
尝试运行一下,如果运行没问题,那么我们的Visual Studio 2017 就说明安装的没问题了,下面开始配置FFmpeg的开发环境了。
1. 下载FFmpeg的源码、库、链接文件
首先需要去FFmpeg官网下载相应的内容:
下载地址为:https://ffmpeg.zeranoe.com/builds/,这里有三种类型的:static、shared、dev。
先解释一下这三种类型的用处:
- static:打包好的文件,可以认为是FFmpeg的release版本,提供的是ffmpeg、ffplay、ffprobe三个命令行工具。(只学习命令行的同学可以将此配置到环境变量上)
- shared:这个包包含static的文件,但是相比较多了链接文件DLL,这些DLL文件在后面开发环境配置配置中会用到。
- dev:这个是纯开发版本的文件,不包含ffmpeg、ffplay、ffprobe这些命令行工具,但是包含我们开发时使用的头文件(位于include目录),及liib文件(位于lib目录),以及example文件(用于学习和使用)。
从上面的类型说明中,可以知道,我们需要下载的是shared和dev两个文件,为了减少使用时的问题,建议下载32位的文件。
附:本人以及将下载好的上传到:https://github.com/renhui/Thinking-in-AV/tree/master/FFmpeg/environment 方便浏览和查阅。
然后将这些文件拷贝到项目中,具体如下:
- 将shared的DLL文件拷贝到项目中。
- 将dev的include和lib文件夹一起拷贝到目录中。
2. 配置FFmpeg开发环境
添加附加包含目录指向拷贝的include文件,如下:
添加附加库目录,如下:
添加附加依赖项,内容为
avcodec.lib; avformat.lib; avutil.lib; avdevice.lib; avfilter.lib;postproc.lib;swresample.lib; swscale.lib
添加后界面如下:
至此,FFmpeg的开发环境配置完毕了。
3.验证FFmpeg开发环境
如何验证FFmpeg能正常使用了,这个简单,运行一段FFmpeg的代码即可。
例如:
#include "pch.h" #include <iostream> extern "C"{ #include "libavcodec/avcodec.h" #include "libavformat/avformat.h" } int main(int argc, char* argv[]) { printf("%s ", avcodec_configuration()); return 0; }
如果编译运行不报错,且输出如下的界面,则说明FFmpeg设置成功了:
FFmpeg学习的环境问题没有了,后续就可以可以自行学习和发挥了。海阔凭鱼跃,天高任鸟飞!
4. 补充
如果在运行代码的时候,IDE提示,***声明已被否决,这时可以通过以下几种方式来解决:
1. 修改项目的配置
Project Properties > Configuration Properties > C/C++ > General > SDL checks关掉
2. 代码中添加编译参数信息
#pragma warning(disable: 4996)