若该文为原创文章,未经允许不得转载
原博主博客地址:https://blog.csdn.net/qq21497936
原博主博客导航:https://blog.csdn.net/qq21497936/article/details/102478062
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/103397771
各位读者,知识无穷而人力有穷,要么改需求,要么找专业人士,要么自己研究
红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中...(点击传送门)
《Qt开发笔记之编码h264码流并封装mp4(一):x264介绍、windows平台x264库编译》
《Qt开发笔记之编码h264码流并封装mp4(二):windows平台x264添加mp4支持,gpac库的介绍与编译》
《Qt开发笔记之编码h264码流并封装mp4(三):Qt使用x264库对.yuv文件编码为.h264文件》
《Qt开发笔记之编码h264码流并封装mp4(四):mp4v2库的介绍和windows平台编译》
《Qt开发笔记之编码h264码流并封装mp4(五):ubuntu平台编译x264》
《Qt开发笔记之编码h264码流并封装mp4(六):ubuntu平台编译mp4v2并封装mp4》
本篇介绍x264,使用mingw32编译该库,并使用x264将yuv文件编码为.h264文件。
Windows下使用视频编码一般使用opencv、ffmpeg、vlc,opencv其实也是调用ffmpeg,ffmpeg底层又调用了其他编码的库,与此类似的vlc平台也是一样。
…and many more
下载地址:https://www.videolan.org/developers/x264.html
笔者使用环境为win10+Qt5.9.3 mingw32,而x264库不支持CMake,所以只能搭建mingw的msys环境(windows下的仿linux环境)。
读者看心情选吧,为了环境可控,建议msys1.0。
下载msys:https://download.csdn.net/download/qq21497936/12009320
或者下载msys2:http://www.msys2.org
(msys2比msys更智能,并带有基础的编译环境,但是编译涉及到其他基础编译库和工具等等,所以使用之前需要检查版本,版本不合适则安装和修改环境变量切换到目标版本)
安装好后,将Qt5.9,3的mingw拷贝到msys根目录文件夹
并检查环境,如下图:
./configure –enbale-shared
./configure --enable-shared --disable-asm
(补充解释下--enable-asm:纯C实现,不使用汇编代码,那部分是针对各个CPU架构做专门优化的。一般不需要disable)。
重新配置下,主要是prefix参数配置install路径,好方便我们提取头文件和库文件:
./configure --enable-shared --disable-asm --prefix=/home/21497/compile/x264/x264-snapshot-20191130-2245/install
(注意:此处对mp4是不支持的,“mp4: no”,要支持mp4请看:
《Qt开发笔记之编码x264码流并封装mp4(二):windows平台x264添加mp4支持,gpac库的介绍与编译》
mingw32-make.exe
提取可执行文件、头文件和库文件,如下图:
其中x264Manager.pri文件内容,如下图:
建立模板工程测试,报错如下:
添加”stdint.h”头文件,如下图:
编译测试通过。
Windows下mingw32的x264工程模板v1.0,0
测试文件yuv下载地址:
http://www.cipr.rpi.edu/resource/sequences/index.html
http://trace.eas.asu.edu/yuv/index.html
连不上或者下载太慢,笔者下载一个后上传到CSDN
CSDN下载地址(三个文件,2个yuv,1个y4m):
https://download.csdn.net/download/qq21497936/12010079
Yuv格式编码到flv
Yuv格式编码到mp4
原博主博客地址:https://blog.csdn.net/qq21497936
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/103397771