[Live-devel] Implement RECORD RTSP functionality (server)

Ross Finlayson finlayson at live555.com
Sat Jul 24 00:39:45 PDT 2010


>As an academic project, i want to implement the record functionality 
>in your library.
>I mean, to implement the RTSP request: RECORD, permitting to the 
>server to copy the content of the media during streaming.
>I imagine to add a HandleCmd_Record function to the RTSPServer, 
>streamState, subsession classes but i don't know how to link them 
>with the sink and framer.
>Indeed, i imagine a framer which duplicates its content when the 
>"record" functionality is activated, that supposed that the 
>subsession access to the framer...

Yes, I think that is probably how I would implement "RECORD"-  i.e., 
define a new "Framer" class (similar to the existing one for your 
media type) that also recorded (e.g., by writing to a file) the data 
that passed through it.  Then you could define a new 
"ServerMediaSubsession" subclass - similar to the existing one - that 
used your new "Framer" class instead.

Unfortunately you would still need to modify the existing code - both 
to handle the new "RECORD" command, and to define a new virtual 
function in "ServerMediaSubsession" for 'recording'.  As you can 
probably imagine, "RECORD" is a rarely implemented feature of 
RTSP/1.0, and has been removed from the RTSP/2.0 specification. 
That's why implementing it in our server has never been a priority.
-- 

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


More information about the live-devel mailing list