NVIDIA英伟达显卡不但能玩游戏,还可以使用它进行高速视频转码,转码速度又快、质量又好。著名开源视频转码软件-视频转换器——ffmpeg提供了支持,但是需要安装显卡驱动,并自己编译。
操作系统 Ubuntu 16.04
- 系统设置-软件和更新-附加驱动-安装最新NVIDIA显卡驱动
- 安装cuda(不清楚是否必须)
ffmpeg的编译
下载源码,参考https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu#ffmpeg
编译命令1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
--prefix="$HOME/ffmpeg_build" \
--pkg-config-flags="--static" \
--extra-cflags="-I$HOME/ffmpeg_build/include" \
--extra-ldflags="-L$HOME/ffmpeg_build/lib" \
--bindir="$HOME/bin" \
--enable-gpl \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libtheora \
--enable-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-libx265 \
--enable-nonfree \
--enable-nvenc #开启显卡转码
PATH="$HOME/bin:$PATH" make
make install
make distclean
hash -r
这时,在$HOME/bin就应该看到ffmpeg的三个程序了
开始转码
1 | ffmpeg -i xart.13.12.31.misty.and.then.there.was.you.mp4 -c:v h264_nvenc xart.mkv |
1080P的视频从800多兆压缩到300多,还是不错的,1080P转码速度是3.3倍速,即1小时的视频转码时间是不到20分钟,720P的可以更快。