safesight-edge/docs/dependencies.md
2026-02-26 22:56:58 +08:00

239 lines
4.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# RK3588S 依赖安装指南
## 系统要求
- **硬件**: Orange Pi 5 / 5 Plus 或其他 RK3588/RK3588S 设备
- **系统**: Ubuntu 22.04 LTS 或 Debian 11 (ARM64)
- **内核**: 5.10.x (带 Rockchip 驱动)
## 快速安装
### 前提条件
新设备需要:
1. **克隆项目**(包含 `third_party/mpp``third_party/rknpu2`
2. **下载 FFmpeg-rockchip**(唯一额外依赖)
### 1. 克隆项目
```bash
git clone http://<服务器IP>/Doni/OrangePi3588Media.git ~/apps/OrangePi3588Media
cd ~/apps/OrangePi3588Media
```
### 2. 准备 FFmpeg在Windows/Mac下载
```powershell
# PowerShell 下载
Invoke-WebRequest -Uri "https://github.com/nyanmisaka/ffmpeg-rockchip/archive/refs/heads/master.zip" -OutFile "ffmpeg-rockchip-master.zip"
# 传到新设备
scp ffmpeg-rockchip-master.zip orangepi@新设备IP:/tmp/
```
### 3. 运行安装脚本
```bash
cd ~/apps/OrangePi3588Media
sudo ./scripts/install_deps.sh
```
## 手动安装步骤
如果脚本安装失败,可按以下步骤手动安装:
### 1. 基础工具
```bash
sudo apt-get update
sudo apt-get install -y \
build-essential cmake git wget curl pkg-config \
libdrm-dev libx11-dev libxext-dev libgles2-mesa-dev \
libwayland-dev libpulse-dev libasound2-dev libv4l-dev \
python3 python3-pip python3-dev \
htop vim net-tools ffmpeg v4l-utils
```
### 2. Rockchip MPP (硬件编解码)
```bash
cd /tmp
git clone https://github.com/rockchip-linux/mpp.git
cd mpp
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DHAVE_DRM=ON
make -j$(nproc)
sudo make install
sudo ldconfig
```
**验证**:
```bash
pkg-config --modversion rockchip_mpp
```
### 3. Rockchip RGA (2D图形加速)
```bash
cd /tmp
git clone https://github.com/rockchip-linux/rkrga.git
cd rkrga
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr
make -j$(nproc)
sudo make install
sudo ldconfig
```
### 4. RKNN Runtime (NPU推理)
```bash
# 方法1: 使用项目内置版本(推荐)
# 项目已包含 third_party/rknpu2
# 方法2: 手动下载安装
cd /tmp
wget https://github.com/rockchip-linux/rknpu2/releases/download/v1.6.0/rknpu2_1.6.0_arm64.deb
sudo dpkg -i rknpu2_1.6.0_arm64.deb
# Python包
pip3 install rknn-toolkit2-lite2
```
**验证**:
```bash
ls /dev/rknpu*
cat /proc/rknpu/version
```
### 5. FFmpeg (带Rockchip支持)
```bash
cd /tmp
git clone https://github.com/nyanmisaka/ffmpeg-rockchip.git
cd ffmpeg-rockchip
# 安装依赖
sudo apt-get install -y \
libgnutls28-dev libaom-dev libdav1d-dev \
libmp3lame-dev libopus-dev libtheora-dev \
libvorbis-dev libvpx-dev libx264-dev libx265-dev libnuma-dev
# 配置编译
./configure \
--prefix=/usr/local \
--enable-gpl --enable-version3 \
--enable-libdrm --enable-rkmpp --enable-rkrga \
--enable-libx264 --enable-libx265 \
--enable-shared --disable-static
make -j$(nproc)
sudo make install
sudo ldconfig
```
**验证**:
```bash
ffmpeg -version
ffmpeg -encoders | grep rkmpp
```
### 6. 系统配置
```bash
# NPU设备权限
sudo tee /etc/udev/rules.d/99-rockchip-npu.rules << 'EOF'
KERNEL=="rknpu*", MODE="0666", GROUP="video"
KERNEL=="mpp_service", MODE="0666", GROUP="video"
KERNEL=="rga*", MODE="0666", GROUP="video"
EOF
sudo udevadm control --reload-rules
sudo udevadm trigger
# 添加用户到video组
sudo usermod -a -G video $USER
```
## 依赖检查清单
安装完成后,运行以下检查:
```bash
# 1. NPU设备
ls -la /dev/rknpu* # 应该显示 /dev/rknpu, /dev/rknpu0 等
# 2. MPP库
pkg-config --modversion rockchip_mpp
# 3. RKNN库
ls /usr/lib/librknnrt.so || ls /usr/lib/aarch64-linux-gnu/librknnrt.so
# 4. FFmpeg
ffmpeg -version | head -1
# 5. 内核模块
lsmod | grep rknpu
lsmod | grep mpp
```
## 常见问题
### Q: NPU设备不存在
```bash
# 检查内核模块
lsmod | grep rknpu
# 如果没有,尝试手动加载
sudo modprobe rknpu
# 或者检查dts是否启用了NPU
dmesg | grep -i rknpu
```
### Q: MPP编译失败
```bash
# 确保安装了libdrm-dev
sudo apt-get install -y libdrm-dev
# 或者禁用DRM支持
cmake .. -DHAVE_DRM=OFF
```
### Q: FFmpeg找不到rkmpp
```bash
# 确保MPP已正确安装并更新pkg-config
pkg-config --cflags rockchip_mpp
# 如果失败,手动指定路径
./configure --extra-cflags="-I/usr/include" --extra-ldflags="-L/usr/lib"
```
### Q: RKNN模型加载失败
```bash
# 检查驱动版本
cat /proc/rknpu/version
# 确保模型版本与驱动匹配
# RKNN-Toolkit2 1.6+ 需要驱动 0.9.6+
```
## 版本兼容性
| 组件 | 推荐版本 | 说明 |
|-----|---------|------|
| MPP | git master | 硬件编解码 |
| RGA | git master | 2D加速 |
| RKNN Runtime | 1.6.0+ | NPU推理 |
| FFmpeg | 6.0+ (rockchip) | 带rkmpp/rkrga支持 |
| CMake | 3.16+ | 编译工具 |
| GCC | 9.0+ | 编译器 |
## 下一步
依赖安装完成后,继续:
1. **编译项目**: [编译指南](../Readme.md#编译)
2. **部署服务**: [部署指南](./deployment.md)