FYI,
I don't know what he has but it is possible that the data is encoded in a separate stream in SMPTE KLV format. This data format is the standard used by MISB (Motion Industry Standards Board) which is an off shoot of military UAV programs.
They have a standard for encoding KLV (Key Length Value) meta-data (GPS, heading, platform attitude, etc) in MPEG2 transport streams. They also have a draft standard for sending this this meta data as a RTP stream (http://tools.ietf.org/html/draft-arbeiter-rtp-klv-00).

I've done some work in this area, i.e. I'm sending KLV meta-data in a RTP stream with my video but it's not according to the MISB standard (I did mine before they wrote their standard) however my video source is a live camera not a MPEG2 transport stream so I haven't done the transport stream de-muxing part.

In the near future I hope to update our code to use the draft standard and at that time I'd like to push the code back to the LiveMedia code base but I don't know when that work will happen.

Regards,
Matt S.

On 8/8/2011 10:21 PM, Ross Finlayson wrote:

On Aug 8, 2011, at 7:45 PM, Pardridge, Robert wrote:

I want to stream video via RTSP, where the container has 2 streams, one is video and the other is data. I can stream just fine with live555 a video with just video, but if there is a data stream I get the message “Saw unexpected code” which I traced back to MPEG1or2VideoStreamFramer.cpp
 
I was wondering how I could modify the live555 library to send the data stream as well as the video stream.

There are a couple of issues here:

1/ How is the metadata stored within the MPEG Program Stream file?  If it's stored in PES packets - with a well-defined stream_id for 'metadata' - then it could probably be extracted in the same way that audio and video is extracted, by modifying the "MPEG1or2Demux" code.  If, however, the metadata is stored within the video stream (which is suggested by the "Saw unexpected code" error), then extracting it would be harder.

2/ (The big issue) What RTP payload format would you use to stream this metadata?  There probably isn't one defined, which means that you'd need to define your own.  But then you'd have the problem of no standard receiver being able to understand the metadata stream.

In any case, it would be useful to see an example file that contains 'metadata'.  Please put an example on a web server, and send a link to it, so we can download and test it for ourselves.


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



_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to