Continuing question 1, I see that deliverFrame() is called by two callers, doGetNextFrame(), which is called by sink object, and deliverFrame0(), which is called by event loop when signalNewFrameData() emits an event. In my case, I left signalNewFrameData() never called, hence deliverFrame0() never called. This means deliverFrame() is only called by doGetNextFrame() from the sink side object. Please correct me if I read the code wrong. Thanks.
Xin Mobile: +86 186-1245-1524 Email: x...@vscenevideo.com QQ: 156678745 From: Ross Finlayson Date: 2017-01-17 16:31 To: LIVE555 Streaming Media - development & use Subject: Re: [Live-devel] how to make latency as low as possible > My question is this. > 1. How the sink object decide its timing of fetching data from the source? It doesn’t. Instead, your video source object (if it’s programmed correctly) decides when to deliver a new frame of data (by arranging for “deliverFrame()” to get called - i.e., in handling an event. > 2. What is the purpose of fPresentationTime? To tell the receiver when (relatively) each frame should be rendered to the viewer. > 3. Should I use my camera's capture timestamp for fPresentationTime? Yes, this would be best (if this timestamp is accurate). 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