Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Qt4 QTcpSocket
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > Программирование
vutang
Добрый вечер. Можно ли с помощью QTcpSocket читать в массив или переменную типа unsigned char. В char читает, а на unsigned ругается.
vutang
Не совсем точно сформулировал задачу. Имеется камера, которая по TCP/IP передает mjpeg. Нужно принять данные, записать в массив и потом отобразить в QImage. С подключением проблем нет, а вот с принимаемыми данными косяк. Нужно считывать в переменную типа unsigned char и искать FFD8 потом писать в массив пока не найдем FFD9. Так вопрос в том как мне правильно принять данные? Пробовал считывать в массив типа char (socket->read(mass,sizeof(mass))), а потом из него выбирать, но откуда-то берется куча лишних данных между FFD8 и FFD9...
Methane
Цитата(vutang @ Apr 18 2010, 09:49) *
Не совсем точно сформулировал задачу. Имеется камера, которая по TCP/IP передает mjpeg. Нужно принять данные, записать в массив и потом отобразить в QImage. С подключением проблем нет, а вот с принимаемыми данными косяк. Нужно считывать в переменную типа unsigned char и искать FFD8 потом писать в массив пока не найдем FFD9. Так вопрос в том как мне правильно принять данные? Пробовал считывать в массив типа char (socket->read(mass,sizeof(mass))), а потом из него выбирать, но откуда-то берется куча лишних данных между FFD8 и FFD9...

char (socket->read(mass,sizeof(mass))), не совсем QT. А что не получается? Просто данные читать с TCP/IP получается? С read есть фишка, в том, что он совсем не обязан отдать sizeof(mass) данных. Сколько пришло, столько и отдал. Вы это контролируете?
_Pasha
Цитата(Methane @ Apr 18 2010, 11:24) *
char (socket->read(mass,sizeof(mass))), не совсем QT.

*поправочка
Код
unsigned char buff[BUFSIZE];
char *mass=buff;
qint64 numread;

numread = socket->read(mass, sizeof(buff));
vutang
:182: error: invalid conversion from 'unsigned char*' to 'char*'

Есть у кого-нить пример как считать jpeg в массив из интернета? Только считать так чтоб потом его собрать можно было, а не как у меня считывается куча всякого г..на.
Methane
Цитата(_Pasha @ Apr 18 2010, 11:49) *
*поправочка
Код
unsigned char buff[BUFSIZE];
char *mass=buff;
qint64 numread;

numread = socket->read(mass, sizeof(buff));

Все равно не QT.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.