[Live-devel] RTSP Metadata

Ross Finlayson finlayson at live555.com
Mon Aug 2 20:02:51 PDT 2021

The payload format defined by the ‘ONVIF’ document (section is not described in an IETF RFC, so it is not an official Internet standard.  However, you can probably implement it using our “SimpleRTPSink” class.

Please read:

You will need to define and implement a “FramedSource” subclass that delivers - by reimplementing the “doGetNextFrame()” virtual function - a piece of ‘metadata’ that you wish to stream.  You will also need to define and implement your own subclass of “OnDemandServerMediaSubsession”, and reimplement the following virtual member functions:
	- createNewStreamSource()
	- createNewRTPSink()
Your implementation of "createNewRTPSink()” should create (and return) a “SimpleRTPSink” object, by calling:
	SimpleRTPSink::createNew(envir(), rtpGroupsock, rtpPayloadTypeIfDynamic, 90000, “application”, “vnd.onvif.metadata”);

(Perhaps change the last parameter from “vnd.onvif.metadata” to one of the other values listed in section of the ‘ONVIF’ document, depending on what kind of metadata you end up streaming.)

Ross Finlayson
Live Networks, Inc.

More information about the live-devel mailing list