At 07:59 AM 9/15/2008, you wrote:
but what if the RTP payload which cached in buffered packet is a multiframed packet?In that case,what we get from "MultiFramedRTPSource::doGetNextFrame1" will be more than one frames

That's OK. However, not all of these frames will be delivered to the reading object at once. Instead, only one frame will be delivered at a time. This is implemented by the virtual function "nextEnclosedFrameSize()", which calculates the size of each frame within the packet.

,for example,we received a RTP packet which contain 3 MPEG4ES video frames before and save it to the buffered packet,then how to pick out the single frames and their config information like timestamp,length or else from this multiframed data?As I know,both class MPEG4ESVideoRTPSource and MPEG4GenericRTPSource have not been completed,do they need something like multiframe split as in last question?

"MPEG4GenericRTPSource" implements multiple frames per packet (except currently for interleaving); note the function "MPEG4GenericBufferedPacket::nextEnclosedFrameSize()".

However, you're correct that "MPEG4ESVideoRTPSource" currently does not implement multiple frames per packet (it currently does not reimplement the "nextEnclosedFrameSize()" virtual function).


        Ross Finlayson
        Live Networks, Inc. (LIVE555.COM)
        <http://www.live555.com/>

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

Reply via email to