Mischen mit jack
- king-crash
- Beiträge: 722
- Registriert: 08.08.2006 12:07:56
- Lizenz eigener Beiträge: MIT Lizenz
Mischen mit jack
Hallo,
Ich möchte mehrere Soundquellen (Mikrofone und Sounddateien via mpv) in Echtzeit zusammenmischen und auf einen gemeinsamen Kanal geben. Ich habe mir hierzu jack angesehen aber steige nicht ganz durch.
Wie kann ich einen "virtuellen Ausgang" erstellen von dem nachher andere Software lesen kann?
Wie können Audiodateien zwischendrin eingespielt werden?
Grüße
Ich möchte mehrere Soundquellen (Mikrofone und Sounddateien via mpv) in Echtzeit zusammenmischen und auf einen gemeinsamen Kanal geben. Ich habe mir hierzu jack angesehen aber steige nicht ganz durch.
Wie kann ich einen "virtuellen Ausgang" erstellen von dem nachher andere Software lesen kann?
Wie können Audiodateien zwischendrin eingespielt werden?
Grüße
Re: Mischen mit jack
Hier gibt es ein gutes Tutorial zu Jack:
https://www.linuxmintusers.de/index.php ... K-Tutorial
Um mehrere Quellen abzumischen, sind auch mehrer Programme erforderlich, Audacity, Qsynth, Rosegarden und Ardour. Wie die alle zusammen spielen, ist ziemlich komplex. Du mußt im Netz versuchen, entsprechende Tutorials zu finden, um die dann durch zu arbeiten. Da das sehr komplex und nicht einfach ist, ist es auch hier nicht mit ein paar Worten zu umschreiben. Viel Erfolg. Du wirst einige Zeit investieren müssen, denn der Aufbau einer DAW ist nicht trivial.
Gruß ralli
https://www.linuxmintusers.de/index.php ... K-Tutorial
Um mehrere Quellen abzumischen, sind auch mehrer Programme erforderlich, Audacity, Qsynth, Rosegarden und Ardour. Wie die alle zusammen spielen, ist ziemlich komplex. Du mußt im Netz versuchen, entsprechende Tutorials zu finden, um die dann durch zu arbeiten. Da das sehr komplex und nicht einfach ist, ist es auch hier nicht mit ein paar Worten zu umschreiben. Viel Erfolg. Du wirst einige Zeit investieren müssen, denn der Aufbau einer DAW ist nicht trivial.
Gruß ralli
Wer nicht lieben kann, muß hassen. Wer nicht aufbauen kann muß zerstören. Wer keine Brücken baut, muß spalten.
Re: Mischen mit jack
Das geht ziemlich einfach mit ’nem Frontend, wie etwa qjackctl: Quellprogramme starten, Ausgänge mit dem gewünschten Eingang (Audiorecorder oder direkt Ausgabe) verbinden und ab dafür.king-crash hat geschrieben:13.05.2020 20:41:34Ich möchte mehrere Soundquellen (Mikrofone und Sounddateien via mpv) in Echtzeit zusammenmischen und auf einen gemeinsamen Kanal geben.
„Nachher“ impliziert einen zeitlichen Versatz? In dem Fall wäre eine Datei, oder eine Spur in einer DAW, zum Zwischenspeichern die sinnvollste Methode.king-crash hat geschrieben:13.05.2020 20:41:34Wie kann ich einen "virtuellen Ausgang" erstellen von dem nachher andere Software lesen kann?
Zwischen was? Zeitlich? Auf Signalpfade bezogen?king-crash hat geschrieben:13.05.2020 20:41:34Wie können Audiodateien zwischendrin eingespielt werden?
Möglicherweise solltest du aufschreiben, was du eigentlich insgesamt vorhast, statt zusammenhangslose Details in den Raum zu stellen, unter denen sich ohne Kontext jeder etwas anderes vorstellen wird?
-
- Beiträge: 3792
- Registriert: 26.02.2009 14:35:56
Re: Mischen mit jack
Schau dir mal jackeq an - ist ein Mixer mit 4 Eingängen und einem Master- und Monitorausgang. Damit kannst du diverse Quellen zusammenmixen und je Quelle ist sogar noch ein EQ vorhanden. Mit Patchage kannst du dann alles nach Bedarf verbinden. Ist eventuell etwas übersichtlicher wie qjackctl. Da kannst du z. B. auf Kanal 1 Midis abspielen, auf Kanal 2 selber dazu spielen und den Master-Out gibst du dann deinem Aufnahmeprogramm. Ist wie echtes Strippen verbinden.
- king-crash
- Beiträge: 722
- Registriert: 08.08.2006 12:07:56
- Lizenz eigener Beiträge: MIT Lizenz
Re: Mischen mit jack
Vielen Dank schonmal für die Anregungen, an qjackctl habe ich mich schon versucht und konnte aber nur das Mikrofon mit dem Lautsprecher verbinden.
Hier noch zum Verdeutlichen:
Was ich erreichen möchte einen Audiostream aus Mikrofonen und in Echtzeit einspielbaren Sounddateien (jingles, Statusnachrichten) zu erstellen und diesen auf einen Netzwerkstream, eine Audiodatei und einen Mumbleclient zu geben. Um Letzteres zu erreichen habe ich an alsa loopback gedacht, evtl kann die "Aufnahmesoftware" aber auch direkt von jack lesen.
Brauche ich für so ein Setup Fremdsoftware oder kann jack das intern (qjackctl).
Hier noch zum Verdeutlichen:
Was ich erreichen möchte einen Audiostream aus Mikrofonen und in Echtzeit einspielbaren Sounddateien (jingles, Statusnachrichten) zu erstellen und diesen auf einen Netzwerkstream, eine Audiodatei und einen Mumbleclient zu geben. Um Letzteres zu erreichen habe ich an alsa loopback gedacht, evtl kann die "Aufnahmesoftware" aber auch direkt von jack lesen.
Brauche ich für so ein Setup Fremdsoftware oder kann jack das intern (qjackctl).
Re: Mischen mit jack
Falls ich das richtig verstanden habe, würde ich das mit "jack-mixer" durchführen. Damit allfällige alsa-Geräte unter jack auftauchen ist eventuell noch a2jmidid notwendig.
https://community.linuxmint.com/softwar ... jack-mixer
http://manpages.ubuntu.com/manpages/bio ... did.1.html
https://community.linuxmint.com/softwar ... jack-mixer
http://manpages.ubuntu.com/manpages/bio ... did.1.html
Debian 12 Xfce mit rt-Kernel
- king-crash
- Beiträge: 722
- Registriert: 08.08.2006 12:07:56
- Lizenz eigener Beiträge: MIT Lizenz
Re: Mischen mit jack
Besten Dank, jack_mixer bringt mich schon deutlich weiter.
Ich kann Spuren erstellen und Mikrofone und mpv damit via qjackctl verbinden.
So kann mpv eingebuden werden. Es meldet sich bei jack mit dem angegebenen Name "file0", falls es sich um Mehrkanalton handeln sollte (normalerweise nicht) sorgt "--audio-channels=2" für einen stereo mixdown und "--jack-connect=no" verhindert ein direktes verbinden mit dem Systemlautsprecher.
Das Problem, das ich jetzt noch habe ist dass die jack-verbindungen bei jedem Start von mpv fehlen. Kann man in qjackctl da templates anlegen?
Ich kann Spuren erstellen und Mikrofone und mpv damit via qjackctl verbinden.
Code: Alles auswählen
mpv --jack-name=file0 --audio-channels=2 --jack-connect=no filename
Das Problem, das ich jetzt noch habe ist dass die jack-verbindungen bei jedem Start von mpv fehlen. Kann man in qjackctl da templates anlegen?
- king-crash
- Beiträge: 722
- Registriert: 08.08.2006 12:07:56
- Lizenz eigener Beiträge: MIT Lizenz
Re: Mischen mit jack
Ich konnte das Problem auf der Seite von mpv lösen:
Da für Stereo 2 Verbindungen gebraucht werden, wird hier regex gebraucht (https://github.com/mpv-player/mpv/issues/6108).
Nur interessehalber, ist das mit qjackctl auch automatisch bei Erscheinen des neuen Ports möglich?
Code: Alles auswählen
mpv --jack-name=file0 --audio-channels=2 --jack-connect=yes --jack-port="jack_mixer:jingle0 (L|R)" filename
Nur interessehalber, ist das mit qjackctl auch automatisch bei Erscheinen des neuen Ports möglich?
Re: Mischen mit jack
Schön, das Du schon ein wenig weiter gekommen bist. Ich steh auch noch am Anfang, aber Schritt für Schritt komm ich meinen Zielen näher. Am Anfang war mein Ziel, virtuelles Keyboard (VMPK) zu spielen und das auch aufzunehmen.
Und dieses Beispiel demonstrier ich hier mal:
Jack starten
qsynth (Softwaresynthesizer) starten
VMPK (Virtuelles Midi Piano Keyboard) starten
In Jack GUI den Button Verbinden wählen
Reiter ALSA-MIDI wählen
Im linken Fenster 0:VMPK Output wählen
Im rechten Fenster 0:Synth input wählen
Button Verbinden klicken
Jetzt kommt auch schon Sound aus dem virtuellen Keyboard.
Bis hierher kann ich nur mit dem virtuellen Keyboard spielen. Mein Ziel war es aber, das Gespielte auch aufzunehmen. Dafür benötigen wir audacity.
In audacity auf Jack Audio umstellen und daneben auf qsynth. Aufnahmebutton drücken und mit dem VMPK spielen. Wenn die Aufnahme beendet ist, wieder auf system umschalten, sonst funktioniert die Wiedergabe nicht. Wenn das Prinzip verstanden ist, da funktioniert das recht einfach. Wenn ich mehrere Klangquellen aufnehmen und mischen möchte, benötige ich dafür rosegarden und ardour.
Noch einfacher geht es mit Patchage, einfach die verwendeten Komponenten visuell miteinander verbinden - fertig.
Gruß ralli
Und dieses Beispiel demonstrier ich hier mal:
Jack starten
qsynth (Softwaresynthesizer) starten
VMPK (Virtuelles Midi Piano Keyboard) starten
In Jack GUI den Button Verbinden wählen
Reiter ALSA-MIDI wählen
Im linken Fenster 0:VMPK Output wählen
Im rechten Fenster 0:Synth input wählen
Button Verbinden klicken
Jetzt kommt auch schon Sound aus dem virtuellen Keyboard.
Bis hierher kann ich nur mit dem virtuellen Keyboard spielen. Mein Ziel war es aber, das Gespielte auch aufzunehmen. Dafür benötigen wir audacity.
In audacity auf Jack Audio umstellen und daneben auf qsynth. Aufnahmebutton drücken und mit dem VMPK spielen. Wenn die Aufnahme beendet ist, wieder auf system umschalten, sonst funktioniert die Wiedergabe nicht. Wenn das Prinzip verstanden ist, da funktioniert das recht einfach. Wenn ich mehrere Klangquellen aufnehmen und mischen möchte, benötige ich dafür rosegarden und ardour.
Noch einfacher geht es mit Patchage, einfach die verwendeten Komponenten visuell miteinander verbinden - fertig.
Gruß ralli
Wer nicht lieben kann, muß hassen. Wer nicht aufbauen kann muß zerstören. Wer keine Brücken baut, muß spalten.
Re: Mischen mit jack
Und damit die Verbindungen nicht immer, jedes mal von neuem " gesteckt " werden müssen kann Qjackctl diese in eine Datei abspeichern, dass mit zwei Klicks danach geladen werden kann, z.B. in ~/Musik/JacksVerbind/SynthAufnahmen,xml ( Hierbei wichtig, keine Leerzeichen in Pfade und Dateinamen geben, die mögliche Fehler verursachen könnte ). Qjackctl merkt sich aber automatisch Pfad und die letzte geladene Verbindung( xy.xml ).
Wenn man ohne mehrspuriges mischen aufnehmen möchte, nur in stereo genügt auch das Tool " jack_capture " /home/user/capture.wav ( Bestandteil von Jack ) via Terminal ( jack_capture --help gibt mehr Auskunft und es kann auch direkt von der Soundkarte lesen, also ohne zusätzliche Jack Tools ). Mit mehr als 2 Spuren ( Stereo ) habe ich es jedoch noch nicht getestet, ich glaube es sollte auch mehr als nur Stereo möglich sein.
Ein Beispiel, mit meine Creative PCI 4.1 im Bord und kann nur bis 48KHz ( War einfach Mal einen Testkauf ), kann ich nur mit jack_capture aufnehmen, respektive auch mit Audacity, ansonsten ohne Jack keine Aufnahme möglich, habe bereits alles getestet. Überhaupt, auch mit Audacity klappt die Aufnahme nur mit Jack.
Mittlerweile finde ich Jack wirklich sehr einfach und für qualitatives Audio ist Jack nun Mal unabdingbar, bemerkbar wird es mit einer hoch qualitative Soundkarte, die im Minim. zu 192 KHz fähig ist und eine praktisch Null Latenz aufweist.
Mein Vorschlag wegen den Latenz, mögliche Interferenzen Pulse-Audio komplett deinstallieren ( Bin leider kein Komponist oder Musik Macher )
Wenn man ohne mehrspuriges mischen aufnehmen möchte, nur in stereo genügt auch das Tool " jack_capture " /home/user/capture.wav ( Bestandteil von Jack ) via Terminal ( jack_capture --help gibt mehr Auskunft und es kann auch direkt von der Soundkarte lesen, also ohne zusätzliche Jack Tools ). Mit mehr als 2 Spuren ( Stereo ) habe ich es jedoch noch nicht getestet, ich glaube es sollte auch mehr als nur Stereo möglich sein.
Ein Beispiel, mit meine Creative PCI 4.1 im Bord und kann nur bis 48KHz ( War einfach Mal einen Testkauf ), kann ich nur mit jack_capture aufnehmen, respektive auch mit Audacity, ansonsten ohne Jack keine Aufnahme möglich, habe bereits alles getestet. Überhaupt, auch mit Audacity klappt die Aufnahme nur mit Jack.
Mittlerweile finde ich Jack wirklich sehr einfach und für qualitatives Audio ist Jack nun Mal unabdingbar, bemerkbar wird es mit einer hoch qualitative Soundkarte, die im Minim. zu 192 KHz fähig ist und eine praktisch Null Latenz aufweist.
Mein Vorschlag wegen den Latenz, mögliche Interferenzen Pulse-Audio komplett deinstallieren ( Bin leider kein Komponist oder Musik Macher )
Systemd und PulseAudio, hmmm, nein danke.
Re: Mischen mit jack
Das mit der Qualität stimmt so nicht. Jack ist eigentlich nur nötig (und sehr praktisch), wenn man mehrere Audioprogramme miteinander verbinden möchte.
Re: Mischen mit jack
Okay, also anders gesagt, im Sinne von Aufnahmen wollte ich sagen ( Will ich Mal annehmen ), bei der Wiedergabe gibt auch Jack nur das weiter was die Player von den Dateien lesen. Bei der Capture Funktion kann man Bit Tiefe, Sample- und Bitrate bestimmen, bei der Wiedergabe nur die Bit Tiefe und Sample Rate beeinflussen, was nicht unbedingt die Qualität verbessert, da hast Du Recht.
Bei der Aufnahme merkt man das auch an der Dateigrösse, da kann eine wav Datei rasch 300 MB und noch viel mehr betragen.
Systemd und PulseAudio, hmmm, nein danke.
Re: Mischen mit jack
Hallo Revod,Revod hat geschrieben:14.05.2020 19:16:23Mittlerweile finde ich Jack wirklich sehr einfach und für qualitatives Audio ist Jack nun Mal unabdingbar, bemerkbar wird es mit einer hoch qualitative Soundkarte, die im Minim. zu 192 KHz fähig ist und eine praktisch Null Latenz aufweist.
Mein Vorschlag wegen den Latenz, mögliche Interferenzen Pulse-Audio komplett deinstallieren ( Bin leider kein Komponist oder Musik Macher )
gibt es eigentlich noch Soundkarten, die diesem Qualitätsanspruch von 192 KHz nicht gerecht werden? Ich habe vor kurzer Zeit eine
Creative Sound Blaster Audigy FX PCIe-Soundkarte (SBX Pro Studio, 5.1-Surround-Sound, leistungsstarker Kopfhörerverstärker) für 33 € gekauft. Sie hat einen brillianten Klang und natürlich leistet sie die 192 KHz Abtastrate bei (fast) Null Latenz, bei mir < 5 ms. Es muß nicht immer teuer sein. An der Gesammtqualität sind ja immer mehrere Komponenten beteiligt. Auch die Aktivboxen sollten ja eine gute Ausgabequalität haben. Paßt bei mir auch (auch Soundblaster). Beim Anschluß an eine HiFi Anlage stellt sich die Qualitätsfrage wahrscheinlich erst gar nicht.
Ich habe zu Deiner pulseaudio freien Installation noch Fragen, mache aber einen extra Thread dazu auf, um hier nicht zu sehr OT zu werden.
Gruß ralli
Wer nicht lieben kann, muß hassen. Wer nicht aufbauen kann muß zerstören. Wer keine Brücken baut, muß spalten.
Re: Mischen mit jack
In der Patchbay.king-crash hat geschrieben:14.05.2020 15:13:24Das Problem, das ich jetzt noch habe ist dass die jack-verbindungen bei jedem Start von mpv fehlen. Kann man in qjackctl da templates anlegen?
...
Nur interessehalber, ist das mit qjackctl auch automatisch bei Erscheinen des neuen Ports möglich?
Ich kann Dir noch dieses Meter empfehlen, das ist sehr genau.
https://packages.debian.org/buster/jkmeter
Das kannst Du mehrmals überall reinhängen, um zB den Pegel des Mikrofons oder den Stereosummenpegel zu überprüfen.
Ich hab mir da mit openbox ein richtig schönes Setup zusammengebastelt, da kann man ja auch bestimmen, wo jedes Fenster genau platziert wird und so lässt sich alles jederzeit wieder gleich starten.
Re: Mischen mit jack
Hallo ralli
Wegen den Übersteuerungen in den Spitzen Ausschläge empfehle ich Dir die meterbridge auch zu installieren, beinhaltet einen klassischer, analoger VU-Meter von Mono bis hin so viele Kanäle Du willst.
Damit kannst Du sehr gut feststellen ob die DB Einstellung in den Dateien oft übersteuern ( Vereinzelt darf manchmal einen Ausschlag der Nadel sich kurz im roten Bereich befinden, mit 89 DB Lautstärke übersteuert oft und fast permanent )
Meinen Starter Icon für das Startmenü sieht folgend aus,
Ich brauche nur das Stereo in der Zeile " Exec=meterbridge -t vu ppm alsa_pcm:playback_2 " und das playback_2 hinten die Ziffer " 2 " bestimmt die zwei Kanäle für das Stereo, bei drei Spuren sollte playback_3 stehen usw.
Auch das VU-Meter lässt sich mit Qjackctl ganz easy mit jeweiligen Anwendungen verbinden.
Anwendung-xy-Playback-out > Capture-VU-Meter und mit aussagekräftiger Name speichern und schon kann die Show los gehen.
Wegen den Übersteuerungen in den Spitzen Ausschläge empfehle ich Dir die meterbridge auch zu installieren, beinhaltet einen klassischer, analoger VU-Meter von Mono bis hin so viele Kanäle Du willst.
Damit kannst Du sehr gut feststellen ob die DB Einstellung in den Dateien oft übersteuern ( Vereinzelt darf manchmal einen Ausschlag der Nadel sich kurz im roten Bereich befinden, mit 89 DB Lautstärke übersteuert oft und fast permanent )
Meinen Starter Icon für das Startmenü sieht folgend aus,
Code: Alles auswählen
[Desktop Entry]
Encoding=UTF-8
Name=Jack VU Meter
Comment=Two analog VU Meter Jack
Comment[de]=Zwei analog VU Meter Jack
Exec=meterbridge -t vu ppm alsa_pcm:playback_2
Icon=/usr/share/meterbridge/vu-frame-small.png
Terminal=false
Type=Application
StartupNotify=true
Categories=Application;GTK;AudioVideo;Player;Audio;
Auch das VU-Meter lässt sich mit Qjackctl ganz easy mit jeweiligen Anwendungen verbinden.
Anwendung-xy-Playback-out > Capture-VU-Meter und mit aussagekräftiger Name speichern und schon kann die Show los gehen.
Du hast Recht, mit folgendes Befehl listete es mich die codecs werte auf ( Funktioniert nur für Intels Snd-Karten ein anderes Befehl für Soundbalster konnte ich nicht finden ).ralli hat geschrieben:15.05.2020 09:34:33...
Hallo Revod,
gibt es eigentlich noch Soundkarten, die diesem Qualitätsanspruch von 192 KHz nicht gerecht werden? Ich habe vor kurzer Zeit eine
...
Code: Alles auswählen
cat /proc/asound/card0/codec#0
Systemd und PulseAudio, hmmm, nein danke.
Re: Mischen mit jack
Hallo Revod,
danke ich werde das installieren und mir anschauen. Deine Tipps haben mir sehr geholfen.
Gruß ralli
danke ich werde das installieren und mir anschauen. Deine Tipps haben mir sehr geholfen.
Gruß ralli
Wer nicht lieben kann, muß hassen. Wer nicht aufbauen kann muß zerstören. Wer keine Brücken baut, muß spalten.