嵌入式开发,在ARM板上实现读取UVC摄像头图像并通过网络传输传输出去的瓶颈怎么突破

pirongbing0020 2017-12-16 02:32:24
现在程序基本结构完成,使用C++实现的。由于100mbps的网口传输速度最多12.5MB/s,但是1280*720的YUYV格式的图像却有接近两兆,导致上位机的视频非常卡。尝试过用libjpeg压缩图像,但是每帧的压缩时间高达1秒。还有什么办法能图片这个瓶颈吗。
...全文
1401 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jasonM2008 2017-12-18
  • 打赏
  • 举报
回复
建议用H264 VP8 VP9等视频的编解码进行压缩,同时在接收端设计一个jitterbuffer来处理你的网络不佳的情况
Chelios_Lee 2017-12-18
  • 打赏
  • 举报
回复
楼主可以考虑将数据编码h264后再传输,如果直接传输 jpeg压缩后的数据,各帧之间的数据重复率是相当大了, 另外就是看你cpu的处理速度了,无论如何还是不建议这么做的,楼主还是先了解一下视频压缩的一些基础, uvc的摄像头多数都是小作坊出的,有时也会出现硬件问题,建议楼主关注一下是不是摄像头的采集帧率低 导致了其他方面的效率低
jklinux 2017-12-16
  • 打赏
  • 举报
回复
楼主确认下你所用的libjpeg是不是得把yuv数据编码成jpg时需要保存到硬盘上的, 如果是的话那肯定会很占用时间的. 要想方便简单的话,可以直接使用支持jpeg/mjpg图像格式的摄像头也可以.

23,117

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧