Mischen mit jack

Sound, Digitalkameras, TV+Video und Spiele.
Antworten
Benutzeravatar
king-crash
Beiträge: 722
Registriert: 08.08.2006 12:07:56
Lizenz eigener Beiträge: MIT Lizenz

Mischen mit jack

Beitrag von king-crash » 13.05.2020 20:41:34

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

Benutzeravatar
ralli
Beiträge: 3919
Registriert: 02.03.2008 08:03:02

Re: Mischen mit jack

Beitrag von ralli » 14.05.2020 07:24:12

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
Wer nicht lieben kann, muß hassen. Wer nicht aufbauen kann muß zerstören. Wer keine Brücken baut, muß spalten.

DeletedUserReAsG

Re: Mischen mit jack

Beitrag von DeletedUserReAsG » 14.05.2020 07:33:08

king-crash hat geschrieben: ↑ zum Beitrag ↑
13.05.2020 20:41:34
Ich möchte mehrere Soundquellen (Mikrofone und Sounddateien via mpv) in Echtzeit zusammenmischen und auf einen gemeinsamen Kanal geben.
Das geht ziemlich einfach mit ’nem Frontend, wie etwa Debianqjackctl: Quellprogramme starten, Ausgänge mit dem gewünschten Eingang (Audiorecorder oder direkt Ausgabe) verbinden und ab dafür.
king-crash hat geschrieben: ↑ zum Beitrag ↑
13.05.2020 20:41:34
Wie kann ich einen "virtuellen Ausgang" erstellen von dem nachher andere Software lesen kann?
„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: ↑ zum Beitrag ↑
13.05.2020 20:41:34
Wie können Audiodateien zwischendrin eingespielt werden?
Zwischen was? Zeitlich? Auf Signalpfade bezogen?

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?

pferdefreund
Beiträge: 3792
Registriert: 26.02.2009 14:35:56

Re: Mischen mit jack

Beitrag von pferdefreund » 14.05.2020 07:53:42

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.

Benutzeravatar
king-crash
Beiträge: 722
Registriert: 08.08.2006 12:07:56
Lizenz eigener Beiträge: MIT Lizenz

Re: Mischen mit jack

Beitrag von king-crash » 14.05.2020 12:51:36

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:
2634
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).

Benutzeravatar
Babarosa
Beiträge: 25
Registriert: 02.08.2019 17:36:44

Re: Mischen mit jack

Beitrag von Babarosa » 14.05.2020 14:07:15

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
Debian 12 Xfce mit rt-Kernel

Benutzeravatar
king-crash
Beiträge: 722
Registriert: 08.08.2006 12:07:56
Lizenz eigener Beiträge: MIT Lizenz

Re: Mischen mit jack

Beitrag von king-crash » 14.05.2020 15:13:24

Besten Dank, jack_mixer bringt mich schon deutlich weiter.
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
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?

Benutzeravatar
king-crash
Beiträge: 722
Registriert: 08.08.2006 12:07:56
Lizenz eigener Beiträge: MIT Lizenz

Re: Mischen mit jack

Beitrag von king-crash » 14.05.2020 15:37:27

Ich konnte das Problem auf der Seite von mpv lösen:

Code: Alles auswählen

mpv --jack-name=file0 --audio-channels=2 --jack-connect=yes --jack-port="jack_mixer:jingle0 (L|R)" filename
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?

Benutzeravatar
ralli
Beiträge: 3919
Registriert: 02.03.2008 08:03:02

Re: Mischen mit jack

Beitrag von ralli » 14.05.2020 17:24:25

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
Wer nicht lieben kann, muß hassen. Wer nicht aufbauen kann muß zerstören. Wer keine Brücken baut, muß spalten.

Benutzeravatar
Revod
Beiträge: 3788
Registriert: 20.06.2011 15:04:29
Lizenz eigener Beiträge: MIT Lizenz

Re: Mischen mit jack

Beitrag von Revod » 14.05.2020 19:16:23

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 ) :mrgreen:
Systemd und PulseAudio, hmmm, nein danke.

Benutzeravatar
CH777
Beiträge: 1466
Registriert: 27.05.2008 16:37:17

Re: Mischen mit jack

Beitrag von CH777 » 14.05.2020 22:07:36

Revod hat geschrieben: ↑ zum Beitrag ↑
14.05.2020 19:16:23
für qualitatives Audio ist Jack nun Mal unabdingbar
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.

Benutzeravatar
Revod
Beiträge: 3788
Registriert: 20.06.2011 15:04:29
Lizenz eigener Beiträge: MIT Lizenz

Re: Mischen mit jack

Beitrag von Revod » 14.05.2020 22:27:44

CH777 hat geschrieben: ↑ zum Beitrag ↑
14.05.2020 22:07:36
Revod hat geschrieben: ↑ zum Beitrag ↑
14.05.2020 19:16:23
für qualitatives Audio ist Jack nun Mal unabdingbar
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.
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.

Benutzeravatar
ralli
Beiträge: 3919
Registriert: 02.03.2008 08:03:02

Re: Mischen mit jack

Beitrag von ralli » 15.05.2020 09:34:33

Revod hat geschrieben: ↑ zum Beitrag ↑
14.05.2020 19:16:23
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 ) :mrgreen:
Hallo Revod,

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.

Benutzeravatar
SirArthur
Beiträge: 278
Registriert: 11.07.2017 17:39:12

Re: Mischen mit jack

Beitrag von SirArthur » 17.05.2020 01:03:37

king-crash hat geschrieben: ↑ zum Beitrag ↑
14.05.2020 15:13:24
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?
...
Nur interessehalber, ist das mit qjackctl auch automatisch bei Erscheinen des neuen Ports möglich?
In der Patchbay.

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.

Benutzeravatar
Revod
Beiträge: 3788
Registriert: 20.06.2011 15:04:29
Lizenz eigener Beiträge: MIT Lizenz

Re: Mischen mit jack

Beitrag von Revod » 18.05.2020 18:02:35

Hallo ralli

Wegen den Übersteuerungen in den Spitzen Ausschläge empfehle ich Dir die Debianmeterbridge 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;
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. :)
ralli hat geschrieben: ↑ zum Beitrag ↑
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
...
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 ).

Code: Alles auswählen

cat /proc/asound/card0/codec#0
Systemd und PulseAudio, hmmm, nein danke.

Benutzeravatar
ralli
Beiträge: 3919
Registriert: 02.03.2008 08:03:02

Re: Mischen mit jack

Beitrag von ralli » 18.05.2020 19:40:21

Hallo Revod,

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.

Benutzeravatar
Revod
Beiträge: 3788
Registriert: 20.06.2011 15:04:29
Lizenz eigener Beiträge: MIT Lizenz

Re: Mischen mit jack

Beitrag von Revod » 18.05.2020 20:22:25

Alles klar, freut mich. :)
Systemd und PulseAudio, hmmm, nein danke.

Antworten