Linux 安装emby 并开启nvidia nvenc 硬件加速转码
安装环境:
- Linux系统自行准备安装本文章使用的是Ubuntu16.04
- nvidia显卡自行去官方查询显卡是否支持nvenc (已知GT1030是不支持的)本文章使用GTX1050Ti
- 小惊喜 此教程 plex也可以用 也可以硬件加速 把emby安装部分换成PLEX安装即可 本站有教程
本教程涉及硬件:
- CPU : Intel G4560
- 主板:ASUS B250
- 内存:DDR4 2400 8G
- 硬盘:东芝128G SSD
- 显卡:NVIDIA GeForce GTX 1050 Ti
- 电源:垃圾堆里扒拉出来的垃圾牌子400w
文章前言:
如果你是第一次看到本文章 请忽略 如果是在别的帖子内或者文章操作失败后找到本文章的 请执行以下命令 清空失败的配置数据
|
1
|
sudo apt–get remove —purge nvidia–*
|
下面开始:
查看显卡是否支持
|
1
|
lspci | grep –i nvidia
|
查到型号以后自行去官方查询显卡是否支持cuda nvenc
验证是否支持cuda:
已知Ubuntu16/17 Centos6/7是支持的
|
1
|
uname –m && cat /etc/*release
|

查看是否安装GCC: (Ubuntu默认是已安装5.4版本)
|
1
|
gcc —version
|

如果没有安装GCC 键入下面的指令安装
|
1
|
sudo apt–get install gcc
|
验证系统是否安装了kernel header和 package development :
|
1
|
sudo apt–get install linux–headers–$(uname –r)
|

禁用nouveau驱动 :
|
1
2
3
4
5
6
|
lsmod | grep nouveau (如果有输出 表明nouveau未禁用 无输出此步骤忽略)
sudo vi /etc/modprobe.d/blacklist.conf (在文件末尾处添加下面这两行)
blacklist nouveau
options nouveau modeset=0
sudo reboot
lsmod | grep nouveau (如果有输出,表示没禁用成功 无输出表示完成)
|
关闭图形界面:
|
1
|
sudo service lightdm stop(服务器版的Ubuntu系统可以不执行此操作)
|
安装驱动 :(这里我采用的是PPA的安装方式 当然你们也可以选择官方RUN文件执行驱动安装)
|
1
2
3
4
5
|
sudo add–apt–repository ppa:graphics–drivers/ppa
sudo apt–get update
ubuntu–drivers devices(老显卡适合使用来查找适合显卡的最佳驱动本文章是新款显卡所以默认安装了390.48版本)
sudo apt–get install nvidia–390
sudo reboot (重启)
|
重启之后查看驱动是否成功!
|
1
|
sudo nvidia–smi
|
出现下面的图片驱动安装成功,驱动安装成功后 NVIDIA的驱动程序会安装图形界面
安装gcc-multilib:
|
1
|
sudo apt install gcc–multilib
|
安装CUDA 9.1 :
NVIDIA cuda 下载地址:请点击我 请按照图片的方式进行选择

将下载好的cuda_9.1.85_387.26_linux.run 传入Linux服务器内 也可以wget 直接在服务器内下载,wget直接在服务器内下载的可以能会出现 文件名错乱 自行用MV指令修复即可 要是在别的电脑下载的可以通过winscp 上传
|
1
2
3
|
sudo service lightdm stop (安装显卡驱动的时候自动启动了图形界面所以需要停止图形运行)
cd (cd到你下载或者放置cuda_9.1.85_387.26_linux.run的目录)
sudo sh cuda_9.1.85_387.26_linux.run (执行安装)
|
执行安装后会出现一大堆英文按Q即可进入安装界面 安装过程请按照下面的图片选择

完成会看到cuda驱动、sample、tookit已经安装成功,但是缺少一些库

添加缺少的库:
|
1
2
3
|
sudo apt–get install freeglut3–dev build–essential libx11–dev libxmu–dev libxi–dev libgl1–mesa–glx libglu1–mesa libglu1–mesa–dev
sudo service lightdm start (重启图形界面)
sudo reboot (重启)
|
重启后输入下面的指令查看
|
1
|
ls /dev/nvidia*
|
查看输出结果如果为下面图片这样的输出 即为成功 ~!!
其他可以忽略主要是/dev/nvidia-uvm有这条就是成功了!!
设置环境变量:
|
1
|
sudo vim /etc/profile
|
在打开的文件末尾,添加以下两行
|
1
2
|
export PATH=/usr/local/cuda–9.1/bin:$PATH (注意路径)
export LD_LIBRARY_PATH=/usr/local/cuda–9.1/lib64:$LD_LIBRARY_PATH (注意路径)
|
保存文件,并重启。因为source /etc/profile是临时生效,重启电脑才是永久生效
|
1
|
sudo reboot
|
查看配置:
驱动:
|
1
|
cat /proc/driver/nvidia/version
|
验证CUDA Toolkit
|
1
|
nvcc –V (注意V需要大写)
|

最后我们需要尝试编译cuda提供的例子看cuda能否正常运行:
|
1
2
|
cd /home/user_name/NVIDIA_CUDA–9.1_Samples (user_name这里替换成你的用户名)
make
|
之后系统会自动开始编译,整个过程大约30分钟左右 如果出现错误系统会直接停止
出现Finished building CUDA samples就是成功了
运行编译生成的二进制文件 编译后的二进制文件默认存放在NVIDIA_CUDA-9.1_Samples/bin中接着在终端中输入 :
|
1
2
|
cd bin/x86_64/linux/release
./deviceQuery
|
结果如下图所示:看到类似如下图片中的显示,则代表CUDA安装且配置成功,其中 Result = PASS代表成功,若失败 Result = FAIL
最后再检查一下系统和CUDA-Capable device的连接情况
终端输入:
|
1
|
./bandwidthTest
|
到此结束 基础环境就都配置完了 这时候有人会问OpenGL 没有安装啊 其实OpenGL在安装驱动的时候就已经处理了
安装EMBY:
下载地址:请点击我 下载Ubuntu版本即可 如果转码不生效可以尝试安装beta版本
|
1
2
|
cd 到下载的目录
dpkg –i emby–server–deb_3.3.1.0_amd64.deb
|
好的到此安装结束通过http://localhost:8096 访问进行配置 最后贴上 转码配置
配置完成后找一个HEVC的电影播放看看 然后去后看查看日志 看看是否转码
先查看 emby服务器日志:

如果有图片上面的部分代表 已启用nvenc
再看看转码日志:


在视频播放的时候执行:
|
1
|
nvidia–smi
|

每多开一个视频就会多一个线程 注意自己的显存 别BOOM了 哈哈 简单测试1080P hevc 10bit 消耗显存大约300M 4K hevc 10bit 大约700m 显存
最后播放截图一张

教程到此结束!!!! 忘了说本教程禁止转载 谢谢

https://emby.media/linux-server.html
Operating system: CentOS X64
yum install https://github.com/MediaBrowser/Emby.Releases/releases/download/3.5.3.0/emby-server-rpm_3.5.3.0_x86_64.rpm
Open a web browser to http://localhost:8096
rpm -ivh example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息及安装进度;
systemctl status emby-server