On Sat, Dec 04, 2004 at 01:54:30PM -0500, Isaac Richards wrote: > > > The bigger issue, though, is that there's a _lot_ of code that assume > > > that NVP::Pause blocks until certain threads are paused, which isn't true > > > with this patch anymore. > > > > OK, that can be handled rather easily. You do realize, though, there > > is always the case where a full live TV buffer will cause a forced > > unpause. > > Right. > > [...]> > > > > Whether we add a lock or not, I still think we should strongly > > > > consider the change to return early from NVP::GetFrame. Try changing > > > > between 1/16 speed and paused to see why. > > > > > > As long as it sleeps in GetFrame for a bit. > > > > It will. It will jsut be capping the max time it sleeps to something > > like 10ms. > > That works for me.
Alright, then. I believe this version takes care of all known issues except two. First, there is still an issue with commercial flagging. It's known and solvable, but I'm going to defer to Chris on which way he wants to go. Second, there appears to be a new problem with ff/rew using the ivtvdecoder. I need to look at it. Changes in this version as I remember them: Some cleanup. The big if in the decoder loop is now a small if that calls NVP::DoPause or NVP::DoPlay. Re-instatement of the decoder_lock to hopefully fix any races. Honoring of waitvideo when pausing and unpsuseaudio when playing. NVP::Pause doesn't return until the decoder loop actually pauses. Allow early returns from NVP::GetFrame. Return value is true if a new frame was actually decoded and false otherwise. Removal of a framesPlayed != framesRead hack which caused a no longer needed rewind when entering edit mode. David -- David Engel [EMAIL PROTECTED]
speed2.patch.gz
Description: Binary data
_______________________________________________ mythtv-dev mailing list [EMAIL PROTECTED] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
