![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Господа, подскажите, какой компонент использовать для получения MJPEG over HTTP и каким образом лучше этот поток обработать?
Для получения отдельного кадра я использовал TidHTTP (инди). Код:
memorystream:=TMemoryStream.Create; Jpeg:=TJpegImage.create; IdHTTP1.Get('http://192.168.1.99/snapshot.cgi',memorystream); jpeg.LoadFromStream(memorystream); Когда отправляешь запрос: http://192.168.1.99/videostream.cgi, в ответ приходит поток данных: --myboundary (разделитель) Content-Type: image/jpeg Content-Length: (размер кадра) <JPEG image data> --myboundary Content-Type: image/jpeg Content-Length: <JPEG image data> и т.д... Мне нужно вытаскивать из этого потока кадры. Если использовать TidHTTP то руки связанны, так как memorystream используется методом GET(). Удобнее всего, было бы, как в TtcpClient - на событие onReceive обрабатывать каждый пришедший кусок данных и писать их в массив кадров... |