您的位置:首页 > 编程语言 > Qt开发

在windows环境下将基于FFMpeg和SDL的播放器集成到Qt creator中

2015-11-17 20:00 555 查看
首先,你得有一个基于FFmpeg和SDL的播放器,这个不用自己写,网上有开源代码/article/1379090.html

然后,你得有在windows下的FFmpeg以及SDL的头文件和库文件,上面给的这个链接中,博主已经把所有的头文件和库文件都给出来了。

一点题外话:其实FFmpeg的头文件和库文件不需要自己编译,FFmpeg的官网上https://ffmpeg.org/download.html就有已经编译好的头文件和库文件都给出来了,比如你想要windows下编译出来的头文件和库文件,就点windows的那个图标,如下图咯,然后点那个超链接,对于你需要下载什么样的文件,网页上都有指示,这就不用我多说了。但是如果对编译过程有兴趣的也可以自己研究一下。官网上有教程http://ffmpeg.org/platform.html#toc-Native-Windows-compilation-using-MinGW-or-MinGW_002dw64这里也有一个简洁明了的教程/article/6224642.html,可以将二者结合起来看。



再然后,在QT的工程文件.pro里面添加头文件和库文件的路径。关于添加库文件的方法,网上有很多种格式,貌似都可以,反正条条大路通罗马。

INCLUDEPATH += E:/ffmpeg/include/libavcodec \

E:/ffmpeg/include/libavdevice \

E:/ffmpeg/include/libavfilter \

E:/ffmpeg/include/libavformat \

E:/ffmpeg/include/libavutil \

E:/ffmpeg/include/libpostproc \

E:/ffmpeg/include/libswresample \

E:/ffmpeg/include/libswscale \

E:/ffmpeg/include/SDL2



LIBS += E:/ffmpeg/lib/avcodec.lib

LIBS += E:/ffmpeg/lib/avdevice.lib

LIBS += E:/ffmpeg/lib/avfilter.lib

LIBS += E:/ffmpeg/lib/avformat.lib

LIBS += E:/ffmpeg/lib/avutil.lib

LIBS += E:/ffmpeg/lib/postproc.lib

LIBS += E:/ffmpeg/lib/swresample.lib

LIBS += E:/ffmpeg/lib/swscale.lib

LIBS += E:/ffmpeg/lib/SDL2.lib

LIBS += E:/ffmpeg/lib/SDL2main.lib


重要:如果你只做到这一步就去运行你的工程,程序会异常退出,错误代码-1073741515,调试的时候弹窗提示during startup program exited with code 0xc0000135。这是因为程序中应该是调用了非Qt自带的动态链接库(FFmpeg和SDL库),而qt creator没有找到这个些库,这时候就需要将程序中调用的动态连接库复制到工程的编译目录。(详细分析错误代码-1073741515的原博链接)简单粗暴地说,就是将那些.dll文件复制到.exe文件所在的目录中。

最后,没有最后~做完上面这一步程序就可以运行了。至于调用这个后台程序的QT界面怎么写以及如何将第一个链接里面提供的那份开源代码加到QT中,就不是本文的重点了。其实本文也并没有哪里看起来像重点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: