Hallo Simon,Daihedz hat geschrieben:In Deinem Beispiel wandelst Du mit einer ersten Instanz von SOX von 16Bit nach 64Bit, und dann mit einer gepipten zweiten Instanz von SOX von 44.1kHz nach 192kHz:Frage nun: Warum machst Du die gesamte Wandlung nicht gleich in einem Rutsch, z.B. so:frankl hat geschrieben: ...
sox -t raw -r 44100 -c 2 -e signed -b 16 - -t raw -e floating-point -b 64 - | \
sox -t raw -c2 -r 44100 -e floating-point -b 64 - -t raw -e floating-point -b 64 - vol 0.4 rate -v -I 192000 | \
...
sox -t raw -e signed -b 16 -r 44100 -c2 - -t raw -e floating-point -b 64 - vol 0.4 rate -v -I 192000
Das sollte eigentlich mit SOX doch möglich sein? Siehst Du vielleicht prinzipielle Vorteile bei Deiner gepipten Zwei-Sox-Einzelfunktions-Lösung gegenüber einer Ein-Sox-Doppelfunktions-Lösung? Es leuchtet mir schon ein, dass mit Deiner Lösung sichergestellt ist, dass auf alle Fälle 64-Bit-Daten zum Upsampling kommen, ditto zur Volumenregelung. Aber vielleicht ist diese Intelligenz in SOX bereits eingebaut? Weisst Du etwas davon?
sorry, ich bin im Moment auf Reisen und habe nur gelegentlich Möglichkeit und Zeit im Forum zu lesen.
Der Doppelaufruf von sox in diesem Beispiel liegt daran, dass der vol-Filter vor der Konvertierung durchgeführt wird. Probier mal folgendes:
Code: Alles auswählen
sox orig.flac -t raw -e floating-point -b 64 - vol 0.000001 | sox -t raw -e floating-point -c 2 -r 44100 -b 64 - -e signed -b 16 v1.wav vol 1000000.0
sox orig.flac -t raw -e floating-point -b 64 - | sox -t raw -e floating-point -c 2 -r 44100 -b 64 - -t raw - vol 0.000001 | sox -t raw -e floating-point -c 2 -r 44100 -b 64 - -e signed -b 16 v2.wav vol 1000000.0
Bisher habe ich nur Stereo-Signale verarbeitet. Deswegen kann ich aus dem Stegreif nicht sagen, ob PLAYHRT das in der jetzigen Form kann, oder eine Modifikation nötig ist. Wir können das per PN klären, wenn ich wieder zuhause bin (in 2-3 Wochen) und dann hier berichten.Daihedz hat geschrieben: Frage: Ist PLAYHRT und BUFHRT von der Theorie/Programmierung her einwandfrei dergestalt verwendbar, z.B. in einem 4-Weg-Stereo-Frequenzweichen-Rechner:
SOX (2-Kanal) | BUFHRT (2-Kanal) | BRUTEFIR (2-Kanal-in/8-Kanal-our)| PLAYHRT (8-Kanal) -> HW
Viele Grüße,
Frank