Ubuntu源码编译GPU版FFmpeg教程

释放双眼,带上耳机,听听看~!
本文介绍了在Ubuntu系统下,通过编译源码实现GPU加速的FFmpeg,包括安装nv-codec-hearers、ffmpeg编码库和ffmpeg本身的详细步骤。

本文正在参加 人工智能创作者扶持计划 ”

欢迎关注我的公众号 [极智视界],获取我的更多经验分享

大家好,我是极智视界,本文介绍一下 ubuntu源码编译gpu版ffmpeg。

邀您加入我的知识星球「极智视界」,星球内有超多好玩的项目实战源码下载,链接:t.zsxq.com/0aiNxERDq

FFmpeg 是一个开源的音视频处理工具,它可以对音视频进行录制、转码、剪辑、合并等操作。FFmpeg 支持多种音视频格式,包括 MP4、AVI、FLV、MOV、WMV、MP3、AAC 等。FFmpeg 的命令行工具非常强大,可以通过命令行对音视频进行各种操作。例如,可以使用 FFmpeg 将一个视频文件转换成另一个格式的视频文件,也可以使用 FFmpeg 将一个视频文件中的音频提取出来,还可以使用 FFmpeg 将多个视频文件合并成一个视频文件。除了命令行工具之外,FFmpeg 还提供了一些库,可以在 C 语言等编程语言中使用这些库来对音视频进行处理。

FFmpeg 本身不支持 GPU 加速,但是可以通过一些第三方库来实现 GPU 加速。例如,可以使用 CUDA SDK 来实现 FFmpeg 的 GPU 加速。CUDA SDK 是 NVIDIA 公司开发的一个 GPU 加速库,可以在 NVIDIA 的 GPU 上实现各种计算密集型任务的加速。CUDA SDK 提供了一些 API,可以在 C 语言等编程语言中使用这些 API 来实现 GPU 加速。除了 CUDA SDK 之外,还有一些其他的第三方库,例如 OpenCL、Vulkan 等,也可以用来实现 FFmpeg 的 GPU 加速。

所以这里的标题本身多少有一点歧义,反正总之就是介绍编译能够使用gpu加速的 FFmpeg 的方法

下面开始。

安装nv-codec-hearers

地址:docs.nvidia.com/video-techn…

# clone源码
git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git

cd nv-codec-headers 

# checkout到指定版本
# 可使用 git tag 查看可选的版本
git checkout n11.0.10.2 -b nv-codec-headers

# 编译&安装
make -j32
make install -j8

# 验证是否安装成功
pkg-config --modversion ffnvcodec

安装ffmpeg编码库

# clone源码
git clone https://code.videolan.org/videolan/x264.git

# 配置
cd x264
./configure --disable-asm --enable-shared --enable-pic

# 编译 & 安装
make -j32
make install -j8

安装ffmpeg

# 安装依赖
apt update

apt install build-essential yasm cmake libtool libc6 libc6-dev unzip wget libnuma1 libnuma-dev

apt install -y autoconf automake build-essential git libass-dev libfreetype6-dev libsdl2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev

apt install libavformat-dev libavcodec-dev libswresample-dev libswscale-dev libavutil-dev libsdl1.2-dev

# clone ffmpeg源码
git clone https://git.ffmpeg.org/ffmpeg.git

cd ffmpeg

./configure --prefix=/usr/local/ffmpeg --disable-static --enable-shared --disable-avdevice --disable-sdl2 --disable-ffplay --disable-zlib --disable-lzma --enable-cuda --disable-doc --enable-gpl --enable-libx264 --enable-cuvid --enable-nonfree --enable-cuda-nvcc --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64

# 编译 & 安装
make -j32
make install -j8

# 软链
ln -s /usr/local/ffmpeg/bin/* /usr/bin/

# 添加系统环境变量
vim ~/.bashrc
# 末尾加入
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/ffmpeg/lib

# 使配置生效
source ~/.bashrc

检查是否安装成功

# 检查硬件加速
ffmpeg -hwaccels

Ubuntu源码编译GPU版FFmpeg教程

# 检查编解码器
ffmpeg -codecs | grep cuvid

Ubuntu源码编译GPU版FFmpeg教程

这样就大功告成了。

好了,以上分享了 ubuntu源码编译gpu版 FFmpeg,希望我的分享能对你的学习有一点帮助。

 【公众号传送】

《极智开发 | ubuntu源码编译gpu版ffmpeg》

畅享人工智能的科技魅力。邀请您加入我的知识星球,星球内有丰富的AI技术应用相关技术文章、资源、项目源码,涵盖人脸、检测、分割、多模态、自动驾驶、工业等实用、好玩的项目应用,一定会对你的学习有所帮助。t.zsxq.com/0aiNxERDq

Ubuntu源码编译GPU版FFmpeg教程

本网站的内容主要来自互联网上的各种资源,仅供参考和信息分享之用,不代表本网站拥有相关版权或知识产权。如您认为内容侵犯您的权益,请联系我们,我们将尽快采取行动,包括删除或更正。
AI教程

如何处理缺失值的方法 - sklearn实践

2023-12-14 10:38:14

AI教程

Meta发布全新分割任何项目及其效果

2023-12-14 10:50:14

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索