修改部署文档
This commit is contained in:
parent
317a8b1097
commit
9b3915e73d
@ -1,5 +1,25 @@
|
|||||||
# RK3588 Media Server 部署指南
|
# RK3588 Media Server 部署指南
|
||||||
|
|
||||||
|
## 架构说明
|
||||||
|
|
||||||
|
```
|
||||||
|
┌─────────────────┐ ┌─────────────────┐
|
||||||
|
│ Media Server │ │ RK3588 Agent │
|
||||||
|
│ (systemd) │◄────│ (systemd) │
|
||||||
|
│ 高可用独立服务 │ │ 监控/控制 │
|
||||||
|
└─────────────────┘ └─────────────────┘
|
||||||
|
│ │
|
||||||
|
▼ ▼
|
||||||
|
RTSP 输出流 Web 管理界面
|
||||||
|
HLS 输出流 http://IP:9100
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Media Server**: 独立的 systemd 服务,高可用(崩溃自动重启)
|
||||||
|
- **Agent**: 独立的 systemd 服务,通过 `systemctl` 监控和控制 Media Server
|
||||||
|
- **两者可独立重启**: 重启 Agent 不会影响 Media Server
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## 快速开始
|
## 快速开始
|
||||||
|
|
||||||
### 1. 编译
|
### 1. 编译
|
||||||
@ -14,28 +34,23 @@ mkdir -p build && cd build
|
|||||||
cmake .. -DCMAKE_BUILD_TYPE=Release
|
cmake .. -DCMAKE_BUILD_TYPE=Release
|
||||||
make -j$(nproc)
|
make -j$(nproc)
|
||||||
|
|
||||||
# 编译 Agent(可选,用于 Web 管理)
|
# 编译 Agent
|
||||||
cd ../agent
|
cd ../agent
|
||||||
GOOS=linux GOARCH=arm64 go build -o rk3588-agent_linux_arm64 ./cmd
|
go build -o rk3588-agent_linux_arm64 ./cmd/rk3588-agent
|
||||||
```
|
```
|
||||||
|
|
||||||
### 2. 安装
|
### 2. 安装
|
||||||
|
|
||||||
使用统一脚本安装:
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd ~/apps/OrangePi3588Media
|
cd ~/apps/OrangePi3588Media
|
||||||
sudo ./scripts/manage.sh install
|
sudo ./scripts/manage.sh install
|
||||||
```
|
```
|
||||||
|
|
||||||
安装过程会提示选择**配置文件**:
|
安装过程会提示选择**配置文件**:
|
||||||
- **配置文件**:
|
- `test_cam1_face_det_rtsp_server.json` - 人脸检测(推荐)
|
||||||
- `test_cam1_face_det_rtsp_server.json` - 人脸检测(推荐)
|
- `sample_cam1_native_rtsp_face.json` - 完整功能
|
||||||
- `sample_cam1_native_rtsp_face.json` - 完整功能
|
- `test_cam1_face_det_recog_rtsp_server.json` - 人脸识别
|
||||||
- `test_cam1_face_det_recog_rtsp_server.json` - 人脸识别
|
- `sample_cam1.json` - 完整功能(需手动修复)
|
||||||
- `sample_cam1.json` - 完整功能(需手动修复)
|
|
||||||
|
|
||||||
Media Server 由 Agent 统一管理,可通过 Web 界面 `http://<设备IP>:9100` 查看状态和控制服务。
|
|
||||||
|
|
||||||
### 3. 查看状态
|
### 3. 查看状态
|
||||||
|
|
||||||
@ -47,7 +62,7 @@ sudo ./scripts/manage.sh status
|
|||||||
- 系统运行时间
|
- 系统运行时间
|
||||||
- NPU 负载
|
- NPU 负载
|
||||||
- Media Server 状态(PID、CPU/内存、端口)
|
- Media Server 状态(PID、CPU/内存、端口)
|
||||||
- Agent 状态(如果安装)
|
- Agent 状态
|
||||||
- 最近日志
|
- 最近日志
|
||||||
|
|
||||||
### 4. 卸载
|
### 4. 卸载
|
||||||
@ -56,22 +71,14 @@ sudo ./scripts/manage.sh status
|
|||||||
sudo ./scripts/manage.sh uninstall
|
sudo ./scripts/manage.sh uninstall
|
||||||
```
|
```
|
||||||
|
|
||||||
卸载会:
|
|
||||||
1. 停止所有服务
|
|
||||||
2. 删除 systemd 服务文件
|
|
||||||
3. 自动备份配置文件和模型到 `/root/rk3588-backup-时间戳/`
|
|
||||||
4. 提示是否删除安装目录
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 升级
|
## 升级
|
||||||
|
|
||||||
升级步骤与安装相同,脚本会自动处理:
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd ~/apps/OrangePi3588Media
|
cd ~/apps/OrangePi3588Media
|
||||||
|
|
||||||
# 1. 拉取最新代码(如果是 git 仓库)
|
# 1. 拉取最新代码
|
||||||
git pull
|
git pull
|
||||||
|
|
||||||
# 2. 重新编译
|
# 2. 重新编译
|
||||||
@ -79,7 +86,10 @@ mkdir -p build && cd build
|
|||||||
cmake .. -DCMAKE_BUILD_TYPE=Release
|
cmake .. -DCMAKE_BUILD_TYPE=Release
|
||||||
make -j$(nproc)
|
make -j$(nproc)
|
||||||
|
|
||||||
# 3. 重新安装(会自动备份旧配置)
|
cd ../agent
|
||||||
|
go build -o rk3588-agent_linux_arm64 ./cmd/rk3588-agent
|
||||||
|
|
||||||
|
# 3. 重新安装
|
||||||
cd ..
|
cd ..
|
||||||
sudo ./scripts/manage.sh install
|
sudo ./scripts/manage.sh install
|
||||||
```
|
```
|
||||||
@ -88,24 +98,47 @@ sudo ./scripts/manage.sh install
|
|||||||
|
|
||||||
## 管理命令
|
## 管理命令
|
||||||
|
|
||||||
Agent 统一管理 Media Server,使用以下命令:
|
### Media Server(独立服务)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 启动/停止/重启 Agent(同时会启动/停止 Media Server)
|
# 启动/停止/重启
|
||||||
|
sudo systemctl start media-server
|
||||||
|
sudo systemctl stop media-server
|
||||||
|
sudo systemctl restart media-server
|
||||||
|
|
||||||
|
# 查看状态
|
||||||
|
sudo systemctl status media-server
|
||||||
|
|
||||||
|
# 查看日志
|
||||||
|
sudo journalctl -u media-server -f
|
||||||
|
```
|
||||||
|
|
||||||
|
### Agent(独立服务)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 启动/停止/重启(不影响 Media Server)
|
||||||
sudo systemctl start rk3588-agent
|
sudo systemctl start rk3588-agent
|
||||||
sudo systemctl stop rk3588-agent
|
sudo systemctl stop rk3588-agent
|
||||||
sudo systemctl restart rk3588-agent
|
sudo systemctl restart rk3588-agent
|
||||||
|
|
||||||
# 查看 Agent 状态
|
# 查看状态
|
||||||
sudo systemctl status rk3588-agent
|
sudo systemctl status rk3588-agent
|
||||||
|
|
||||||
# 查看日志
|
# 查看日志
|
||||||
sudo journalctl -u rk3588-agent -f
|
sudo journalctl -u rk3588-agent -f
|
||||||
|
```
|
||||||
|
|
||||||
# Web 管理界面
|
### Web 管理界面
|
||||||
|
|
||||||
|
```
|
||||||
http://<设备IP>:9100
|
http://<设备IP>:9100
|
||||||
```
|
```
|
||||||
|
|
||||||
|
功能:
|
||||||
|
- 查看 Media Server 运行状态
|
||||||
|
- 启动/停止/重启 Media Server(通过 systemctl)
|
||||||
|
- 查看配置信息
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 配置修改
|
## 配置修改
|
||||||
@ -116,44 +149,30 @@ http://<设备IP>:9100
|
|||||||
sudo nano /opt/rk3588-media-server/etc/media-server.json
|
sudo nano /opt/rk3588-media-server/etc/media-server.json
|
||||||
```
|
```
|
||||||
|
|
||||||
常用修改:
|
修改后重启 Media Server:
|
||||||
- **修改 RTSP 输入源**:找到 `input_rtsp` 节点,修改 `url` 字段
|
|
||||||
- **修改输出端口**:找到 `publish` 节点,修改 `port` 字段
|
|
||||||
|
|
||||||
修改后重启服务:
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 独立模式
|
|
||||||
sudo systemctl restart media-server
|
sudo systemctl restart media-server
|
||||||
|
|
||||||
# Agent 模式
|
|
||||||
sudo systemctl restart rk3588-agent
|
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 目录结构
|
## 目录结构
|
||||||
|
|
||||||
安装后的目录结构:
|
|
||||||
|
|
||||||
```
|
```
|
||||||
/opt/rk3588-media-server/
|
/opt/rk3588-media-server/
|
||||||
├── bin/
|
├── bin/
|
||||||
│ ├── media-server # 主程序
|
│ ├── media-server # 主程序
|
||||||
│ └── plugins/ # 插件目录
|
│ └── plugins/ # 插件
|
||||||
│ ├── libinput_rtsp.so
|
|
||||||
│ ├── libai_yolo.so
|
|
||||||
│ └── ...
|
|
||||||
├── lib/ # 依赖库
|
|
||||||
├── etc/
|
├── etc/
|
||||||
│ └── media-server.json # 配置文件
|
│ └── media-server.json # 配置文件
|
||||||
├── models/ # AI 模型
|
├── models/ # AI 模型
|
||||||
├── logs/ # 日志目录
|
├── logs/ # 日志
|
||||||
└── web/hls/ # HLS 输出目录
|
└── web/hls/ # HLS 输出
|
||||||
|
|
||||||
/opt/rk3588-agent/ # Agent 安装目录(如果使用)
|
/opt/rk3588-agent/
|
||||||
├── rk3588-agent
|
├── rk3588-agent # Agent 程序
|
||||||
└── agent.config.json
|
└── agent.config.json # Agent 配置
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -163,37 +182,28 @@ sudo systemctl restart rk3588-agent
|
|||||||
### 服务无法启动
|
### 服务无法启动
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 查看详细错误
|
# Media Server 错误
|
||||||
sudo journalctl -u media-server -n 50
|
sudo journalctl -u media-server -n 50
|
||||||
# 或
|
|
||||||
|
# Agent 错误
|
||||||
sudo journalctl -u rk3588-agent -n 50
|
sudo journalctl -u rk3588-agent -n 50
|
||||||
```
|
```
|
||||||
|
|
||||||
### 检查 NPU 是否正常
|
### 检查 NPU
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 查看 NPU 负载
|
|
||||||
cat /sys/kernel/debug/rknpu/load
|
cat /sys/kernel/debug/rknpu/load
|
||||||
|
|
||||||
# 查看 NPU 驱动
|
|
||||||
ls /dev/rknpu
|
ls /dev/rknpu
|
||||||
```
|
```
|
||||||
|
|
||||||
### RTSP 流无法播放
|
### RTSP 测试
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 在设备上测试播放
|
# 本地测试
|
||||||
ffplay rtsp://localhost:8555/live/cam1_face_det
|
ffplay rtsp://localhost:8555/live/cam1_face_det
|
||||||
|
|
||||||
# 测试输入源
|
# 远程测试
|
||||||
ffplay rtsp://输入源IP:端口/路径
|
ffplay rtsp://<设备IP>:8555/live/cam1_face_det
|
||||||
```
|
|
||||||
|
|
||||||
### 端口占用
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# 查看端口占用
|
|
||||||
sudo ss -tlnp | grep -E "(8554|8555|9000|9100)"
|
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -202,7 +212,4 @@ sudo ss -tlnp | grep -E "(8554|8555|9000|9100)"
|
|||||||
|
|
||||||
- **硬件**: Orange Pi 5 Plus (RK3588)
|
- **硬件**: Orange Pi 5 Plus (RK3588)
|
||||||
- **系统**: Ubuntu 22.04 LTS (ARM64)
|
- **系统**: Ubuntu 22.04 LTS (ARM64)
|
||||||
- **依赖**:
|
- **依赖**: RKNN Runtime, MPP, FFmpeg
|
||||||
- RKNN Runtime
|
|
||||||
- MPP (Media Process Platform)
|
|
||||||
- FFmpeg (带 rkmpp 支持)
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user