Qt TCP视频无线视频传输问题,急待解答!!!
程序在PC机UBUNTU上面可以运行,用的是环路IP地址(0.0.0.0),当ARM上面运行服务器端,PC机UBUNTU运行客户端(服务器端IP地址:192.168.1.135),服务端正常发送USB视频数据,但是客户端每20帧的数据却只能接收1帧,想问下是什么原因????
源代码:http://115.com/file/dp3d0e0w#qtV4L2.rar (参考他的代码,原博客:http://blog.csdn.net/zhx6044/article/details/8049599)
发送代码:
void socket_thread::data_consumer(QImage ima)//数据写入
{
int _size;
QByteArray bArr;
QBuffer buffer(&bArr);
buffer.open(QIODevice::WriteOnly);
ima.save(&buffer,"JPG");
_size = bArr.size();
qDebug()<<_size;
QDataStream out(workSocket);
out<<qint64(_size)<<bArr;
emit send_a_frame(this ->socket_id);
接收代码:
void clientWidget::dataRecived()
{
qDebug()<<"data come";
QByteArray inBlock;
QDataStream in(tcpSocket);
in>>_size;
inBlock.resize(_size);
in>>inBlock;
qDebug()<<inBlock.size();
image ->loadFromData(inBlock);
ui ->label_4 ->setPixmap(QPixmap::fromImage(*image));
inBlock.resize(0);
}
求大神帮忙!