\section{Motion JPEG}

Итак, что же такое этот самый хваленый motion jpeg? Во первых, как и
всякий другой стандарт он имеет и плюсы и минусы. В частности, Владимир
Собчиков объяснил мне на примерах следующее: 

\begin{itemize}

\item{Ява при работе браузером нужна исключительно для организации cъема потока.}

\item{motion jpeg дает изображение качественнее чем mpeg, однако очень быстро съедает
дисковое пространство - как минимум на порядок.}

\end{itemize}

Motion JPEG имеет синонимичное название M-JPEG .

\subsection{Описание M-Jpeg.}

Тут, разумеется, используя глагол <<2google>>, находится очень много
чего.  В частности, мне показались интересными следующие выдержки:

\begin{verbatim}

источник:
http://www.afterdawn.com/glossary/terms/m-jpeg.cfm

текст:

M-JPEG

M-JPEG stands for Motion JPEG. M-JPEG is a video format that uses JPEG
picture compression in each frame of the video. Frames of the video don't
interact with each other in any way (like they do in MPEG-1, MPEG-2, etc..)
which results in much bigger filesize, but in other hand, it makes the 
video editing easier because each of the frames has all of the information
they need stored in them. 

M-JPEG is used in very high quality video captures -- normally as the raw
data format which is edited and compressed into another format after the
editing process is completed.

Unfortunaly M-JPEG is not a standard or even  standardized -- each vendor
has their own  codecs and normally M-JPEG files created with one codec
cannot be read with other vendor's codecs. 


M-JPEG is the format that we recommend you to use in your video capture
process as a raw data format. Editing this videostream is extremely easy
and encoding the edited M-JPEG stream into final format (such as MPEG-1,
MPEG-2 or Divx ;-)) gives normally the best possible video quality.
\end{verbatim}

На мой взгляд за рекомендации использовать в разработке нестандартные
протоколы надо объявлять, как раньше делали, <<выговор с занесением>>, 
а говоря по простонародному - <<руки отрывать>> . Именно из за таких
вот <<доброжелателей>> люди вынуждены тратить время на реверсинг там,
где нужды в этом могло бы и не быть.\\

Следующий интересный фрагмент:

\begin{verbatim}

источник:
http://www.mangodsp.com/compression-standards.asp

текст:

MJPEG

	
Motion JPEG uses the same compression technique
as JPEG, but applies this compression to successive
frames of a video file.

JPEG compression was originally developed by the 
Joint Photographic Experts Group as a compression
algorithm for the storage and transmission of
digitally scanned photographs.

A motion JPEG or MJPEG compresses each frame
of the video individually with no temporal
compression (no predictive frames) and can 
be viewed as a series of MPEG I frames.

Motion JPEG enjoys several advantages: 

   Ability to decode each frame individually
	
   Extremely low latency encoder/decoder	

   Simple architecture requires low processor resources	

   Highest resilience to noisy channels	

MJPEG is often used in digital video editing
where there is a requirement to able to flick
between successive frames of video. Other
applications include military applications.
Security systems and remote control video systems.

\end{verbatim}

В двух словах о motion jpeg по словам тех, кто сталкивался c этим на
практике:\\

Первыми словами люди говорят что m-jpeg это поток. Если же попросить
расшифровать что под этим подразумевается выясняется следующее: 

\begin{itemize}

\item{Наиболее наглядно представить motion jpeg можно так: это картинка
которая  заливается к получателю поверх одного установленного соединения
и никогда не кончается.}

\item{Соединение может устанавливаться по разным транспортным протоколам. В
частности, по http}

\item{В начале соединения передается заголовок (который может немного
различаться от кодека к кодеку)} 

\item{В случае http транспорта картинки льются в виде последовательности из
заголовка, который передается один раз при установлении соединения и
фреймов, которые разделяются неким boundary тегом в рамках http
протокола. То есть примерно так: заголовок, boundary, картинка,
boundary, картинка} 

\end{itemize}
















