Packet Reception and Buffering at the Client
"Mahmoud Hammoud" <[email protected]>
| Newsgroups | gmane.comp.multimedia.helix.devel,gmane.spam.detected |
|---|---|
| Message-ID | <[email protected]> |
Hi All, I posted some questions related to packet reception by the client sockets, Jyotsana preferred that someone else take a shot at those. Your contributions are DEARLY APPRECIATED. 1) How many levels of buffering is there in the client? That is, we know that the packets first received by the network interface (whether UDP or TCP) are first accumulated within calls to HandleRead( ) in a structure of type HXSocketData; then, "read" events issued by the client core result in the packets being read from this initial buffer within calls to ReadFrom(...,...) (is this accurate? What is the basis for issuing such events?) What happens next? I mean arent the streams contained in the media clip then buffered in different places, for the "just-in-time" delivery to take place? 2) I'm finding this a little confusing: on one hand, the UDP sockets for the different streams involved in a media session are created with RTSPClientProtocol::InitSockets( ) (which in turn also calls CreateUDPSockets(..)) and on the other hand the actual reading/reception of the packets from the network interface seems to take place in HXThreadedSocket where the code looks relatively "low-level". Could you please give me some hints on how these 2 different modules relate to one another? Just a small summary about how the packets are received and the "event-driven" playout that then takes place would do.. Best Regards, Mahmoud _______________________________________________ Helix-client-dev mailing list [email protected] http://lists.helixcommunity.org/mailman/listinfo/helix-client-dev