以下操作都需要 super user 权限
1安装 cuda
1.1安装依赖, 启用自带 nouveau 驱动
apt-get install build-essential linux-headers-`uname -r`xserver-xorg-dev dkmsecho"blacklist nouveau">> /etc/modprobe.d/blacklist-nouveau.confecho"options nouveau modeset=0">> /etc/modprobe.d/blacklist-nouveau.conf
如果没有安装 nouveau 驱动, 重启后桌面分辨率会很低,不影响操作,
也可以按 alt + ctrl + F4 切换到tty操作。
1.2更新启动映像并重启
update-initramfs -u
reboot
1.3安装 nvidia cuda 工具
如果已经安装了旧的 nvidia 驱动, 要先卸载
apt-get remove --purge nvidia*
下载官方驱动:https://developer.nvidia.com/cuda-downloads
chmod +x cuda_*_linux.run
./cuda_*_linux.run
安装驱动需要同意用户协议, 输入 accept 按 enter 即可。
安装程序应该会在/etc/ld.conf.d下生成cuda-*.conf文件,执行
ldconfig
即可
1.4再更新一次启动映像
update-initramfs -u
reboot
使用nvidia-smi查看驱动如下:
Fri Jul 2 06:15:41 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.42.01 Driver Version: 470.42.01 CUDA Version: 11.4 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... Off | 00000000:01:00.0 On | N/A |
| 20% 35C P8 N/A / 75W | 433MiB / 4038MiB | 1% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 2075 G /usr/lib/xorg/Xorg 35MiB |
| 0 N/A N/A 2352 G /usr/lib/xorg/Xorg 123MiB |
| 0 N/A N/A 2456 G /usr/bin/gnome-shell 116MiB |
| 0 N/A N/A 2790 G /usr/lib/firefox/firefox 147MiB |
+-----------------------------------------------------------------------------+
则驱动安装成功
2安装 FFmpeg
首先下载 nv-codec-headershttps://github.com/FFmpeg/nv-codec-headers, 并安装
cd nv-codec-headers
make
make install
然后下载 ffmpeg,直接config应该就可以包含nvidia硬编码,如下:
./configure
#.....
#Enabled encoders:
#a64multi hevc_nvenc pgmyuv
#a64multi5 hevc_v4l2m2m png
#.....
make
make install
3安装 obs-studio
在 ffmpeg 已经包含了henv_nvenc的情况下,直接编编译安装 obs-studio 即可.
3.1安装依赖:
apt-get install \
build-essential \
cmake \
git \
libmbedtls-dev \
libasound2-dev \
libavcodec-dev \
libavdevice-dev \
libavfilter-dev \
libavformat-dev \
libavutil-dev \
libcurl4-openssl-dev \
libfdk-aac-dev \
libfontconfig-dev \
libfreetype6-dev \
libglvnd-dev \
libjack-jackd2-dev \
libjansson-dev \
libluajit-5.1-dev \
libpulse-dev \
libqt5x11extras5-dev \
libspeexdsp-dev \
libswresample-dev \
libswscale-dev \
libudev-dev \
libv4l-dev \
libvlc-dev \
libwayland-dev \
libx11-dev \
libx264-dev \
libxcb-shm0-dev \
libxcb-xinerama0-dev \
libxcomposite-dev \
libxinerama-dev \
pkg-config \
python3-dev \
qtbase5-dev \
qtbase5-private-dev \
libqt5svg5-dev \
swig \
libxcb-randr0-dev \
libxcb-xfixes0-dev \
libx11-xcb-dev \
libxcb1-dev \
libxss-dev \
qtwayland5 \
libgles2-mesa \
libgles2-mesa-dev
3.2编译 obs
git clone --recursive https://github.com/obsproject/obs-studio.git
cd obs-studio
mkdir build && cd build
cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr -DENABLE_PIPEWIRE=OFF -DBUILD_BROWSER=OFF ..
make -j$(nproc)
make install
3.3检查