From: Henry W. <ha...@nc...> - 2001-03-22 00:40:08
|
Found the root of a lot of the 0.4.01 problems. In video_out.c the vo_set_logo_mode() function is responsible for creating and joining the video_out_loop thread. But the thread isn't getting shutdown in the case of transitioning between files in the playlist, the exisiting thread is left running and a new thread is created. As you advance through the play list, more and more threads are created until contention between them causes a hang. I changed vo_reset() to stop and join the thread and similarly changed vo_set_logo_mode() as a failsafe. With that fix, some more queuing tweaks, and other odds-n--ends -- playback is much smoother with fewer discarded and skipped frames. Once I've done a some more testing, I'll put together a patch. Henry |