From 372fd7c0c856856d5db3c1aea7217fbe7d6285c0 Mon Sep 17 00:00:00 2001 From: zhongluping <278527840@qq.com> Date: Wed, 8 Mar 2023 10:42:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9oledplayer=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E4=B8=AD=E9=83=A8=E5=88=86=E5=91=BD=E4=BB=A4=E4=B8=8D=E5=AF=B9?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhongluping <278527840@qq.com> --- docs/hi3861_v100_demo_oledplayer/README.md | 24 +++++++++++----------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/hi3861_v100_demo_oledplayer/README.md b/docs/hi3861_v100_demo_oledplayer/README.md index 3d827819..eae7bef2 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屏发送帧数据; ### 参考资料 -- Gitee