Es gibt drei Zeitgebermethoden in MPlayer.
Um die alte Methode zu verwenden, musst du
gar nichts machen. Diese benutzt usleep()
, um
A/V-Synchronisation abzustimmen, mit +/- 10ms Genauigkeit. Trotzdem muss manchmal
die Synchronisation noch feiner abgestimmt werden.
Der neue Zeitgeber-Code benutzt RTC (RealTime Clock, Echtzeituhr)
für diese Aufgabe, da dieser präzise 1ms-Timer besitzt.
Die Option -rtc aktivert diesen, es ist jedoch ein hierfür speziell konfigurierter
Kernel erforderlich.
Wenn du Kernel 2.4.19pre8 oder neuer laufen hast, kannst du die maximale RTC-Frequenz
für normale Benutzer durch das /proc
-Dateisystem
festlegen.
Benutze einen der folgenden Befehle, um RTC für normale Benutzer zu aktivieren:
echo 1024 > /proc/sys/dev/rtc/max-user-freq
sysctl dev/rtc/max-user-freq=1024
Die kannst diese Einstellung permanent machen, indem du letzteren Befehl der Datei /etc/sysctl.conf hinzufügst.
Du kannst die Effizienz des neuen Zeitgebers in der Statuszeile sehen. Die Power Management-Funktionen der BIOSse mancher Notebooks mit speedstep-CPUs vertragen sich nicht gut mit RTC. Audio und Video könnten Synchronisation verlieren. Die externe Stromversorgung anzuschließen, bevor du dein Notebook einschaltest, scheint zu helfen. Bei manchen Hardwarekombinationen (bestätigt während des Gebrauchs eines Nicht-DMA-DVD-Laufwerks auf einem ALi1541-Board) führt der Gebrauch des RTC-Zeitgebers zu sprunghafter Wiedergabe. Es wird empfohlen, in solchen Fällen die dritte Methode zu verwenden.
Der Code des dritten Zeitgebers wird mit der Option -softsleep aktiviert. Der hat die Effizienz von RTC, benutzt RTC aber nicht. Auf der anderen Seite benötigt er mehr CPU.