[Live-devel] creating a simple RTP server

Ross Finlayson finlayson at live555.com
Mon Jul 23 13:01:50 PDT 2007


>  >Are you *sure* that you don't know anything about the format of your media?
>
>
>
>ok then, suppose I know what media type it is, for instance h263+ or 
>mpeg2 or whatever is easiest to converse about.
>further suppose that they media is not coming from file, but rather 
>it is handed out to me, already divided into frames.
>
>I wish to properly package them in RTP and send them to a known RTP 
>client, who is already listening and waiting for the packets.
>
>The live555 library already has a XXXframer class for the codec, but 
>do I really need it, after all, its already framed ...

No, you shouldn't need a "*Framer" class, provided that you provide 
accurate presentation times for each frame.  (Note, though, that if 
you have MPEG-2 video with B-frames, then the presentation times will 
*not* be monotonically increasing.  If you don't understand what I 
mean by this, then you should use a 
"MPEG1or2VideoStreamDiscreteFramer" with MPEG-2 video.)

>how do I go about implementing the a ServerMediaSubsession class?

Just use the existing "*FileServerMediaSubsession" class as a model.

Of course, you will also need to write your own "FramedSource" 
subclass that encapsultes your data source - delivering one frame at 
a time.  See the "DeviceSource.cpp" code for a model.

>or should I use PassiveServerMediaSubsession instead?

"PassiveServerMediaSubsession" is used only for multicast streams.
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.live555.com/pipermail/live-devel/attachments/20070723/a766576c/attachment.html 


More information about the live-devel mailing list