Seite 1 von 2
Jack + Delta 1010LT
Verfasst: Fr Jun 09, 2006 9:39 am
von 404 Not Found
Erstmal ein großes Hallo an alle!
Ich habe folgendes Problem: Auf meinem Rechner (AthXP2400+/512MB; Delta 1010LT) läuft Mandriva 2006.0 (Kernel 2.6). Der Rechner wird hauptsächlich für Musikaufnahmen benutzt (über ardour 0.99 und die jack-Version, die bei Mandriva dabei war). Das Problem ist, dass ich bei Aufnahmen immer wieder in längeren Zeitabständen, so 2-5 Minuten, xruns bekomme. Weil ich Aufnahmen für Bands mache, behindert mich das bei der Arbeit extrem, vor allem beim Schlagzeug mit 8-Spur-Parallelaufnahme.
Per Try-And-Error habe ich Jack so einstellen können, dass die Abstände zwischen den xruns möglichst groß sind, aber ganz weg bekomme ich sie nicht. Die betreffenden Einstellungen sind -p 1024 -n 5.
Nun die Fragen:
1. An alle Delta 1010LT-Besitzer: Wie habt ihr Jack eingestellt?
2. An die Allgemeinheit: Bekomme ich die xruns überhaupt weg?
3. Ich habe auf dem Rechner erst Mandriva installiert (jack war standardmäßig mit dabei), dann ardour. Jack wird über qjackctl konfiguriert (auch standardmäßig dabei). Hätte ich danach noch irgendwelche Konfigurationsdateien bearbeiten oder den Kernel patchen sollen, damit alles glatt läuft? Kann es sein, dass die "onboard"-jack-Version etwas älter ist und deshalb manchmal xruns bringt?
4. Die Delta1010-Software unter Windows hatte einen DMA-Buffer-Regler, der auch Einfluss auf die xrun-Stabilität hat - Envy24control nicht. Kann man das sonst noch irgendwo einstellen?
5. Kann es auch einfach nur daran liegen, dass ich erst gerade eben bemerkt habe, dass ich mich nieals root angemeldet habe? (Ich dachte, das spielt nur bei gepatchten 2.4er Kerneln eine Rolle...)
Es wäre optimal, wenn mir jemand helfen könnte!
Verfasst: Fr Jun 09, 2006 12:36 pm
von corresponder
hallo auch von mir,
ich kann dir zwar momentan nicht bei deinem problem helfen aber ich hab aus versehen deinen benutzeraccount gelöscht, da es heut morgen wieder massig spam user einträge gab und ich deinen fälschlicherweise mitgelöscht hab...
sorry!
leg ihn dir bitte wieder an, ich machs nie mehr!
gruss
c.
Verfasst: Fr Jun 09, 2006 1:48 pm
von nowhiskey
hi, finde doch heraus was für ne jack version du benutzst - jack starten und gleich wieder stopen, dan das message window im qjackctl anclicken und hochscrollen, da findest du welche version gestartet wurde.
ich habe auch beim verschiedenen appis erst einmal als root laufen müssen, bis dann beim nächstem start auch als user alles gut lief - habs nie verstanden warum das so ist, aber bei meanscher neuinstallation ist es warum auch immer nötig.
welcher kernel, 2.6.??
dna eingeschaltet bei der harddisc? (hdparm --help)
eigentlich sollte es keine xruns geben, schon gar nicht alle 5 min.
gruss,
doc
Verfasst: Fr Jun 09, 2006 5:33 pm
von zettberlin
Zunächst mal:
wenn Du einen realtimefähigen Kernel benutzt, verlieren die xruns deutlich an Schrecken - normalerweise laufen Aufnahmen weiter, scghlimmstenfalls gibt es einen winzigen Aussetzer. Davon abgesehen treten xruns bei den von Dir gemachten Einstellungen auf einem flotten Rechner mit RT-Kern nur auf, wenn Du während einer parallelen 8-Kanalaufnahme in einem 32-Spurprojekt mit Firefox, Opera und wineMSIE gleichzeitig im Web surfst
Also: Du solltest einen RT-fähigen Kernel installieren, für MDK gibt es den bei Thac:
http://www.mde.djura.org/index2006.0.html
Wenn der Kern OK bootet, solltest Du auch die nötigen Pakete (jackit, ardour etc) von Thac einspielen und dann jack wie folgt:
jackd -R -t1000 -u -dalsa -dhw:0 -r44100 -p256 -n2 -s -zr
die Einstellung -n5 sollte nicht nötig sein (ich benutze auch eine envy24-Karte und kann keinen positiven Effekt bemerken, wenn ich die Bufferzahl erhöhe...)
Noch was ganz wichtiges:
Nie - Niemals nicht jackd als root laufen lassen !!!!!
Das war eine Methode, mit der man bei 2.4er Kernel an der Hackerei mit den capabilities vorbei kam und auch da wurden die nötigen Progs "nur" setuid-root von einem Normalnutzer gestartet.
veil Glück
Verfasst: Sa Jun 10, 2006 11:54 am
von 404 Not Found
Erstmal danke für eure Antworten!
Nun der aktuelle Stand der Dinge:
- ich habe im Bios die FSB- und RAM-Taktfrequenz mal angeglichen (vorher war FSB 133MHz, RAM 200MHz, jetzt beides 133MHz). Es scheint wirklich etwas geholfen zu haben, die xruns kommen seltener - bei einer 8-Spur-Testaufnahme konnte ich 12,5 Minuten ohne xrun aufnehmen
- aktuell stabilste Jack-Einstellung bei -p2048 - generell habe ich den Eindruck, dass Jack mit größerem Puffer stabiler läuft!?
- ich habe Jack v0.100.1 auf dem Rechner, wie ich herausgefunden habe - ich schätze, dass ich Jack erstmal nicht updaten muss
- das Problem liegt wahrscheinlich nicht an Jack selbst - wenn ein xrun auftritt, stock auch der Playhead in Ardour kurzzeitig. Ich glaube, dass es etwas mit der Festplatte zu tun hat. Frage: Kann es sein, dass die xruns durch eine zu langsame Festplatte (5400rpm) hervorgerufen werden? Wenn ja, dann könnte ich einfach eine NTFS-Partition auf meiner 7400rpm-Platte für Linux neu formatieren, und das Problem wäre erledigt...
Übrigens sind die Auswirkungen der xruns auch ohne RT-Kernel nicht sehr groß - die Aufnahme wird fortgesetzt, die Samples werden dann an der betreffenden Stelle einfach nicht aufgenommen. Allerdings stört mich das wirklich, weil man dann an dieser Stelle natürlich nochmal aufnehmen und schneiden muss - vor allem bei Schlagzeugspuren sehr mühsam.
Wenn es nach dem Herumspielen an den Festplatteneinstellungen immer noch nicht klappt, muss ich wohl doch mal den RT-Kernel installieren.
Verfasst: Sa Jun 10, 2006 1:25 pm
von zettberlin
404 Not Found hat geschrieben:
...8-Spur-Testaufnahme konnte ich 12,5 Minuten ohne xrun aufnehmen
- aktuell stabilste Jack-Einstellung bei -p2048 - generell habe ich den Eindruck, dass Jack mit größerem Puffer stabiler läuft!?
Mit 2048als buffer sollte ardour durchlaufen, bis die Platte voll ist
. Allerdings sind höhere Buffer kein Allheilmittel. Wer mehr als 1024 einstellen muss, um stabil arbeiten zu können, hat ein anderes Problem.
404 Not Found hat geschrieben:
Ich glaube, dass es etwas mit der Festplatte zu tun hat. Frage: Kann es sein, dass die xruns durch eine zu langsame Festplatte (5400rpm) hervorgerufen werden?
Eigentlich nicht, wenn DMA eingeschaltet ist, sollten auch 5400rpm reichen, ich mach´ mal einen Test:
OK 8 Spuren Aufnehmen 18 minuten gleichzeitig - geht
mit 256er Buffer und seq24 steuert specimen und ams als Klangquellen und
4 Spuren vom Mikro. Alles sauber und synchron, allerdings hatte ich ams und den Ausseneingang übersteuert, wodurch alles zu kratzen anfing. Nach Jackreconnect in ARDOUR scheint aber alles 1a zu sein.
Die verwendete Festplatte ist eine handelsübliche Seagate 80 Gig mit 5400, wahrscheinlich sehr ähnlich der, die Du verwendest.
404 Not Found hat geschrieben:
muss ich wohl doch mal den RT-Kernel installieren.
Da bin ich ziemlich sicher
Verfasst: Sa Jun 10, 2006 9:38 pm
von 404 Not Found
So, jetzt hab ich es endgültig verbockt...
<off-topic> Ich habe vorhin eine NTFS-Partition für Linux neu formatiert und als /music eingehängt - das war nötig, weil ich sonst keinen Platz für neue Aufnahmen hatte. Dann wollte ich die alten Aufnahmen dort hin verschieben, vorsichtshalber hatte ich neu gestartet. Nach einer Weile bekomme ich die Meldung, dass die Platte voll ist, was mich etwas irritiert hat. Das System hängt sich fest, ich starte neu, und der X-Server will nicht mehr starten (angeblich würde irgendeine Datei fehlen). Ich wusste auch nicht mehr weiter und habe deshalb Mandriva neu installiert, diesmal wieder von der abgespeckten CD statt der DVD - und jetzt ist der Teil der vorhandenen Aufnahmen, der schon auf /music kopiert worden war, GELÖSCHT! Anscheinend wurde die Partition doch nicht richtig eingehängt, wodurch die ganzen Dateien auf der Root-Partition gelandet sind - und das komplette System geblockt haben. Fazit: Wir müssen das Schlagzeug für 6 Songs nochmal aufnehmen. Allerdings: </off-topic>
Ardour und Jack laufen mit der abgespeckten Mandriva-Version und beim Speichern auf der 7500rpm-Platte richtig stabil, (fast) ohne xruns. Ich konnte 20 Minuten am Stück ohne einen einzigen xrun aufnehmen, allerdings auch nur bei -p2048; bei -p256 gibt es bei mir immer noch xruns im 10-Sekunden-Takt.
Also nun doch der Realtime-Patch, zwecks zumutbarerer Latenzen und Eliminierung der letzten xruns... Ich schätze, dafür brauche ich die Kernel-Sourcen!? Oder ist der Patch in einem Kernel-Source-Paket verbaut? Kann mir da jemand weiterhelfen!? Nicht, dass ich irgendein zig-Megabyte-Paket herunterlade, das ich am Ende gar nicht brauche (habe nur Modem!)
Verfasst: So Jun 11, 2006 12:23 pm
von zettberlin
404 Not Found hat geschrieben:
Also nun doch der Realtime-Patch, zwecks zumutbarerer Latenzen und Eliminierung der letzten xruns... Ich schätze, dafür brauche ich die Kernel-Sourcen!? Oder ist der Patch in einem Kernel-Source-Paket verbaut? Kann mir da jemand weiterhelfen!? Nicht, dass ich irgendein zig-Megabyte-Paket herunterlade, das ich am Ende gar nicht brauche (habe nur Modem!)
Wenn Du bloss einen Modemzugang hast, lohnt es sich tatsächlich, selber zu bauen. Prinzipiell sollte es mit dem Standardkernel-Quellen von der MDK-DVD möglich sein, einen Kern mit Realtime-Prempt zu bauen.
Richtig Patchen mit Ingo Molnars Realtime-patches ist vergleichsweise kompliziert, funktioniert nur mit den Vanillaquellen von Kernel.org und bringt nicht sooo viel mehr, als ein Distrokern mit eingeschalteter REALTIME_PREEMPT.
Guck´ mal im Mandriva-forum, da gibt es bestimmt jemanden, der Dir mit den Details des Vorgangs bei MDK helfen kann:
http://mandrivauser.de/
Verfasst: So Jun 11, 2006 10:18 pm
von 404 Not Found
Ich habe heute was ganz böses gemacht: Ich habe Jack und ardour als root laufen lassen und dabei Realtime aktiviert. Ergebnis: Es war erstmals wirklich flüssiges und fehlerfreies Arbeiten möglich, auch wenn mich die Community dafür jetzt steinigen, teeren und federn wird.
Frage: Ist das sehr schlimm, oder darf ich das als Dauerlösung verwenden? Ich würde dann wahrscheinlich noch eine Linux-Version auf dem Rechner installieren, neben meiner "kleinen" zum Aufnehmen noch eine "große" für normale Benutzung.
Ich muss zumindest die gesamte nächste Woche noch so arbeiten, weil ich wie gesagt mitten in den Aufnahmen stecke und die benötigten Mikrofone nur ausgeliehen sind, außerdem steht mein Linux-Rechner gerade 15km von der Heimat entfernt.
Übrigens vermute ich, dass auf der Mandriva (Free-)DVD gar keine Kernel-Quellen mit drauf sind!? Deshalb die Frage: Kann man bei Thac fertig gepatchte Kernelquellen runterladen, die dann nur noch kompiliert werden müssen? Wäre nämlich am einfachsten, wenn ich sowieso die kompletten Sourcen runterladen müsste. Da kann ich auch mal den von-1:00-bis-9:00-für-12-Cent-die-Stunde-Tarif anwerfen und die Quellen über Nacht laden lassen oder die DSL-Benutzer in meinem Bekanntenkreis fragen.
EDIT: Ich habe nochmal darüber nachgedacht. Du sagtest, dass das Ausführen von jackd als root in 2.4er-Kerneln das ganze Capability-Zeug umgangen hat. Ich habe allerdings einen 2.6.12er Kernel (2.6.12-12mdk, wenn das irgendwas genaueres zu sagen hat), trotzdem habe ich (nur) als root Realtime-Funktionen, als Normalbenutzer nicht - quasi wie bei den älteren Kerneln. Kann es sein, dass im Mandriva-Kernel die Realtime-Funktionen standardmäßig aktiviert sind? Oder gibt es sonst irgendeine Erklärung dafür?
Verfasst: So Jun 11, 2006 11:20 pm
von linuxchaos
404 Not Found hat geschrieben:Ich habe heute was ganz böses gemacht: Ich habe Jack und ardour als root laufen lassen ...
...darf ich das als Dauerlösung verwenden?
nein - das ist verboten!
sollte die welt aber für eine woche nicht untergehen lassen
wichtig ist, dass du damit nicht durcheinander kommst und irgendwann beginnst mit root zu surfen oder sowas in der richtung. aber ifür eine woche kann man sich ja auch mal zusammenreissen...
und daran denken, dass deine neu erzeugten dateien jetzt root gehören - also nicht wundern, wenn du später als user diese aufnahmen erstmal nicht öffnen darfst ...
grüsse l.chaos
Verfasst: Mo Jun 12, 2006 8:49 am
von zettberlin
404 Not Found hat geschrieben:Ich habe heute was ganz böses gemacht: Ich habe Jack und ardour als root laufen lassen und dabei Realtime aktiviert. Ergebnis: Es war erstmals wirklich flüssiges und fehlerfreies Arbeiten möglich, auch wenn mich die Community dafür jetzt steinigen, teeren und federn wird.
Frage: Ist das sehr schlimm, oder darf ich das als Dauerlösung verwenden?
Weh über Euch auf Land und Meer ! Das Weltende naht!!
Das das ein ganz ganz dreckiger Trick ist, sollte nicht heissen, das es nicht funktionieren kann
Root hat Zugriff auf die Realtimeclock des Systems und auch sonst auf alles, was da ist
das heist auch: ein fehlerhaftes LADSPA-Plugin und Ardour hängt Dir das ganze System weg, apropos "weg" - die jeweilige Aufnahme ist dann auch erst mal im Eimer....
Das kann Dir zwar mit einer sauberen Lösung auch passieren, die Wahrscheinlichkeit ist aber geringer. Und, was mich wirklich nerven würde: alle angelegten Dateien gehören root, wenn Du mal was löschen willst, musst Du wieder root werden etc..
404 Not Found hat geschrieben:
Übrigens vermute ich, dass auf der Mandriva (Free-)DVD gar keine Kernel-Quellen mit drauf sind!? Deshalb die Frage: Kann man bei Thac fertig gepatchte Kernelquellen runterladen, die dann nur noch kompiliert werden müssen? Wäre nämlich am einfachsten, wenn ich sowieso die kompletten Sourcen runterladen müsste. Da kann ich auch mal den von-1:00-bis-9:00-für-12-Cent-die-Stunde-Tarif anwerfen und die Quellen über Nacht laden lassen oder die DSL-Benutzer in meinem Bekanntenkreis fragen.
Wenn Du thac verwenden willst, brauchst Du nicht selber zu patchen. Du musst ca. 20 - 50 megs (je nach dem, ob Du nur den Kern und jackit oder auch ein paar Anwendungen von thatc haben willst...) an vorkompilierter Software installieren und das sollte es gewesen sein.
404 Not Found hat geschrieben:
EDIT: Ich habe nochmal darüber nachgedacht. Du sagtest, dass das Ausführen von jackd als root in 2.4er-Kerneln das ganze Capability-Zeug umgangen hat. Ich habe allerdings einen 2.6.12er Kernel (2.6.12-12mdk, wenn das irgendwas genaueres zu sagen hat), trotzdem habe ich (nur) als root Realtime-Funktionen, als Normalbenutzer nicht - quasi wie bei den älteren Kerneln. Kann es sein, dass im Mandriva-Kernel die Realtime-Funktionen standardmäßig aktiviert sind? Oder gibt es sonst irgendeine Erklärung dafür?
Nein, der 2.6 besitzt an sich einige Mechanismen, die "Echtzeit"-Anwendungen erlauben aber die müssen beim Kompilieren eingeschaltet werden (was bei MDK nicht der Fall ist). Für root läuft jackd erst mal besser, weil für root alles besser läuft. Das Problem dabei: Fehler in Anwendungen können viel massivere Folgen haben (siehe oben). Und vor allem:
alle Soundanwendungen, die jackd nutzen sollen, müssen vom gleichen Nutzer gestartet sein - irgendwann laufen 2 Dutzend teilweise experimentelle Programme als root - Kampf der Titanen,
Also, ich empfehle dringend die Variante Thac....[/i]
Verfasst: Mo Jun 12, 2006 11:58 am
von 404 Not Found
Na dann ist ja alles klar.
Für diese Woche kann nochmal die root-Lösung herhalten, weil ich wirklich NUR aufnehme, d.h. ich brauche nur jack und ardour und eventuell mal Envy24control. Plugins kommen dann erst nächste Woche dazu, wenn der Rechner wieder in heimatlichen Gefilden steht und ich den Realtime-Kernel runterladen kann.
Nochmal herzlichen Dank an alle!
Muss dann mal los, Bass und Gitarre aufnehmen...
Verfasst: Mo Jun 12, 2006 12:56 pm
von corresponder
geiler smilie!
gruss
c.
Verfasst: Mo Jun 12, 2006 2:20 pm
von nowhiskey
404 Not Found hat geschrieben:Na dann ist ja alles klar.
Für diese Woche kann nochmal die root-Lösung herhalten, weil ich wirklich NUR aufnehme, d.h. ich brauche nur jack und ardour und eventuell mal Envy24control. Plugins kommen dann erst nächste Woche dazu, wenn der Rechner wieder in heimatlichen Gefilden steht und ich den Realtime-Kernel runterladen kann.
Nochmal herzlichen Dank an alle!
... ja aber nächste woche wird die session als user überhaupt nicht zu starten sein, das ist hoffentlich klar?!
ich dachte eher, nur einmal als root starten, aber garnicht damit arbeiten, sondern dan wieder als user benutzen, hat auf manschen appis bei meinem system geholfen, es war sogar notwendig einmal als root zu starten, dann konnte ich als user starten und arbeiten.
was für ein mechanismus ist den bei dir am laufen, wohl kein lsm, aber hast du dich schon mal über pam-modul informiert?
(bin echt ein anfänger und habe ne mandriva noch nie laufen gesehen).
besitze auch ein paar sessions, die als root laufen, das ist so, weil damals ardour als user kaum shortcuts kannte (auf meinem system).
sind aber alle schon "abgehackt".
also realtime-kernel alleine reicht nicht aus, damit du als user realtime nutzen kannst.
na viel glück undn gruss,
doc
Verfasst: Mo Jun 12, 2006 2:55 pm
von zettberlin
nowhiskey hat geschrieben:
also realtime-kernel alleine reicht nicht aus, damit du als user realtime nutzen kannst.
Bei mir schon: Rekord ist 0.6 ms Latenz stabil mit ams und seq24
Und zwar als ganz normaler Nutzer mit dem Standardkernel von Ubuntu Dapper und OHNE lsm und PAM-Hacks.
Weiss nicht, ob das in MDK auch so locker geht - jedenfalls reicht prinzipiell die Realtime-Preemption des Standardkernels für gutes Arbeiten mit jackd...