diff --git a/docs/hi3861_v100_demo_oledplayer/README.md b/docs/hi3861_v100_demo_oledplayer/README.md index 3d82781929f8874571d1b49a3a62e818551f5f41..eae7bef21a46e23362e9b9b18ff8769cc549fe39 100755 --- a/docs/hi3861_v100_demo_oledplayer/README.md +++ b/docs/hi3861_v100_demo_oledplayer/README.md @@ -126,12 +126,12 @@ - 目前ssd1306库实测的最大帧率为10fps; - ffmpeg转换命令:`ffmpeg -i input.mp4 -r 10 output.mp4` - ffmpeg在Ubuntu上可以直接试用`sudo apt install ffmpeg`安装,Windows上可以在官网下载二进制包:[https://ffmpeg.org/download.html#build-windows](https://gitee.com/link?target=https%3A%2F%2Fffmpeg.org%2Fdownload.html%23build-windows) - 2. 运行命令:`./video2bin.py output.mp4 out.bin`,将视频转为bin文件; + 2. 运行命令:`python video2bin.py output.mp4 out.bin`(在demo_oledplayer目录下),将视频转为bin文件; 3. video2bin.py 依赖 `opencv-python` 包,使用 `pip install opencv-python` 命令安装; ### 运行程序 - 1. PC上运行命令:`./bin2stream.py out.bin`,将会启动一个TCP服务器,默认监听`5678`端口 + 1. PC上运行命令:`python bin2stream.py out.bin`(在demo_oledplayer目录下),将会启动一个TCP服务器,默认监听`5678`端口 2. 根据热点信息(SSID,PSK)和PC的IP地址,修改`play/net_params.h`文件中的相关参数: 3. 重新编译:`hb build -f` 4. 将重新编译好的固件烧录到WiFi IoT开发板上,并复位设备; @@ -142,16 +142,16 @@ 整体为C/S架构: -* 使用TCP传输帧数据,实现了简单的二进制协议: - * 请求格式:帧ID(4B); - * 响应格式:状态码(4B) + 帧数据长度(4B)+ 帧数据(可选); -* PC上运行服务端,默认监听`5678`端口,使用Python开发; - * 启动时加载整个bin文件,并将其按照帧数据大小分割,放入一个list中; - * 客户端请求特定帧时,直接根据下标索引取出对应帧,并发送给客户端; - * 这样的设计(视频预先转换好),可以保证服务端的响应尽可能快; -* 板上运行客户端; - * 主动发送帧请求,并接收服务端的回应; - * 收到帧数据后通过I2C向OLED屏发送帧数据; +- 使用TCP传输帧数据,实现了简单的二进制协议: + - 请求格式:帧ID(4B); + - 响应格式:状态码(4B) + 帧数据长度(4B)+ 帧数据(可选); +- PC上运行服务端,默认监听`5678`端口,使用Python开发; + - 启动时加载整个bin文件,并将其按照帧数据大小分割,放入一个list中; + - 客户端请求特定帧时,直接根据下标索引取出对应帧,并发送给客户端; + - 这样的设计(视频预先转换好),可以保证服务端的响应尽可能快; +- 板上运行客户端; + - 主动发送帧请求,并接收服务端的回应; + - 收到帧数据后通过I2C向OLED屏发送帧数据; ### 参考资料