之前用过一个类似软件,只能用串口接收,而且速度有限,并且还很耗CPU。前不久调USB摄像头的时候自己用C++写了一个,支持串口接收和网络接收JPEG图像序列。现在发出来给需要的同学,方便各位的程序调试。
串口接收功能:
串口端口无限制,自动检测电脑可用端口,波特率从9600到921600可选,默认不支持流控制和奇偶校验,8位数据位一位停止位。不需要通信协议,自动从接收的数据中判断JPG数据的起始(FFD8)结束(FFD9)标志,不包含在起始结束标志之间的数据默认为非jpg数据并显示在数据接收窗口(目前只支持文本显示,16进制暂未实现),支持接收数据量显示,帧速率显示(可能计算的不太准确),一帧JPG图像数据大小显示,图像分辨率显示。串口发送功能暂未实现。
网络接收功能:
上位机也支持通过网络接收JPG图片序列。数据接收功能和图像显示功能同串口。上位机默认作为服务器端,且暂时只支持TCP服务器,UDP未实现。目前只支持一个客户端的连接,可显示客户端的连接状态和IP。
注意:
串口接收功能和网络接收功能可同时开启,但如果同时接收数据会造成数据混乱从而导致图像显示不正常。
串口和网络的发送功能均暂未实现(暂时用不到发送功能)。
本人实测通过TCP本地回环接收TCP客户端发来的MJPG编码的1080P avi视频文件,网络速度3~5MB/s(360加速球显示),图像显示速率20~30fps,CPU(i5 750)占用25%左右,串口传输效果可以看这里链接里的视频
http://pan.baidu.com/s/1jGDA9s6
软件目前还算稳定,之前测试传输了几个小时的图像也没什么问题,可能还有些小bug,欢迎反馈。
测试截图
添加不了附件了,二楼传
WIN7 64位。报如下错误:
@jermy_z
用静态库重新编译了一下,应该不会再出现缺失DLL的问题。下一步增加TCP客户端模式的网络接收~
1.波特率无法支持到921600.
2,右侧的图片显示区域,如果不同时刻发不同的尺寸过来,之前的图片,可能会有残影.
3,图片显示区域,如果可以最大化,最小化设置,效果会更好.(显示大图片.)
一周热门 更多>