Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文

一、用Visual Studio 2013新建一个qt项目

       1、文件--新建---项目

       2、已安装---模板---Qt5 Project---qt Application

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第1张图片

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第2张图片


下一步


Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第3张图片


因为项目开发过程中涉及到音视频播放所以这里除了系统默认的开发选项外还有勾选多媒体选项  Multimedia


Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第4张图片


程序主窗体这里选择 QWidget


Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第5张图片


点击finish完成项目的创建


Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第6张图片


至此项目创建完成,下面要配置本项目


二、项目的相关配置

      右键项目名称点属性

      Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第7张图片


       1、做好项目的适配向后兼容到windows XP

       

       在项目属性面板依次展开 配置属性--->常规--->平台工具集,  如图选择兼容到Xp

        Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第8张图片


2、引入相关依赖动态库文件,找到qt安装目录,找到类似路径:Qt5.6.2\5.6\msvc2013\bin,在该目录下有这几个动态库文件:Qt5Cored.dll、Qt5Guid.dll、Qt5Multimediad.dll、  Qt5Widgetsd.dl、icudt54.dll 、icuin54.dll、 icuuc54.dll 七个动态库文件,把这七个动态库文件拷贝到我们项目目录下的Win32\Debug目录下,即放在和生成的.exe文件所在的目录如图示,这时候调试运行一下项目会出现一个空白的窗体白板,如图所示


Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第9张图片Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第10张图片Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第11张图片Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第12张图片



3、向项目中引入ffmpeg的include文件,在项目属性面板依次选择:配置属性---->C/C++---->附加包含目录如图所示,选择我们之前已经下载好的ffmpeg  dev开发包下的include目录

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第13张图片

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第14张图片


4、引入相关ffmpeg的lib,在属性面板依次选择:配置属性---->链接器---->附加库目录,然后选择下载好的ffmpeg  dev开发包下的lib目录


Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第15张图片


Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第16张图片


5、在运行项目时把控件台调出来,以方便我们调试;在项目属性面板依次选择:配置属性---->链接器---->系统---->子系统,然后选择控制台相关的选项;

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第17张图片


6、如果这个时候运行项目会报安全检查的错误,在这里先把安全检查设置为否就可以正常运行项目了,在项目属性面板依次选择:配置属性---->链接器---->高级---->映像具有安全异常处理程序,选择否选项

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第18张图片


7、引入运行时支持库,

项目配置到这里,这个时候运行项目会弹出如下报错信息窗口

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第19张图片



这说明我们还缺少相关支持库文件,找到之前下载的ffempeg shared开发包目录下的bin目录(ffmpeg-20170711-0780ad9-win32-shared\bin),把avcodec-57.dll、avformat-57.dll、avutil-55.dll、swresample-2.dll 把这四个文件复制到我们项目目录下的Win32\Debug目录下,即放在和生成的.exe文件所在的目录如图示,这时候调试运行一下项目会出现一个空白的窗体白板,如图所示Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第20张图片

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第21张图片

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第22张图片


三、写代码;

       1、把事先准备好的视频文件放到项目main.cpp文件所在的目录中,比如我的是test.mp4;

        Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第23张图片

在main.cpp写下如下代码:

#include "myplayer.h"
#include 
#pragma comment(lib,"avformat.lib")
extern "C"{
#include 
}
int main(int argc, char *argv[])
{
	av_register_all();
	char *path = "test.mp4";
	AVFormatContext *ac = NULL;
	int re = avformat_open_input(&ac, path, 0, 0);
	if (re == 0){
		int totalSec = ac->duration / AV_TIME_BASE;
		printf("指定的视频文件有 %d分%d秒\n", totalSec / 60, totalSec % 60);
		avformat_close_input(&ac);
	}
	QApplication a(argc, argv);
	MyPlayer w;
	w.show();
	return a.exec();
}



调试运行,会有如下结果

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第24张图片


test.mp4属性如下:

Visual Studio 2013 + Qt + FFMPEG开发环境配置,手把手详细图文_第25张图片


和项目运行结果相符,至此Visual Studio 2013 + Qt + FFMPEG项目整合完成


你可能感兴趣的:(qt,ffmpeg,Visual,Studio)