Mingw64编译64位FFMPEG 支持<nvidia><AMD><intel>显卡视频编解码硬件加速

没有具体细写。可以参考。

编译环境Mingw64

第一 、nvidia

下载:https://git.videolan.org/?p=ffmpeg/nv-codec-headers.git

make    

make install,

设置到ffmpeg 编译选项 export PKG_CONFIG_PATH="/usr/local/nv-codec-headers/lib/pkgconfig"


2、英特尔QuickSync视频

FFmpeg可以使用Intel QuickSync Video(QSV)来加速多个编解码器的解码和编码。要使用QSV,必须将FFmpeg与libmfx 调度程序链接,该调度程序将加载实际的解码库。

调度程序是开源的,可以从https://github.com/lu-zero/mfx_dispatch.git下载 。FFmpeg需要配置有该--enable-libmfx选项,并且pkg-config需要能够找到调度程序的.pc文件。

autoreconf -i

./configure --prefix=/mingw64

make -j$(nproc) install

export PKG_CONFIG_PATH="/usr/lib/pkgconfig"


第三:AMD

下载 https://github.com/GPUOpen-LibrariesAndSDKs/AMF.git获取AMF框架头文件(版本1.4.9+) 。

在mingw64 include下创建一个amf文件夹。将的内容复制AMF/amf/public/include/到该目录中。然后使用配置FFmpeg --enable-amf。

amf编码器的初始化按以下顺序进行:1)尝试通过dx11(仅Windows)进行初始化2)尝试通过dx9(仅Windows)进行初始化3)尝试通过vulkan进行初始化。


创建一个文件   build.sh 放在ffmpeg文件下,build.sh的内容:

#!/bin/bash

export PKG_CONFIG_PATH="/usr/local/nv-codec-headers/lib/pkgconfig:/d/msys64/mingw64/lib/pkgconfig"

./configure \

--prefix=/usr/local/ffmpeg \

--arch=x86_64 \

--enable-gpl \

--enable-nonfree \

--enable-version3 \

--enable-shared \

--enable-avdevice \

--enable-avcodec \

--enable-avformat \

--enable-swresample \

--enable-swscale \

--enable-avfilter \

--enable-avresample \

--enable-pixelutils \

--enable-libx265 \

--enable-libfdk-aac \

--enable-cuvid \     #nvidia   decode

--enable-nvenc \     #nvidia   encode

--enable-nvdec \     #无效

--enable-libmfx \        #intel

--enable-amf \       #AMD

--extra-cflags=-DAMF_CORE_STATIC \  #加一下这个宏 不然amf  加载程序抱找不到运行时dll

根据自己的需求调整取用选项。  

转载贴原文地址。文明阅读。   

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

相关阅读更多精彩内容

友情链接更多精彩内容