QT显示图片时出现Corrupt JPEG data: premature end of data segment

程序的工作过程为:服务器获取摄像头的图像数据并转换为JPEG格式传输给客户端用QT界面的QLabel进行显示

现象:在显示的过程中偶尔出现图像只显示一部分,剩余部分为灰色或者显示异常,并提示错误为:Corrupt JPEG data: premature end of data segment

原因:服务端传输图片前先传输图像的大小等信息,在客户端使用一个quint16的变量来存储,所以当图像的大小超过65536时,存储在变量中的数值异常,固之后按照这个异常大小来接收时,图像大小也异常

你可能感兴趣的:(QT开发)