[Live-devel] Trap in exit()

Don McNeill dmcneill at vtilt.com
Fri Mar 20 16:06:08 PDT 2009


Hi,

I've been working with a playback session with QuickTime and  
implementing the calls associated with playback; per recommendation:

void PlaybackSubsession::seekStreamSource(FramedSource* inputSource,  
double seekNPT);
void PlaybackSubsession::setSourceStreamScale(FramedSource*  
inputSource, float scale);
void PlaybackSubsession::testScaleFactor(float& scale);
float PlaybackSubsession::duration(void);

So far, so good -- QuickTime displays the slider and I am able to move  
it around and see the video changing positions, and the time
display change on the left for the QT client.

VERY seldom, I get a trap in FramedSource::getNextFrame( ... ) where  
the flag fIsCurrentlyAwaitingData is true, thus causing the exit()
function to be called(!).  I went back and double-checked everything  
and made sure that the PlaybackSource class had coverage in the
doGetNextFrame method:

	if ( isCurrentlyAwaitingData() )
		readFrame( this, 0 );
	return;

Note that this happens quite rarely... There is also coverage in  
doGetNextFrame() for the EOF condition, where handleClosure(this) is
called on end of file or other error.  Do you have any recommendations  
I could try?

Regards,

Don McNeill








More information about the live-devel mailing list