[Live-devel] A few more Windows questions

Ross Finlayson finlayson at live.com
Sun Jan 23 08:01:32 PST 2005


>I've gotten everything building over here, and essentially functioning.
>I've implemented a FrameSource, which delivers compressed frames to one
>of the built-in Sinks (I'm testing right now with H.263, QuickTime is
>compressing the frames).
>
>Everything seems to be functioning, but rather slowly. My
>doGetNextFrame() gets called only about 10 times per second, and I'm
>seeing frames in VLC Player (on the same computer), at maybe 1 frame
>per second. Quicktime player shows a single frame and then gives up.
>The good news, I guess, is that it's streaming! Nice. But...
>
>Has anyone got some suggestions as to where I could look to try to
>solve this problem?

(FWIW, I don't think your questions have anything to do with Windows.)

It sounds like your "doNextFrame()" may be setting 
"fDurationInMicroseconds" incorrectly before "FramedSource::afterGetting()" 
gets called.

Because you are reading from a live source (I presume), rather than from a 
file, it turns out that you don't need to set 
"fDurationInMicroseconds".  Instead, just leave it at its default value 
(0), which tells the "MultiFramedRTPSink" to not wait any time before 
asking for the next input frame.  This works because - in your case - any 
delay needed to process the next frame will be taken care of by your 
"doNextFrame()".

You should also check that you are setting "fPresentationTime" 
correctly.  As you're reading from a live input source, you can probably 
just use "gettimeofday()" to set this (at the time that each frame is 
read).  (This should work as long as your data doesn't include MPEG (2 or 
4) 'B' frames.)


	Ross Finlayson
	LIVE.COM
	<http://www.live.com/>



More information about the live-devel mailing list