schrottie
01.04.2014, 17:05
Ich möchte euch hier eine Script vorstellen, das es euch einfacher macht, eine digitale Frequenzweiche inkl. Raumkorrektur durch DRC zu erstellen.
Dazu habe ich das wohl bekannte Script von Fujak geändert und erweitert. Er hat also einen großen Teil der Arbeit schon vor einigen Jahren gemacht.
Das Ergebnis sollen Dateien sein, die in einen Convolver geladen werden können und gleichzeitig das Frequenzband und die Korrekturen für den jeweiligen Kanal enthalten. In diesem Fall sind es 6 Dateien, also alles für ein 3-Wege Stereo-System.
EDIT: Ich sollte vielleicht noch dazu schreiben, dass die Lautsprecher, die gemessen und korrigiert werden sollen, mit einer puren Weiche basierend auf den Files von maXO spielen sollten. Diese werden dann durch die hier erstellten ersetzt bzw. eben um DRC erweitert.
Ich hänge hier die alte Anleitung von Fujak an (ich hoffe, dass das in Ordnung ist). Daraus gehen so viele Wertvolle Infos hervor, dass es schade wäre, sie zu verheimlichen.
Was gemacht werden muss, bevor man das Script ausführen kann:
Das steht in der Anleitung von Fujak in Punkt 2. Allerdings müssen an den Stellen an denen er 3.0.1 geschrieben hat die Ordner entsprechend der aktuellen DRC Version in 3.2.1 geändert werden. Außederm muss maXO in das DRC-Verzeichnis kopiert werden.
Hier also das Script, das als .cmd abgespeichert werden muss.
Vielleicht hat ja jemand Lust, es auszuprobieren und Rückmeldung zu geben.
@echo off
Set maXO=C:\DRC-3.2.1\DRC HTPC\maXO\
Set maXOFilter=C:\DRC-3.2.1\DRC HTPC\maXO\MyFirstProject\
Set glsweep=C:\DRC-3.2.1\DRC HTPC\
Set rec_imp=C:\DRC-3.2.1\DRC HTPC\
Set lsconv=C:\DRC-3.2.1\DRC HTPC\
Set drc=C:\DRC-3.2.1\DRC HTPC\
Set sox=C:\DRC-3.2.1\DRC HTPC\
Set Convolver-Files=C:\DRC-3.2.1\DRC HTPC\Convolver-Files\
echo ************* 3-Wege-Convolver Script *************
echo * Dieses Script wurde von schrottie erstellt. *
echo * Es handelt sich um die Version 20140403. *
echo * Es erzeugt Korrekturdateien fuer Convolver, *
echo * die Weiche und (!) Raumkorrektur enthalten. *
echo * Es basiert zum Teil auf einem Script von Fujak, *
echo * dessen Arbeit hiermit gewuerdigt sei. *
echo ************************************************** *
echo.
echo.
echo Zwischendurch wird es notwendig sein,
echo vor jedem Schritt eine Taste zu druecken, bevor es weiter geht.
echo Die erfahrenen Benutzer mag das nerven,
echo den Unerfahrenen soll es helfen, zu verstehen,
echo was hier passiert.
echo.
echo Nach dieser kurzen Einfuehrung kann es losgehen.
pause
echo.
cd %maXO%
echo Im ersten Schritt wird die Frequenzweiche erstellt.
echo In dieser Version des Scriptes wird davon ausgegangen,
echo dass ein 3-Wege-Lautsprecher verwendet werden soll.
echo Entsprechend muessen in maXO, das nach dem naechsten
echo Tastendruck gestartet wird, die Trennfrequenzen fuer
echo Tief-, Mittel-, und Hochtoener angegeben werden. In der
echo Folge werden 6 Dateien erstellt, die z.B. "XOLowR44.pcm"
echo fuer den rechten Tieftoener und "XOHighL44.pcm" fuer den
echo linken Hochtoener heissen.
echo Es ist wichtig(!), dass im Feld "Precision" 32-bit
echo ausgewaehlt wird. Sonst funktioniert der ganze folgende
echo Kram nicht, weil keine PCM-Dateien erzeugt werden...
pause
echo.
maXO.exe
echo.
cd %glsweep%
echo Der naechste Schritt erzeugt die Sweeps, die genutzt werden,
echo um die Eigenschaften des Raumes und darauf basierend,
echo die Korrekturdateien durch DRC zu erstellen.
pause
echo.
glsweep 44100 1.0 10 21000 45 2 0.05 0.005 sweep.pcm inverse.pcm
echo.
cd %rec_imp%
echo Im folgenden Schritt werden die Sweeps abgespielt und aufgenommen.
echo Dazu muss das uebliche Messequipment bereit und eingerichtet sein.
echo Der Pegel sollte dabei durchaus hoch sein. Aber Achtung(!):
echo Nicht die Lautsprecher zerstoeren!
echo Begonnen wird mit dem linken Kanal.
pause
echo.
rec_imp.exe ImpulseResponse_L.pcm 44100 10 21000 45 0:0 0:0
echo.
echo Jetzt der rechte Kanal.
pause
echo.
rec_imp.exe ImpulseResponse_R.pcm 44100 10 21000 45 1:0 0:0
echo.
cd %lsconv%
echo Fuer den folgenden Schritt zitiere ich Fujak:
echo "Um die Qualitaet der Aufnahme zu kontrollieren,
echo kommt nun der naechste Programm-Aufruf von lsconv zum Einsatz,
echo dessen einzige Funktion in diesem Skript darin besteht,
echo den aufgenommenen echo Sweep-File in eine Datei zu schreiben,
echo um diese in einem Wave-Editor (z.B. Audacity) sichtbar zu machen."
pause
lsconv.exe sweep.pcm ImpulseResponse_L.pcm recordedsweep_L.pcm
lsconv.exe sweep.pcm ImpulseResponse_R.pcm recordedsweep_R.pcm
echo.
cd %drc%
echo Die Vorbereitungen sind damit erst einmal abgeschlossen.
echo Im naechsten Schritt wird DRC ausgefuehrt. Dieses Script geht davon aus,
echo dass die Konfigurationen in "Conf_normal-44.1_L.drc" und
echo "Conf_normal-44.1_R.drc" vewendet werden sollen.
echo Waehrend DRC laeuft wird in diesem Fenster eine Menge passieren.
echo Das zu verstehen, ist nicht erforderlich ;-)
pause
echo.
drc Conf_normal-44.1_L.drc
drc Conf_normal-44.1_R.drc
echo.
cd %maXOFilter%
move /y XOLowL44.pcm "%lsconv%"
move /y XOMidL44.pcm "%lsconv%"
move /y XOHighL44.pcm "%lsconv%"
move /y XOLowR44.pcm "%lsconv%"
move /y XOMidR44.pcm "%lsconv%"
move /y XOHighR44.pcm "%lsconv%"
cd %lsconv%
echo Damit haben wir die Raumkorrektur erstellt. Als naechstes soll diese
echo in die Frequenzweichen-Dateien eingefuegt werden.
pause
echo.
lsconv.exe DRC_normal_L.pcm XOLowL44.pcm XOLowL44_DRC.pcm
lsconv.exe DRC_normal_L.pcm XOMidL44.pcm XOMidL44_DRC.pcm
lsconv.exe DRC_normal_L.pcm XOHighL44.pcm XOHighLR44_DRC.pcm
lsconv.exe DRC_normal_R.pcm XOLowR44.pcm XOLowR44_DRC.pcm
lsconv.exe DRC_normal_R.pcm XOMidR44.pcm XOMidR44_DRC.pcm
lsconv.exe DRC_normal_R.pcm XOHighR44.pcm XOHighR44_DRC.pcm
echo.
cd %sox%
echo Der finale Schritt erzeugt aus den eben erstellten PCM-Dateien WAVs.
echo Das Ergebnis werden echo 6 Dateien sein,
echo mit denen dann letztendlich der Convolver gefuettert
echo werden kann. Eine pro Kanal. Jede enthaelt dann sowohl
echo die Weiche, als auch die Raumkorrektur. Diese Dateien heissen z.B.
echo "XOLowL44_DRC.wav" fuer den linken Tieftoener oder ""XOMidR44_DRC.wav
echo fuer den rechten Mitteltoener.
pause
echo.
sox -t raw -r 44100 -c1 -f4 XOLowL44_DRC.pcm -t wav -c 1 -s2 XOLowL44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOMidL44_DRC.pcm -t wav -c 1 -s2 XOMidL44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOHighL44_DRC.pcm -t wav -c 1 -s2 XOHighL44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOLowR44_DRC.pcm -t wav -c 1 -s2 XOLowR44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOMidR44_DRC.pcm -t wav -c 1 -s2 XOMidR44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOHighR44_DRC.pcm -t wav -c 1 -s2 XOHighR44_DRC.wav
move /y XOLowL44_DRC.wav "%Convolver-Files%"
move /y XOMidL44_DRC.wav "%Convolver-Files%"
move /y XOHighL44_DRC.wav "%Convolver-Files%"
move /y XOLowR44_DRC.wav "%Convolver-Files%"
move /y XOMidR44_DRC.wav "%Convolver-Files%"
move /y XOHighR44_DRC.wav "%Convolver-Files%"
echo.
echo Damit ist das Script am Ende und die Dateien koennen eingesetzt werden.
echo Nach dem letzten Tastendruck oeffnet sich der Ordner, der die Files enthaelt
echo und das Script schliesst sich.
echo Viel Spass mit der neuen DRC-Weiche!
pause
explorer.exe %Convolver-Files%Diese Dateien können dann z.B. im VST-Convolver genutzt werden.
Dazu ist ein Text-File nötig, das dem Convolver sagt, was er machen soll. Bei mir sieht das so aus:
44100 2 6 0
0 0
0 0 0 0 0 0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOLowL44_DRC.wav
0
0.0
0.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOLowR44_DRC.wav
0
1.0
1.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOMidL44_DRC.wav
0
0.0
2.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOMidR44_DRC.wav
0
1.0
3.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOHighL44_DRC.wav
0
0.0
4.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOHighR44_DRC.wav
0
1.0
5.0Achtung, bei mir liegt der DRC Ordner in "C:\", nicht in "C:\Programme"!
Den Inhalt oben sollte man in einer .txt Datei speichern und diese kann man dann dem Convolver als Config mitgeben.
Der Aufbau der Datei wird hier erklärt:
http://convolver.sourceforge.net/config.html
Das Ergebnis sieht dann in Audiomulch z.B. so aus:
http://www.diy-hifi-forum.eu/forum/showpost.php?p=114364&postcount=650
Diese Konfiguration kann aber auch z.B. in Foobar oder anderen VST-fähigen Programmen genutzt werden.
Dazu habe ich das wohl bekannte Script von Fujak geändert und erweitert. Er hat also einen großen Teil der Arbeit schon vor einigen Jahren gemacht.
Das Ergebnis sollen Dateien sein, die in einen Convolver geladen werden können und gleichzeitig das Frequenzband und die Korrekturen für den jeweiligen Kanal enthalten. In diesem Fall sind es 6 Dateien, also alles für ein 3-Wege Stereo-System.
EDIT: Ich sollte vielleicht noch dazu schreiben, dass die Lautsprecher, die gemessen und korrigiert werden sollen, mit einer puren Weiche basierend auf den Files von maXO spielen sollten. Diese werden dann durch die hier erstellten ersetzt bzw. eben um DRC erweitert.
Ich hänge hier die alte Anleitung von Fujak an (ich hoffe, dass das in Ordnung ist). Daraus gehen so viele Wertvolle Infos hervor, dass es schade wäre, sie zu verheimlichen.
Was gemacht werden muss, bevor man das Script ausführen kann:
Das steht in der Anleitung von Fujak in Punkt 2. Allerdings müssen an den Stellen an denen er 3.0.1 geschrieben hat die Ordner entsprechend der aktuellen DRC Version in 3.2.1 geändert werden. Außederm muss maXO in das DRC-Verzeichnis kopiert werden.
Hier also das Script, das als .cmd abgespeichert werden muss.
Vielleicht hat ja jemand Lust, es auszuprobieren und Rückmeldung zu geben.
@echo off
Set maXO=C:\DRC-3.2.1\DRC HTPC\maXO\
Set maXOFilter=C:\DRC-3.2.1\DRC HTPC\maXO\MyFirstProject\
Set glsweep=C:\DRC-3.2.1\DRC HTPC\
Set rec_imp=C:\DRC-3.2.1\DRC HTPC\
Set lsconv=C:\DRC-3.2.1\DRC HTPC\
Set drc=C:\DRC-3.2.1\DRC HTPC\
Set sox=C:\DRC-3.2.1\DRC HTPC\
Set Convolver-Files=C:\DRC-3.2.1\DRC HTPC\Convolver-Files\
echo ************* 3-Wege-Convolver Script *************
echo * Dieses Script wurde von schrottie erstellt. *
echo * Es handelt sich um die Version 20140403. *
echo * Es erzeugt Korrekturdateien fuer Convolver, *
echo * die Weiche und (!) Raumkorrektur enthalten. *
echo * Es basiert zum Teil auf einem Script von Fujak, *
echo * dessen Arbeit hiermit gewuerdigt sei. *
echo ************************************************** *
echo.
echo.
echo Zwischendurch wird es notwendig sein,
echo vor jedem Schritt eine Taste zu druecken, bevor es weiter geht.
echo Die erfahrenen Benutzer mag das nerven,
echo den Unerfahrenen soll es helfen, zu verstehen,
echo was hier passiert.
echo.
echo Nach dieser kurzen Einfuehrung kann es losgehen.
pause
echo.
cd %maXO%
echo Im ersten Schritt wird die Frequenzweiche erstellt.
echo In dieser Version des Scriptes wird davon ausgegangen,
echo dass ein 3-Wege-Lautsprecher verwendet werden soll.
echo Entsprechend muessen in maXO, das nach dem naechsten
echo Tastendruck gestartet wird, die Trennfrequenzen fuer
echo Tief-, Mittel-, und Hochtoener angegeben werden. In der
echo Folge werden 6 Dateien erstellt, die z.B. "XOLowR44.pcm"
echo fuer den rechten Tieftoener und "XOHighL44.pcm" fuer den
echo linken Hochtoener heissen.
echo Es ist wichtig(!), dass im Feld "Precision" 32-bit
echo ausgewaehlt wird. Sonst funktioniert der ganze folgende
echo Kram nicht, weil keine PCM-Dateien erzeugt werden...
pause
echo.
maXO.exe
echo.
cd %glsweep%
echo Der naechste Schritt erzeugt die Sweeps, die genutzt werden,
echo um die Eigenschaften des Raumes und darauf basierend,
echo die Korrekturdateien durch DRC zu erstellen.
pause
echo.
glsweep 44100 1.0 10 21000 45 2 0.05 0.005 sweep.pcm inverse.pcm
echo.
cd %rec_imp%
echo Im folgenden Schritt werden die Sweeps abgespielt und aufgenommen.
echo Dazu muss das uebliche Messequipment bereit und eingerichtet sein.
echo Der Pegel sollte dabei durchaus hoch sein. Aber Achtung(!):
echo Nicht die Lautsprecher zerstoeren!
echo Begonnen wird mit dem linken Kanal.
pause
echo.
rec_imp.exe ImpulseResponse_L.pcm 44100 10 21000 45 0:0 0:0
echo.
echo Jetzt der rechte Kanal.
pause
echo.
rec_imp.exe ImpulseResponse_R.pcm 44100 10 21000 45 1:0 0:0
echo.
cd %lsconv%
echo Fuer den folgenden Schritt zitiere ich Fujak:
echo "Um die Qualitaet der Aufnahme zu kontrollieren,
echo kommt nun der naechste Programm-Aufruf von lsconv zum Einsatz,
echo dessen einzige Funktion in diesem Skript darin besteht,
echo den aufgenommenen echo Sweep-File in eine Datei zu schreiben,
echo um diese in einem Wave-Editor (z.B. Audacity) sichtbar zu machen."
pause
lsconv.exe sweep.pcm ImpulseResponse_L.pcm recordedsweep_L.pcm
lsconv.exe sweep.pcm ImpulseResponse_R.pcm recordedsweep_R.pcm
echo.
cd %drc%
echo Die Vorbereitungen sind damit erst einmal abgeschlossen.
echo Im naechsten Schritt wird DRC ausgefuehrt. Dieses Script geht davon aus,
echo dass die Konfigurationen in "Conf_normal-44.1_L.drc" und
echo "Conf_normal-44.1_R.drc" vewendet werden sollen.
echo Waehrend DRC laeuft wird in diesem Fenster eine Menge passieren.
echo Das zu verstehen, ist nicht erforderlich ;-)
pause
echo.
drc Conf_normal-44.1_L.drc
drc Conf_normal-44.1_R.drc
echo.
cd %maXOFilter%
move /y XOLowL44.pcm "%lsconv%"
move /y XOMidL44.pcm "%lsconv%"
move /y XOHighL44.pcm "%lsconv%"
move /y XOLowR44.pcm "%lsconv%"
move /y XOMidR44.pcm "%lsconv%"
move /y XOHighR44.pcm "%lsconv%"
cd %lsconv%
echo Damit haben wir die Raumkorrektur erstellt. Als naechstes soll diese
echo in die Frequenzweichen-Dateien eingefuegt werden.
pause
echo.
lsconv.exe DRC_normal_L.pcm XOLowL44.pcm XOLowL44_DRC.pcm
lsconv.exe DRC_normal_L.pcm XOMidL44.pcm XOMidL44_DRC.pcm
lsconv.exe DRC_normal_L.pcm XOHighL44.pcm XOHighLR44_DRC.pcm
lsconv.exe DRC_normal_R.pcm XOLowR44.pcm XOLowR44_DRC.pcm
lsconv.exe DRC_normal_R.pcm XOMidR44.pcm XOMidR44_DRC.pcm
lsconv.exe DRC_normal_R.pcm XOHighR44.pcm XOHighR44_DRC.pcm
echo.
cd %sox%
echo Der finale Schritt erzeugt aus den eben erstellten PCM-Dateien WAVs.
echo Das Ergebnis werden echo 6 Dateien sein,
echo mit denen dann letztendlich der Convolver gefuettert
echo werden kann. Eine pro Kanal. Jede enthaelt dann sowohl
echo die Weiche, als auch die Raumkorrektur. Diese Dateien heissen z.B.
echo "XOLowL44_DRC.wav" fuer den linken Tieftoener oder ""XOMidR44_DRC.wav
echo fuer den rechten Mitteltoener.
pause
echo.
sox -t raw -r 44100 -c1 -f4 XOLowL44_DRC.pcm -t wav -c 1 -s2 XOLowL44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOMidL44_DRC.pcm -t wav -c 1 -s2 XOMidL44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOHighL44_DRC.pcm -t wav -c 1 -s2 XOHighL44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOLowR44_DRC.pcm -t wav -c 1 -s2 XOLowR44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOMidR44_DRC.pcm -t wav -c 1 -s2 XOMidR44_DRC.wav
sox -t raw -r 44100 -c1 -f4 XOHighR44_DRC.pcm -t wav -c 1 -s2 XOHighR44_DRC.wav
move /y XOLowL44_DRC.wav "%Convolver-Files%"
move /y XOMidL44_DRC.wav "%Convolver-Files%"
move /y XOHighL44_DRC.wav "%Convolver-Files%"
move /y XOLowR44_DRC.wav "%Convolver-Files%"
move /y XOMidR44_DRC.wav "%Convolver-Files%"
move /y XOHighR44_DRC.wav "%Convolver-Files%"
echo.
echo Damit ist das Script am Ende und die Dateien koennen eingesetzt werden.
echo Nach dem letzten Tastendruck oeffnet sich der Ordner, der die Files enthaelt
echo und das Script schliesst sich.
echo Viel Spass mit der neuen DRC-Weiche!
pause
explorer.exe %Convolver-Files%Diese Dateien können dann z.B. im VST-Convolver genutzt werden.
Dazu ist ein Text-File nötig, das dem Convolver sagt, was er machen soll. Bei mir sieht das so aus:
44100 2 6 0
0 0
0 0 0 0 0 0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOLowL44_DRC.wav
0
0.0
0.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOLowR44_DRC.wav
0
1.0
1.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOMidL44_DRC.wav
0
0.0
2.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOMidR44_DRC.wav
0
1.0
3.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOHighL44_DRC.wav
0
0.0
4.0
C:\drc-3.2.1\DRC HTPC\Convolver-Files\XOHighR44_DRC.wav
0
1.0
5.0Achtung, bei mir liegt der DRC Ordner in "C:\", nicht in "C:\Programme"!
Den Inhalt oben sollte man in einer .txt Datei speichern und diese kann man dann dem Convolver als Config mitgeben.
Der Aufbau der Datei wird hier erklärt:
http://convolver.sourceforge.net/config.html
Das Ergebnis sieht dann in Audiomulch z.B. so aus:
http://www.diy-hifi-forum.eu/forum/showpost.php?p=114364&postcount=650
Diese Konfiguration kann aber auch z.B. in Foobar oder anderen VST-fähigen Programmen genutzt werden.