Tinitus hat geschrieben:
wie im anderen Thread gerade fest gestellt käme ich eigentlich auch ohne mpd aus. Von deinen Programmen gefällt mir:
Player script with convolver and other tricks
am besten. Ich würde es ohne RACE (also nur ein Wert für Vol eingeben) und ohne brutfir (keine conf und brutefir Zeile auskommentieren) verwenden. Vol 1 und Vol -1, wären dann maximale Lautstärke und maximale Lautstärke invertiert?
Schön ist, dass das Programm die sample rate der zu spielenden Datei selbst findet. Was muss ich auskommentieren, wenn ich auch nicht upsamplen will?
Hallo Uwe,
ok, Du möchtest das Skript play_upsample_convolve, aber ohne Upsampler, brutefir und RACE. Das erinnert mich an das Kind, das selbstbewusst in der Pizzeria eine "Pizza Tonno, aber ohne Thunfisch und Käse" bestellt.
Wir können vielleicht erstmal per PN das richtige Skript für Dich finden und dann eventuell hier berichten.
Tinitus hat geschrieben:
Habe ich es richtig verstanden, dass die Extrabytespersecond Funktion eine gute Synchonisation des Audiorechners mit dem DAC erlaubt (und dann eine PLL überflüssig machen könnte?).
Nein, dass ist nicht richtig. Eine PLL ist dafür zuständig, beim Abspielen Sample für Sample ein konstantes Timing zu erzeugen. In der Abspiel-Software transportieren wir immer nur Blöcke von Daten, nicht einzelne Samples. Das Programm playhrt --mmap benutzt den hochauflösenden Timer des Rechners, um in sehr regelmäßigen Abständen einen Block von Samples in den Speicher des Hardwaretreibers zu schreiben. (Andere Programme nutzen entweder Interrupts des Rechners, um zu wissen, wann Daten geschrieben werden können oder nutzen "blocking write", überlassen es also dem Betriebssystem, die Daten wirklich zu schreiben, wenn Platz dafür vorhanden ist.) Die Option --extra-bytes-per-second ist zum Feintuning, um dafür zu sorgen, dass immer ungefähr der halbe Hardwarebuffer gefüllt ist. Zu Anfang kann die doppelte --verbose Option angeschaltet werden, über die man Informationen über den jeweils verfügbaren Speicher im Puffer bekommt, um den passenden Wert für --extra-bytes-per-second zu finden.
Tinitus hat geschrieben:
Ansonsten erlaubt es das Programm Dateien aus dem RAM zu spielen, ohne dass die ganze Datei auf einmal ins RAM geladen werden muss.
ist das als Frage gemeint? Ich kopiere (in der Regel ein ganzes Album) die Musik zum Abspielen zuerst ins RAM und hänge dann die Festplatte sogar aus. Wenn man nicht genug Speicher hat, oder nicht erst auf das Kopieren in den Speicher warten will, kann man die Daten mittels writeloop und catloop lesen, wobei man mit der Puffergröße (--file-size) etwas experimentieren kann. Ich fand kleine Puffer eher besser, mit großem Puffer kann man ein unregelmäßiges Lesen aber gut ausgleichen.
Tinitus hat geschrieben:
Die Gretchenfrage für mich als Albumhörer, gibt es eine Möglichkeit mit diesem script mit einmaligen Aufruf ein ganzes Album (mehrere WAV Dateien) an den DAC weiter zu leiten?
Wie sind denn Alben bei Dir abgespeichert? Eine flac-Datei pro Track und alle Tracks eines Albums in einem separaten Verzeichnis? (Vielleicht schreibst Du noch etwas genauer, was Du möchtest per PN, dann kann ich einen Vorschlag machen.)
Tinitus hat geschrieben:
Wie kann ich das Script auf dem Rechner speichern, so dass ich nur noch eingeben muss, wo sich die zu lesenden Dateien (das Album) befinden und es dann gleich los geht?
Die beiden Standardmöglichkeiten unter Linux/UNIX sind: das Skript etwa in /usr/local/bin kopieren, da dieses Verzeichnis meist im Standard-Suchpfad aller Benutzer ist (Deinen kannst Du mit 'echo $PATH' sehen). Oder in ein beliebiges Verzeichnis kopieren und dieses zum eigenen PATH hinzufügen (in der Konfiguration Deiner shell).
Viele Grüße,
Frank