Название: MJPEG в Qt4 Отправлено: vutang от Апрель 18, 2010, 09:42 Добрый день. Имеется камера, которая по TCP/IP передает mjpeg. Нужно принять данные, записать в массив и потом отобразить в QImage. С подключение проблем нет, а вот с принимаемыми данными косяк. Нужно считывать в переменную типа unsigned char и искать FFD8 потом писать в массив пока не найдем FFD9. Так вопрос в том как мне правильно принять данные? Пробовал считывать в массив типа char (socket->(mass,sizeof(mass))), а потом из него выбирать, но откуда-то берется куча лишних данных между FFD8 и FFD9...
Название: Re: MJPEG в Qt4 Отправлено: b-s-a от Апрель 18, 2010, 17:49 в одном потоке непрерывно читаешь данные из сокета в "несколько кольцевых буферов" (т.е. у тебя 3 буфера по 1 МБ, пишешь в 1, 2, 3, 1, 2, 3...). во втором потоке анализируешь полученные данные. Т.е. находишь метку начала, запоминаешь ее адрес, ищешь метку конца, отображаешь кадр, проверяешь, можно ли освободить какой-нибудь буфер, если можно, то освобождаешь и ставишь его в конец очереди на чтение...
|