Video Integration
NE503 通过 RTSP 协议输出 H.264 视频流,支持 TCP 交织传输,端到端延迟 < 100ms。本文面向需要将 NE503 视频流集成到自有系统的第三方开发者,提供从拉流录制、转码到 NVR/VMS 对接的完整方案。
1. 码流概览
1.1 三路码流参数
NE503 提供三路独立编码的 H.264 码流,参数如下:
| 参数 | 主码流 (main) | 子码流 (sub) | 三码流 (third) |
|---|---|---|---|
| 分辨率 | 1920x1080 | 1280x720 | 640x384 |
| 帧率 | 30 fps | 30 fps | 15 fps |
| 码率 | 4 Mbps | 2 Mbps | 512 Kbps |
| GOP | 30 (1s) | 60 (2s) | 30 (2s) |
| Profile | High 4.1 | High | Main |
| 编码 | H.264 | H.264 | H.264 |
以上为出厂默认参数,可通过 Platform API 的
PUT /media/encoder端点运行时热更新码率、帧率、GOP,无需重启设备。
1.2 RTSP URL 格式
rtsp://<DEVICE_IP>:8554/{main,sub,third}
| 码流 | URL | 典型用途 |
|---|---|---|
| 主码流 | rtsp://192.168.1.100:8554/main | 高清录像、大屏显示 |
| 子码流 | rtsp://192.168.1.100:8554/sub | 多路预览、中等质量录制 |
| 三码流 | rtsp://192.168.1.100:8554/third | 移动端、AI 分析、低带宽场景 |
NE503 强制使用 RTSP over TCP(RTP/AVP/TCP 交织传输),不支持 UDP 传输模式。所有拉流命令需指定 TCP 传输。
2. FFmpeg 集成
2.1 基本拉流验证
# 验证码流是否可用(播放 10 秒,不做实际输出)
ffmpeg -rtsp_transport tcp -i "rtsp://192.168.1.100:8554/main" \
-t 10 -f null -
2.2 拉流录制
# 主码流直接录制(不转码,保持原 始 H.264)
ffmpeg -rtsp_transport tcp -i "rtsp://192.168.1.100:8554/main" \
-c copy -f mp4 recording_main.mp4
# 子码流录制为 MKV(支持断流续录,MKV 容器更容错)
ffmpeg -rtsp_transport tcp -i "rtsp://192.168.1.100:8554/sub" \
-c copy -f matroska recording_sub.mkv
2.3 转码输出
# 转码为 720p H.264 用于 Web 分发
ffmpeg -rtsp_transport tcp -i "rtsp://192.168.1.100:8554/main" \
-vf scale=1280:720 -c:v libx264 -preset fast -crf 23 \
-f mp4 output_720p.mp4
# 转码为 H.265 节省存储空间
ffmpeg -rtsp_transport tcp -i "rtsp://192.168.1.100:8554/main" \
-c:v libx265 -preset medium -crf 28 \
-f mp4 output_h265.mp4