Ross, Barry, and Jon, I want to thank you for your assistance with your answers on this mailing list. I am far from complete with the app I am working on, and will certainly be posting more questions as development progresses, but I now have a working prototype moving real-time video across a network through Live555 and ffmpeg to display on an iOS device. Your help has been appreciated more than you know.
I'm sure I'm not the first to suggest this, and I mean this entirely in the spirit of helpful feedback, but it would be really helpful to start making available some current documentation and addressing various use cases. In particular, I believe the use case addressed by this thread (real-time H.264 to display, on mobile devices) is a very common use-case, given that no native ability to do so exists in either iOS or Android, so I think it would be great to start seeing attention to these uses take shape. I don't know what the typical / desired approach is for make new info available...perhaps for the least intrusion, a posting on my own blog might be the best route. Anyway, I wanted to say thanks again guys.... Sincerely, Brad Brad O'Hearne Founder / Lead Developer Big Hill Software LLC http://www.bighillsoftware.com (480) 280-1468 On Mar 5, 2012, at 12:10 PM, Ross Finlayson wrote: >> 1. What is the exact nature of the data in the receive buffer at the time >> that the afterGettingFrame() method of the MediaSink subclass is called, >> when an H.264 stream from RTSP is in play? > > It's a H.264 NAL unit. > > >> 2. When an H.264 stream from RTSP is in play, is there any massaging of data >> in the receive buffer that needs to take place prior to decoding an H.264 >> frame in ffmpeg? Does it need a start code > > Yes, you will need to prepend 0x00 0x00 0x00 0x01 to each NAL unit before > passing it to "ffmpeg" for decoding. > > You should also take the SDP 'configuration' string (from > "MediaSubsession::fmtp_spropparametersets()"), and parse this string into a > set of SPS and PPS NAL units, using the function "parseSPropParameterSets()". > You should then insert these NAL units (with start codes) into your decoder > (before the NAL units that come from the RTP stream). > > > 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