Mikrofan auf Lautsprecher "durchschlaufen"

Hallo,
ich möchte das was ich in ein ( via Bluetooth verbundenes ) Headset spreche direkt auf den Laptoplautsprechern ausgeben.
Ich kämpfe da jetzt seit einiger Zeit daran, finde aber nicht mit welcher Software und/oder Einstellungen ich das realisieren könnte.
Könnt Ihr mir da weiterhelfen ?

Die Hardware funktioniert, ich benutze das selbe Headset auch für Online Meetings, nur die sofortige Ausgabe auf den eigenen Lautsprechern bekomme ich nicht hin…
Das Rückkopplungen ein Problem werden könnten ist mir bewusst. Ich denke aber das ist in den Griff zu bekommen denn wenn ein zweiter Laptop im Raum steht, der dem Meeting zugeschaltet ist, geht es auch ohne Rückkopplung.

Beim Einsatz von PulseAudio sollte der kostenpflichtige Artikel:
https://www.heise.de/ratgeber/Linux-Komplexe-Audio-Setups-mit-PulseAudio-konfigurieren-6000628.html
diese Frage beantworten können.

@herbk:

Kostenlos hier – <https://wiki.archlinux.org/title/PulseAudio/Examples#Pipe_a_source_directly_into_a_sink>.


 > pactl -h
pactl [Optionen] stat
pactl [Optionen] info
pactl [Optionen] list [short] [TYP]
pactl [Optionen] exit
pactl [Optionen] upload-sample DATEINAME [NAME]
pactl [Optionen] play-sample  NAME [ZIEL]
pactl [Optionen] remove-sample  NAME
pactl [Optionen] load-module  NAME [ARGUMENTE …]
pactl [Optionen] unload-module  NAME|#N
pactl [Optionen] move-(sink-input|source-output) #N ZIEL|QUELLE
pactl [Optionen] suspend-(sink|source) NAME|#N 1|0
pactl [Optionen] set-card-profile  KARTENPROFIL
pactl [Optionen] get-default-(sink|source)
pactl [Optionen] set-default-(sink|source) NAME
pactl [Optionen] set-(sink|source)-port NAME|#N PORT
pactl [Optionen] get-(sink|source)-volume NAME|#N
pactl [Optionen] get-(sink|source)-mute NAME|#N
pactl [Optionen] set-(sink|source)-volume NAME|#N LAUTSTÄRKE [LAUTSTÄRKE …]
pactl [Optionen] set-(sink-input|source-output)-volume #N LAUTSTÄRKE [LAUTSTÄRKE …]
pactl [Optionen] set-(sink|source)-mute NAME|#N 1|0|toggle
pactl [Optionen] set-(sink-input|source-output)-mute #N 1|0|toggle
pactl [Optionen] set-sink-formats #N FORMATE
pactl [Optionen] set-port-latency-offset KARTENNAME|KARTEN-#N PORT POSITION
pactl [Optionen] send-message RECIPIENT MESSAGE [MESSAGE_PARAMETERS]
pactl [Optionen] subscribe

Die speziellen Bezeichnungen @DEFAULT_SINK@, @DEFAULT_SOURCE@ und @DEFAULT_MONITOR@
können zur Angabe des Standard-Ziels, der Standard-Quelle und der Standard-Überwachung verwendet werden.

  -h, --help                            zeigt diese Hilfe an
      --version                         zeigt die Version an

  -s, --server=SERVER                   gibt den Namen des Servers an, mit dem
                                          verbunden werden soll
  -n, --client-name=NAME                gibt den Namen dieses Clients auf dem Server an
 > 
 > pactl load-module module-loopback source=@DEFAULT_SOURCE@ sink=@DEFAULT_SINK@
24
 > 
 > pactl unload-module 24
 > 

N.B.: “pactl load-module” erzeugt als Ausgabe ein Nummer – eine ID → eine Identifikation …

  • Benutze genau diese Identifaktionsnummer wenn dass Modul entfernt werden soll …

@herbk:

Ich habe gerade probiert –


 > pactl load-module module-echo-cancel source_name=echoCancel_source sink_name=echoCancel_sink
28
 > pactl set-default-source echoCancel_source
 > pactl set-default-sink echoCancel_sink

Quelle: https://wiki.archlinux.org/title/PulseAudio#Microphone_echo/noise_cancellation.
Leider, die Parametern » use_master_format=1 aec_method=webrtc aec_args=“analog_gain_control=0\ digital_gain_control=1” « hat nicht funktioniert aber, in groben das Echounterdrückung hat funktioniert.

Noch mehr hier – https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#module-echo-cancel.


 > pactl load-module module-echo-cancel use_master_format=1 aec_method=webrtc source_name=echoCancel_source sink_name=echoCancel_sink
29
 > pactl set-default-source echoCancel_source
 > pactl set-default-sink echoCancel_sink

scheint zu funktionieren …