目录
[3.1 卸载与重装cmake3.14](#3.1 卸载与重装cmake3.14)
[3.2 websocket网络推流](#3.2 websocket网络推流)
[3.3 安装sdk](#3.3 安装sdk)
[3.4 交叉编译环境搭建](#3.4 交叉编译环境搭建)
[3.5 打包](#3.5 打包)
[3.6 编译](#3.6 编译)
一、项目核心背景与痛点
- 开发基础 :使用 Qt 开发低延迟视频流 Demo
- 当前问题
- RTSP 流需要封装 + 经过 RTSP 流媒体服务器转发
- 导致延迟高、卡顿、掉帧
- 确认:掉帧 / 延迟不是 Qt Demo 本身问题 ,是推流链路 / 网络架构问题

- 展示需求
- 本地:直接推送到 HDMI 显示器 ,不走网络,无延迟
- 后期:必须走网络推流,但传统方案依然会延迟卡顿
二、明确技术需求
- 需要现成可直接测试的 Web 低延迟推流方案
- 基于 Qt 编译
- 优先替代 RTSP,解决延迟问题
三、环境搭建步骤
3.1 卸载与重装cmake3.14
ubuntu中安装cmake_ubuntu安装cmake-CSDN博客
如果电脑有cmake3.10,先操作上面博客后在卸载3.10
1.卸载旧版本的cmake
sudo apt-get remove cmake
2.删除旧版本的CMake 3.10的配置文件
sudo rm -rf /usr/local/share/cmake-3.10
3.更新系统的缓存
hash -r
4.cmake --version
5.如果你仍然没看到自己新安装的版本,可以尝试手动指定CMake 3.14的路径
/home/vboxuser/homework/cmake-3.14.0/build/cmake --version
3.2 websocket网络推流
环境准备:ubuntu20.04(lsb_release -a查看ubuntu版本信息)
3.3 安装sdk
安装SDK --- BM1688_CV186AH_SOPHONSDK (HEAD detached at 6ec0158) 文档 (sophgo.com)
3.4 交叉编译环境搭建
sudo apt-get install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu验证交叉编译工具链是否成功
which aarch64-linux-gnu-g++ 2# 终端输出内容 3# /usr/bin/aarch64-linux-gnu-g++
3.5 打包
将程序所依赖的头文件和库文件打包至sophon_sdk_soc目录中
这里使用官网直接给配置好的,我的是1688的Soc模式,需要交叉编译
sophon-stream/docs/HowToMake.md at master · sophgo/sophon-stream · GitHub

3.6 编译
mkdir build cd build cmake ../ -DTARGET_ARCH=soc -DSOPHON_SDK_SOC=/home/vboxuser/homework/suan_neng/sophon-stream-master/sophon_sdk_soc -DQTPATH=/path/to/qt -DOPENSSL_PATH=/path/to/openssl make -j4
四、参考文章
Python读视频流发送给前端H5呈现-websocket实现方法_h5 websocket python-CSDN博客