[mythtv] Prebuffering pause (again)
Steve Brown
sbrown at cortland.com
Tue Dec 9 12:27:27 EST 2003
EVIDENCE
This seems aggravated by xvmc and hdtv.
It occurs not just with ota playback, but also with recorded playback.
I've tried various combinations of "Experimental A/V Sync", "Extra Audio
Buffering" and "Jitter reduction" without noticable change.
I've read the dev and user lists and the concensus seems to be that this
is related to data not being available in time. Maybe low data rate or
max'ed cpu.
In my case, the cpu is 2.8GHz and the disk is SATA. CPU utilization is
only about 50%. I suspect there is plenty of cpu and no problem getting
data. When the "prebuffer..." messages start, the cpu utilization
actually goes down.
THEORY
Could part of the problem be the latency in the method used for
synchronism between the main thread in NuppelVideoPlayer and the
VideoOutputLoop thread it spawns in StartPlaying? Currently, if a free
buffer isn't available, the thread usleeps for a while and tries again.
This means that when a buffer is freed by one thread, the other thread
still completes its usleep interval before getting back to work.
SUGGESTION
If the above is correct, could the QSemaphore mechanism provide lower
latency and maybe reduce the problem?
I'm inclined to try this and see, but first wanted some feedback.
I know this issue has already been discussed at length and hope I'm not
wasting your time.
Flame away,
Steve
More information about the mythtv-dev
mailing list