vutang 0 17 апреля, 2010 Опубликовано 17 апреля, 2010 · Жалоба Добрый вечер. Можно ли с помощью QTcpSocket читать в массив или переменную типа unsigned char. В char читает, а на unsigned ругается. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vutang 0 18 апреля, 2010 Опубликовано 18 апреля, 2010 · Жалоба Не совсем точно сформулировал задачу. Имеется камера, которая по TCP/IP передает mjpeg. Нужно принять данные, записать в массив и потом отобразить в QImage. С подключением проблем нет, а вот с принимаемыми данными косяк. Нужно считывать в переменную типа unsigned char и искать FFD8 потом писать в массив пока не найдем FFD9. Так вопрос в том как мне правильно принять данные? Пробовал считывать в массив типа char (socket->read(mass,sizeof(mass))), а потом из него выбирать, но откуда-то берется куча лишних данных между FFD8 и FFD9... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 18 апреля, 2010 Опубликовано 18 апреля, 2010 · Жалоба Не совсем точно сформулировал задачу. Имеется камера, которая по 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 0 18 апреля, 2010 Опубликовано 18 апреля, 2010 · Жалоба char (socket->read(mass,sizeof(mass))), не совсем QT. *поправочка unsigned char buff[BUFSIZE]; char *mass=buff; qint64 numread; numread = socket->read(mass, sizeof(buff)); Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vutang 0 18 апреля, 2010 Опубликовано 18 апреля, 2010 · Жалоба :182: error: invalid conversion from 'unsigned char*' to 'char*' Есть у кого-нить пример как считать jpeg в массив из интернета? Только считать так чтоб потом его собрать можно было, а не как у меня считывается куча всякого г..на. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 18 апреля, 2010 Опубликовано 18 апреля, 2010 · Жалоба *поправочка unsigned char buff[BUFSIZE]; char *mass=buff; qint64 numread; numread = socket->read(mass, sizeof(buff)); Все равно не QT. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться