開發板默認下載的ffmpeg是通用版,無法調用rk3588的硬件編碼器,視頻編碼效率低。
nyanmisaka開發了用于jellyfin的ffmpeg,支持rk3588硬件編碼器,編譯方法:
https://github.com/nyanmisaka/ffmpeg-rockchip/wiki/Compilation
經過半天的安裝,ffmpeg-rockchip安裝失敗,遂從docker中將編譯好的版本提取了出來,可用!
其他人可以先安裝試試看,如果能安裝成功就不用進行后續的步驟。
?步驟0 :從jellyfin docker 中復制到外邊
# 進入dockersudo docker exec -it jellyfin /bin/bash# 查找ffmpegfind / -name ffmpeg 2>/dev/null# 復制ffmpeg 到外部映射mediacp /usr/lib/jellyfin-ffmpeg /media/ -r
? 步驟一:復制 ffmpeg 到 /usr/bin/jellyfin-ffmpeg/
sudo mkdir -p /usr/bin/jellyfin-ffmpeg
sudo cp -r /mnt/media/jellyfin-ffmpeg/* /usr/bin/jellyfin-ffmpeg/
? 步驟二:配置環境變量
編輯你的 ~/.bashrc(或 /etc/profile 作用于所有用戶):
nano ~/.bashrc
在最后添加:
# 優先使用 jellyfin ffmpeg
export PATH=/usr/bin/jellyfin-ffmpeg:$PATH
export LD_LIBRARY_PATH=/usr/bin/jellyfin-ffmpeg/lib:$LD_LIBRARY_PATH
然后立即生效:
source ~/.bashrc
? 步驟三:驗證是否生效
which ffmpeg
# 應該輸出 /usr/bin/jellyfin-ffmpeg/ffmpeg
ffmpeg -version
ffmpeg -encoders | grep rkmpp
如果輸出中顯示了 hevc_rkmpp、h264_rkmpp 等編碼器,說明替換成功。