회사일/uclinux & rtos2016. 1. 6. 15:49


아직까지는 찾지를 못함..

직접 구현해야 하려나?


mjpeg 카메라 영상인데...

[링크 : http://141.89.114.98/demo/edu640x480v.html] mjpeg 예제


안드로이드(갤S2 LTE HD)는 그냥 다운로드..(재생불가)

IE 11 (edge)재생불가

IE 10 이하 재생불가


아이패드는 재생

크롬 재생

VLC 재생


It is natively supported by the QuickTime Player, the PlayStation console, and web browsers such as Safari, Google Chrome, and Mozilla Firefox.

[링크 : https://en.wikipedia.org/wiki/Motion_JPEG]


M-JPEG over HTTP

HTTP streaming separates each image into individual HTTP replies on a specified marker. RTP streaming creates packets of a sequence of JPEG images that can be received by clients such as QuickTime or VLC.


In response to a GET request for a MJPEG file or stream, the server streams the sequence of JPEG frames over HTTP. A special mime-type content type multipart/x-mixed-replace;boundary=<boundary-name> informs the client to expect several parts (frames) as an answer delimited by <boundary-name>. This boundary name is expressly disclosed within the MIME-type declaration itself. The TCP connection is not closed as long as the client wants to receive new frames and the server wants to provide new frames. Two basic implementations of a M-JPEG streaming server are cambozola and MJPG-Streamer. The more robust ffmpeg-server also provides M-JPEG streaming support.

[링크 : https://en.wikipedia.org/wiki/Motion_JPEG#M-JPEG_over_HTTP]


VLC로 raw 덤프해서 보니...

--myboundary

Content-type: image/jpeg

이렇게 시작하고 그 아래로는 깨지는걸 봐서는 그냥 jpeg 프레임인듯..



심심..(?)해서 저기 MIME 관련 헤더들 삭제하고 jpeg으로 저장하니

아래와 같이 똮!



저장을 좀 오래 하니

--myboundary

Content-type: image/jpeg

가 반복적으로 나타난다.


video/x-jpegMotion-JPEG video.   There are currently no specific properties defined or needed for this type. Note that video/x-jpeg only applies to Motion-JPEG pictures (YUY2 colourspace). RGB colourspace JPEG images are referred to as image/jpeg (JPEG image).

[링크 : http://gstreamer.freedesktop.org/.../section-types-definitions.html#table-video-types]

    [링크 : http://stackoverflow.com/.../correct-mime-type-for-multipart-mjpeg-stream-over-http]




HTTP/1.0 200 OK

Server: en.code-bude.net example server

Cache-Control: no-cache

Cache-Control: private

Content-Type: multipart/x-mixed-replace;boundary=--boundary

 

--boundary

Content-Type: image/jpeg

Content-Length: [length of the image bytes]

 

[write jpeg bytes]

 

--boundary

Content-Type: image/jpeg

Content-Length: [length of the image bytes]

 

[write jpeg bytes]

 

[...] 


[링크 : http://en.code-bude.net/tag/how-does-mjpeg-work/]



mjpeg streamer

[링크 : http://www.acmesystems.it/video_streaming]

'회사일 > uclinux & rtos' 카테고리의 다른 글

freeRTOS + lwip or freeRTOS+TCP  (0) 2016.01.06
비선점형 마이컴 OS - csrtos  (0) 2015.11.12
uclinux / linux 벤치마킹  (0) 2015.11.11
µC/OS-II  (0) 2015.11.11
uclinux  (0) 2015.11.10
Posted by 구차니