[Live-devel] JPEGVideoRTPSink and Restart markers

Ross Finlayson finlayson at live555.com
Tue Oct 26 17:39:33 PDT 2010


>I'm trying to create a rtsp server to stream MJPEG images.

Ugh.  JPEG is a *terrible* codec for video streaming.


>  I have implemented a new TestJPEGFileServerMediaSubsession that 
>creates a TestJPEGVideoRTPSink.
>
>In TestJPEGVideoRTPSink::doSpecialFrameHandling I'm adding the 
>quantization tables of the image into the header 
>using setSpecialHeaderBytes

Note that the existing "JPEGVideoRTPSink" code already does this. 
You should not have to reinvent the wheel here.


>This is working fine using some JPEG images, but fails with others.
>
>I'm testing one image that has the marker 0xFF, 0xDD ( Define 
>Restart Interval) and I think I have to do something else seeing 
>this comment in the code
>
>// Note: We assume that there are no 'restart markers'
>
>So, what should I do with images containing restart markers and macroblocks?

The JPEG transmitting code ("JPEGVideoSource" and "JPEGVideoRTPSink") 
currently don't support "Restart Marker Headers" (see RFC 2435, 
section 3.1.7).  You will need to update the (definition and 
implementation) of these two classes to support them.
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/


More information about the live-devel mailing list