黑豹X2(Panther-x2)刷机并驱动NPU/VPU、Jellyfin转码

文章目录
  1. 1. 零、前言
  2. 2. 一、刷机
    1. 2.1. 1、下载所需文件
    2. 2.2. 2、开始刷机
  3. 3. 二、连接SSH并初始化
    1. 3.1. 1、连接SSH
    2. 3.2. 2、初始化
      1. 3.2.1. 换源
      2. 3.2.2. 安装蓝牙模块驱动
      3. 3.2.3. 安装一些包
      4. 3.2.4. 检查驱动
  4. 4. 三、安装Docker和Jellyfin
    1. 4.1. 1、安装Docker
      1. 4.1.1. 安装Docker Compose
    2. 4.2. 2、安装Jellyfin
    3. 4.3. 3、配置转码
  5. 5. 四、NPU的驱动(可选)

零、前言

黑豹X2是一款非常不错的ARM设备,配置为RK3566 + 4G RAM + 32G EMMC,带千兆网口和TF卡插槽,有无线和蓝牙。以下介绍如何安装Armbian系统以及Docker和Jellyfin的配置。需要注意的是,很多Armbian系统由于内核问题,不支持NPU和VPU。请注意选择系统版本。

一、刷机

1、下载所需文件

以上资源均已上传至网盘留档,网盘链接,提取码1234

2、开始刷机

  • 启动RKDevTool

  • 插好双头USB-A线,连接电脑

  • 按住复位键的同时插电源

  • 量产工具提示发现一个LOADER设备

  • 点击高级功能——进入Maskrom——回到下载镜像——等待下方显示发现一个MASKROM设备

  • 点击下载镜像——找到路径右侧的三个点,此为文件选择列

  • 点击Boot分区列——选择MiniLoaderAll.bin

  • 点击System分区列——选择Armbian_24.8.0_rockchip_panther-x2_bullseye_6.1.57_server_2024.07.09.img

  • 点击执行,等待刷写完毕,机器会自动重启。

二、连接SSH并初始化

1、连接SSH

插上网线,登录路由器后台,找到黑豹X2的IP地址,系统默认为DHCP获取IP。如果不方便登录路由器后台,可以使用nmap来尝试扫描。例:局域网网段为192.168.1.X,则使用命令:

1
2
3
4
5
6
7
8
9
10
PS C:\Users\MYD-Work> nmap -p 22 --open 192.168.1.0/24
Starting Nmap 7.95 ( https://nmap.org ) at 2024-09-09 15:04 中国标准时间
Nmap scan report for 192.168.1.64
Host is up (0.00013s latency).

PORT STATE SERVICE
22/tcp open ssh
MAC Address: XX:27:XX:XX:A7:XX (Unknown)

Nmap done: 256 IP addresses (32 hosts up) scanned in 8.63 seconds

可知IP为192.168.1.64
在终端中以root登录SSH,然后按引导进行初始化配置:

1
ssh [email protected]

2、初始化

换源

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
cp /etc/apt/sources.list /etc/apt/sources.list.bak
rm /etc/apt/sources.list
nano /etc/apt/sources.list

复制如下源:
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free

不会用nano的可以按如下方法保存退出:
Ctrl-O
回车
Ctrl-X

sed -i.bak 's#http://apt.armbian.com#https://mirrors.tuna.tsinghua.edu.cn/armbian#g' /etc/apt/sources.list.d/armbian.list
apt update

安装蓝牙模块驱动

1
armbian-config

选择Network-BT install 即可。

安装一些包

apt install vim cmake lm-sensors python3 pip -y

检查驱动

1
2
3
4
5
6
7
8
9
10
11
12
13
14
root@armbian:~# ls /dev/dri
by-path card0 card1 renderD128 renderD129
root@armbian:~# ls /dev/mpp_service
/dev/mpp_service
root@armbian:~# cat /sys/class/devfreq/fde40000.npu/available_frequencies
200000000 297000000 400000000 600000000 700000000 800000000 900000000
root@armbian:~# sensors
soc_thermal-virtual-0
Adapter: Virtual device
temp1: +37.2°C (crit = +115.0°C)

gpu_thermal-virtual-0
Adapter: Virtual device
temp1: +38.9°C (crit = +115.0°C)

三、安装Docker和Jellyfin

1、安装Docker

1
apt install docker.io -y

安装Docker Compose

  • 下载二进制文件:https://github.com/docker/compose/releases/latest/download/docker-compose-Linux-aarch64
  • 改名为docker-compose并复制到/usr/bin
  • 赋可执行权限:chmod +x /usr/bin/docker-compose

2、安装Jellyfin

1
2
3
mkdir -p /root/jellyfin/config
mkdir -p /root/jellyfin/media
vi docker-compose.yml

以下是docker-compose.yml的内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
version: '2.4'

services:
jellyfinny:
image: nyanmisaka/jellyfin:latest-rockchip
container_name: jellyfinny
privileged: true
ports:
- "8096:8096"
volumes:
- /root/jellyfin/config:/config
- /tmp:/cache
- /root/jellyfin/media:/media
devices:
- /dev/dri:/dev/dri
- /dev/dma_heap:/dev/dma_heap
- /dev/mali0:/dev/mali0
- /dev/rga:/dev/rga
- /dev/mpp_service:/dev/mpp_service
- /dev/iep:/dev/iep
- /dev/mpp-service:/dev/mpp-service
- /dev/vpu_service:/dev/vpu_service
- /dev/vpu-service:/dev/vpu-service
- /dev/hevc_service:/dev/hevc_service
- /dev/hevc-service:/dev/hevc-service
- /dev/rkvdec:/dev/rkvdec
- /dev/rkvenc:/dev/rkvenc
- /dev/vepu:/dev/vepu
- /dev/h265e:/dev/h265e
restart: unless-stopped

执行docker-compose up -d以启动容器,访问http://ip:8096以初始化Jellyfin。

3、配置转码

进入Jellyfin后,选择设置——控制台——播放,在转码中选择硬件加速:Rockchip MPP(RKMPP),将启用硬件解码中的所有选项勾选,滑动到最下方保存即可。

四、NPU的驱动(可选)

  • 下载RK_NPU_SDK ,提取码1234
  • 解压RK_NPU_SDK_1.5.0/rknpu2_1.5.0.7z,提取出rknpu2/runtime/RK356X/Linux/librknn_api/aarch64,将里面的两个.so文件复制到armbian/usr/lib下即可。