SEPIA-Framework / sepia-docs

Documentation and Wiki for SEPIA. Please post your questions and bug-reports here in the issues section! Thank you :-)
https://sepia-framework.github.io/
238 stars 16 forks source link

Audio-Ausgabe über Bluetooth speaker #63

Open neporamone opened 4 years ago

neporamone commented 4 years ago

hallo, erst einmal vielen Dank für deine tolle Arbeit! Nach der ersten Testphase aka Spielphase ;) soll es nun ernst werden. Habe mir den Server auf einen Orangepi (mit Armbian/Ubuntu) erfolgreich installiert, einen Client auf einem RPI3b - ebenfalls erfolgreich; Bluetooth Erkennung vom Client und Bluetooth-Box mit Audioausgabe ist konfiguriert. So, wie bekomme ich es konfiguriert, daß der Client nicht "Headphone" als Ausgabegerät nimmt sondern den Bluetooth-Speaker ? Muß man das run.sh Script verändern, da dort nach den "Headphone" gesucht und schließlich auch konfiguriert

_# Notify user headphone_count=$(amixer scontrols | grep "Headphone" | wc -l) if [ $headphonecount -gt 0 ]; then amixer sset 'Headphone' 80% fi

Gibt es nun eine Möglichlkeit, die Soundausgabe umzuleiten nach

amixer -D bluealsa Simple mixer control 'MusicMan BT-X34 - A2DP',0 Capabilities: pvolume pswitch Playback channels: Front Left - Front Right Limits: Playback 0 - 127 Mono: Front Left: Playback 127 [100%] [on] Front Right: Playback 127 [100%] [on]_

Und da ich schon am Fragen bin, die Installation für einen Client geht von einem RPI aus, ist eine Installation eines Clients auch auf anderen Systemen/Hardware möglich ?

Tschau nepo

sepia-assistant commented 4 years ago

Hi Nepo,

freut mich, dass du schon so weit gekommen bist :-).

Mit Bluetooth hatte ich leider bisher kein besonders großes Glück auf dem Raspberry Pi. Ich weiß nicht ob sich das mittlerweile verbessert hat aber vor ca 1 Jahr bin ich kläglich daran gescheitert meine Bluetooth Boxen für einfache Musik Ausgabe zum Laufen zu bekommen, selbst nach einem ganzen Tag rumspielen :-/ Funktioniert die Soundausgabe über die Box generell bei dir (Tests über das RPi Terminal etc.)?

Je nachdem welche Installationsvariante des Client du benutzt hast gibt es eine ~/.asoundrc in deinem Home Ordner. Das wird deine beste Chance sein die Audiogeräte zu konfigurieren. Generell nutzt der SEPIA Client einfach die Standard Audiogeräte des Systems. Vielleicht kannst du dort die Box eintragen. Wie genau das aussieht müsste ich aber auch googeln :-/ , das Audiosystem von Linux kommt mir meistens vor wie Alchemie ... man mixt irgendwas zusammen und wenn man Glück hat geht es :see_no_evil:

Generell versucht der Client Sound Ein- und Ausgabe über Alsa zu machen. Ich kann mir gut vorstellen dass die Boxen Pulseaudio benötigen. Wenn ich mich recht erinnere kann man auch Pulseaudio Geräte in die ~/.asoundrc eintragen.

Grüße, Florian

neporamone commented 4 years ago

Hi

Mit Bluetooth hatte ich leider bisher kein besonders großes Glück auf dem Raspberry Pi. Ich weiß nicht ob sich das mittlerweile verbessert hat aber vor ca 1 Jahr bin ich kläglich daran gescheitert meine Bluetooth Boxen für einfache Musik Ausgabe zum Laufen zu bekommen, selbst nach einem ganzen Tag rumspielen :-/

Bischen tricky, aber alles machbar, bin (hauptsächlich) nach dieser Anleitung vorgegangen https://geeks-r-us.de/2017/08/18/bluetooth-a2dp-lautsprecher-am-raspberry-pi/ (allgemein: https://github.com/Arkq/bluez-alsa ) ohne pusle Audio (Tipp: Blue-alsa mußt nicht mehr selbst kompiliert werden, kann man mit apt installieren). Mit Pulse-audio https://www.raspberrypi.org/forums/viewtopic.php?t=235519 wäre dies eine Möglichkeit

Funktioniert die Soundausgabe über die Box generell bei dir (Tests über das RPi Terminal etc.)?

Mit aplay -D bluealsa datei.wav schon

Je nachdem welche Installationsvariante des Client du benutzt hast gibt es eine `Je nachdem welche Installationsvariante des Client du benutzt hast gibt es eine ~/.asoundrc in deinem Home Ordner

Durch die Installation des Clients wird eine ~/.asoundrc angelegt ? Habe/mußte mir bei der Konfiguration von Bluealsa selbst eine solche Datei anlegen und die wurde durch die Client Installation nicht verändert.

Generell nutzt der SEPIA Client einfach die Standard Audiogeräte des Systems. Vielleicht kannst du dort die Box eintragen. Wie genau das aussieht müsste ich aber auch googeln :-/

das war auch meine Grundidee, aber a) wußte ich auch nicht genau wo (auch ewig gegoogelt) und zweitens taucht "die Karte" nicht auf bei aplay -L auf

Generell versucht der Client Sound Ein- und Ausgabe über Alsa zu machen. Ich kann mir gut vorstellen dass die Boxen Pulseaudio benötigen

Meine Ausgabe erfolgt über Alsa , behaupte ich jetzt mal.

Ich sehe zwei Möglichkeiten, a) die bereits erwähnte mit der Standardausgabe und b) so kenne ich es von LMS/squeezelite, man teilt dem Player mit, welche Ausgabe er wählen soll. Welche(n) Player benutzt der Client ?

tschau nepo

neporamone commented 4 years ago

hi

Je nachdem welche Installationsvariante des Client du benutzt hast gibt es eine ~/.asoundrc in deinem Home Ordner. Das wird deine beste Chance sein die Audiogeräte zu konfigurieren. Generell nutzt der SEPIA Client einfach die Standard Audiogeräte des Systems. Vielleicht kannst du dort die Box eintragen

Das war der richtige Tipp :), bzw. fast richtig ;) Man löscht die .asoundrc im Home verzeichnis und erstellt eine asound.conf in /etc sudo nano /etc/asound.conf mit folgenden Inhalt:

pcm.!default "bluealsa" ctl.!default "bluealsa" defaults.bluealsa.interface "hci0" defaults.bluealsa.device "80:C5:F2:27:E7:7E" defaults.bluealsa.profile "a2dp"

Die ersten beiden Zeilen definieren Bluealsa als Standardausgabegerät, die unteren drei Zeilen den Bluetooth-Speaker selbst.

Alles nachzulesen unter https://www.raspberry-pi-geek.de/ausgaben/rpg/2018/04/musik-per-bluetooth-an-einen-lautsprecher-senden/ Eine wirklich gute Anleitung, um Bluetooth Lautsprecher anzubinden und einzurichten.

Tschau nepo

sepia-assistant commented 4 years ago

Wow, heißt das, dass der Client bei dir tatsächlich jetzt mit einer Bluetooth Box läuft? ... ich hab lange nicht geglaubt, dass man das zum Laufen bekommen kann ^^ :see_no_evil: :grin:

Ich werde mir die Anleitungen mal genauer angucken Ende der Woche und versuchen es zu reproduzieren :-)

neporamone commented 4 years ago

Ein großes wahrscheinlich 🤔 Bin noch im Aufbau, Respeaker Mikrophone bestellt usw ..., aber

  1. Generell läuft die Audioausgabe über Bluetooth mit Bluealsa -> aplay
  2. Bei der Client-Konfiguration gibt er mir den Ton auch über die Bluetooth Box aus, also ist Bluetooth das Audio Standard Gerät. Gehe somit davon aus, das es funktioniert, abwarten ... Werde auch erst am Wochenende dazu kommen, es komplett zu installieren und zu konfigurieren.

Tschau nepo

neporamone commented 4 years ago

hi Bin jetzt endlich dazu gekommen, ein wenig weiter zu testen. Das USB-Mikrofon bestellt,angekommen und angeschlossen. Das Mikrofon wird vom System erkannt und funktioniert auch, leider (zu Anfang) mit SEPIA nicht. Dementsprechend _bash install_usbmic.sh ausgeführt und SEPIA erkennt das Mikrofon und man kann es benutzen. Leider funktioniert (logischerweise) die Bluetoothausgabe nicht mehr. Laut ~.asoundrc wird nun audio jack als Audioausgabe genutzt pcm.!default { type asym playback.pcm { type plug slave.pcm "hw:0,0" } capture.pcm { type plug slave.pcm "hw:1,0" } } Wie kann ich meine funktionierende /etc/asound.conf pcm.!default "bluealsa" ctl.!default "bluealsa" defaults.bluealsa.interface "hci0" defaults.bluealsa.device "80:C5:F2:27:E7:7E" defaults.bluealsa.profile "a2dp" in der ~.asoundrc integrieren, so das beides - Bluetooth-Audioausgae und Mikrofon - funktionieren. Die Notation sieht ganz anders aus und es übersteigt defintiv meine Kenntnisse. Vielleicht kann hier jemand helfen ?!?

Tschau nepo

sepia-assistant commented 4 years ago

Hi, ich bin leider auch kein Experte für die Konfigurationsdatei, aber meine beste Vermutung (als ALSA Alchemist) wäre:

# Set default:
pcm.!default {
    type asym
    playback.pcm "speaker"
    capture.pcm "mic"
}
ctl.!default {
    type bluealsa
}

# Define devices used in default:
pcm.mic {
    type plug 
    slave {
        pcm "hw:1,0"
    }
}
pcm.speaker {
    type plug
    slave.pcm {
        type bluealsa
        interface "hci0"
        device "80:C5:F2:27:E7:7E"
        profile "a2dp"
    }
}

# Bluealsa defaults (more general):
defaults.bluealsa.interface "hci0"
defaults.bluealsa.device "80:C5:F2:27:E7:7E"
defaults.bluealsa.profile "a2dp"

Bei ctl.!default bin ich nicht sicher. Warum die Geräte am Besten wohl als "type plug" mit "slave" definiert werden verstehe ich auch nicht so ganz, aber beim Mikrofon klappte das gut ^^.

Die Notation generell ist etwas verwirrend, weil die geschweiften Klammern "{" und die Schreibweise mit "." austauschbar sind ähnlich wie bei YAML und JSON aber doch wieder ganz anders :laughing:

[EDIT] Ich habe zur Sicherheit die alten Zeilen auch noch mal ergänzt für die Bluealsa Defaults. Das sollte keinen Einfluss aufs Mikrofon haben.

neporamone commented 4 years ago

hi

erst mal danke für deine Antwort ! Leider hat deine Konfiguration auch nicht funktioniert. habe es als .asoundrc und als /etc/asound.conf ausprobiert, sollte aber keine Rolle spielen (aber man weis ja nie ). Ebenfalls habe ich den Teil mit Bluealsa defaults mal komplett auskommentiert, auch ohne Erfolg. Bekomme als Fehlermeldung diese Meldung, wenn ich über die Konsole etwas abspiele _aplay test1.wav ALSA lib bluealsa-pcm.c:726:(_snd_pcm_bluealsaopen) Unknown field interface aplay: main:828: Fehler beim Öffnen des Gerätes: Das Argument ist ungültig Bei der Netzrecherche sieht man, das viele Probleme mit alsa und deren richtige Konfiguration haben. Ärgerlich finde ich, das es doch prinzipiell funktioniert, sowohl die Bluetooth Ausgabe als auch das Mikrofon, nur das ich die beiden Konfigurationsdateien nicht richtig zusammenfügen kann. Möglicherweise habe aber auch schon zuviel konfiguriert, werde den Client bei Zeiten neu aufsetzen und das möglichst minimalistisch ... In diesem Zusammenhang: Da der 5 kernel relativ neu ist für RaspiOs, könnte dies auch ein mögliches Problem sein ?

Tschau nepo

sepia-assistant commented 4 years ago

habe es als .asoundrc und als /etc/asound.conf ausprobiert

Rein theoretisch sollte die ~/.asoundrc die /etc/asound.conf überschreiben, aber wie du schon sagtest ... man weiß ja nie :-p

Bekomme als Fehlermeldung diese Meldung, wenn ich über die Konsole etwas abspiele ...

Ich rate mal ins Blaue mit einer neuen Variante:

# Set default:
pcm.!default {
    type asym
    playback.pcm "bluealsa"
    capture.pcm "mic"
}

# Define devices used in default:
pcm.mic {
    type plug 
    slave {
        pcm "hw:1,0"
    }
}

# Bluealsa defaults (more general):
defaults.bluealsa.interface "hci0"
defaults.bluealsa.device "80:C5:F2:27:E7:7E"
defaults.bluealsa.profile "a2dp"

In diesem Zusammenhang: Da der 5 kernel relativ neu ist für RaspiOs, könnte dies auch ein mögliches Problem sein ?

Mit dem Image vom 2020-05-27 läuft bei mir alles noch, allerdings ohne Bluetooth. Ich hatte wohl Probleme mit dem Bluetooth Remote Trigger im Raspberry Pi OS, da wurde mein Wifi plötzlich total instabil :-/

neporamone commented 4 years ago

Ich rate mal ins Blaue mit einer neuen Variante:

Blau finde ich gut !!! ;) Die neue Konfiguration scheint (erster kurzer Test) zu funktionieren - Vielen vielen Dank !!! Nun kann es weitergehen ... und wahrscheinlich mit noch mehr fragen ;) Schönes WE und bleibt am Ball, wirklich ein tolles Projekt !

Tschau nepo

sepia-assistant commented 4 years ago

Die neue Konfiguration scheint (erster kurzer Test) zu funktionieren - Vielen vielen Dank !!!

:scream: das kam jetzt unerwartet , das bin ich nicht gewohnt von ALSA :laughing:

Schönes WE und bleibt am Ball, wirklich ein tolles Projekt !

Ebenfalls und danke :-)

neporamone commented 4 years ago

hi und einen Guten Morgen ! :smile:

@sepia-assistant , leider war das nur die halbe Miete :slightly_frowning_face: Alles, was direkt über die voice-engine geht, funktioniert, wie z.B. Wetteransage, Bestätigungen ... . Wenn ich nun z.B. Musik (Radio-Station, Youtube) hören möchte, wird zwar mir gesagt, das sie gespielt wird, über die Bluetooth-lautsprecher kommt aber nichts an

Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-speech":{"type":"tts_speak","msg":"Radio wird gestartet."}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-speech":{"type":"asr_result","msg":"Spiele Radio WDR 5"}}} Soweit ich das sehe, wird solch ein Content über Chromium abgespielt. Entweder erkennt Chromium Bluetooth nicht als Standardaudioausgabe an oder Chromium wird eventuell mit den falschen Parametern gestartet.

Generell funktioniert es, getestet mit Audio-Jack als Ausgabegerät.

Es wäre natürlich super, wenn dies auch über Bluetooth funktionieren würde. Allgemein kann man sagen, das der Klinkenausgang eines RPI's nicht besonders gut ist und man den Audioausgang selbst bestimmen kann - ob nun Bluetooth, HDMI, externe Soundkarte usw. .

Noch eine gute Woche und Tschau neporamone :grin:

fquirin commented 4 years ago

Hi,

das ist sehr komisch irgendwie denn sowohl TTS als auch Musik kommen aus der gleichen Chromium Instanz lediglich aus 2 verschiedenen HTML Audio Elementen. Bisher bin ich eigentlich davon ausgegangen, dass das dann auch zwangsläufig das selbe Output Gerät ist 🤔

Kannst du statt Radio mal folgendes versuchen "Spiele Musik von Queen via YouTube"?

neporamone commented 4 years ago

moin Sorry für die verspätete Antwort - bin gerade beim Einrichten von WakeWords - Läuft super !!!

Kannst du statt Radio mal folgendes versuchen "Spiele Musik von Queen via YouTube"?

Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-wake-word":{"state":"active"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"idle"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"speaking"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-speech":{"type":"tts_speak","msg":"Eine Sekunde, Musik wird gesucht."}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-speech":{"type":"asr_result","msg":"spiele musik von queen Bier YouTube"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"idle"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"listening"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-wake-word":{"state":"inactive"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-wake-word":{"state":"triggered","word":"Hey Pico"}}} Wenn ich mir htop anschaue, scheint da auch etwas zu laufen sepia htop Alsamixer sepia mikrofon sepia alsamixer Hoffe es hilft ein wenig

Tschau neporamone

neporamone commented 4 years ago

hi vielleicht bin ich der Lösung ein wenig näher gekommen :grin:

Laut htop nimmt chromium
alsa-output-device=default und default ist bei mir auch in der ~.asoundrc als auch in /etc/asound definiert und wie gesagt, prinzipiell funktioniert es auch, nur nicht mit Chromium. Stellt sich die Frage, was chromium als default ansieht. Jetzt die gute Nachricht :wink: Wenn ich chromium direkt den alsa output mitgebe, bekomme ich auch Sound über meine Bluetooth-Box (siehe https://stackoverflow.com/questions/47137683/chromium-alsa-ouput-device-flag-not-working) chromium-browser --alsa-output-device='bluealsa:DEV=80:C5:F2:27:E7:7E,PROFILE=a2dp' -kiosk https://www.youtube.com/watch?v=bm51ihfi1p4 oder chromium-browser --alsa-output-device='bluealsa:DEV=80:C5:F2:27:E7:7E,PROFILE=a2dp' -kiosk http://stream.laut.fm/polarlicht Beides funktioniert :rofl: So, nun gibt es zwei Möglichkeiten: Entweder bringt man Chromium bei, die "richtige" default Einstellungen zu übernehmen (https://superuser.com/questions/273561/how-can-i-make-chromium-use-a-different-alsa-device mit https://www.alsa-project.org/main/index.php/LibEnvVars) oder man startet generell chomium mit der direkten Angabe des Audio-Output-Devices. Für beide Lösungsansätze habe ich im Netz leider nichts gefunden, vielleicht könnt ihr mir weiterhelfen !

Schönes WE und Tschau neporamone

Wir schaffen das

neporamone commented 4 years ago

Moin

... und wieder einen kleinen Schritt weiter

@fquirin

Bisher bin ich eigentlich davon ausgegangen, dass das dann auch zwangsläufig das selbe Output Gerät ist

und da hast du recht ! Habe ein wenig weiter getestet und folgendes festgestellt:

Für mich bedeutet es, das der Client (Chromium) zu früh startet (bevor eine Bluetooth-Verbindung hergestellt werden kann) und somit der Befehl, den in der asoundrc-Datei festgelegten default Audiooutput zu nehmen, ins Leere läuft. Da (anscheinend) Chromium die einmal festgestellte "Nichtbenutzung" beibehält, auch wenn danach eine Bluetooth-Verbindung hergestellt wird, kommt kein Sound aus der Box Mögliche Lösungsansätze

Was meint Ihr dazu ?

Tschau nepo

fquirin commented 4 years ago

Abend :-) Danke für die neuen Infos! Das hilft ja schon sehr weiter 😎 Ich könnte eine Option ins Setup Menü einbauen (~/sepia-client/setup) mit der man das Output Gerät angeben kann. Die würde dann nicht viel mehr machen als den entsprechenden Flag in der ~/sepia-client/run.sh zu setzen, aber es wäre etwas komfortabler zu managen 🙂. Was meinst du?

neporamone commented 4 years ago

Hi

hört sich gut an und ein Versuch ist es immer wert. Schon mal Danke fur deine/eure ganze Hilfe !!!

Werde wahrscheinlich (erst am WE) alle möglichen Scenarien einmal wirklich konsequent durchspielen, auch die, die du vorgeschlagen hast @fquirin (händisch: bei der run.sh jeweils mein Audio-Output eintagen).

Tschau nepo

sepia-assistant commented 4 years ago

Ich könnte eine Option ins Setup Menü einbauen (~/sepia-client/setup) mit der man das Output Gerät angeben kann.

Hier ist eine (experimentelle ^^) Testversion: sepia-diy-client_0.23.0_beta_scripts. :-) Einfach die run.sh und setup.sh in ~/sepia-client/ ersetzen und dann im Setup Punkt 9 auswählen um das Output Gerät zu definieren.

neporamone commented 4 years ago

hi

Danke für deine/eure Mühe !!! Aber ... Bitte nicht schlagen :disappointed: Bin gerade am testen (hoffentlicht diesmal systematisch) und vorweg, es liegt nicht daran, das sepia das Bluetooth-gerät bzw. die .asoundrc nicht rechtzeitig findet. Man hat immer etwas im Hinterkopf, beachtet es aber nicht oder interpretiert es falsch. In meinem fall war es so, das man immer den Begrüßungstext gehört hat, alles andere aber nicht richtig laufen wollte. Die Tatsache, das man die Begrüßung hören kann, zeigt das generell Bluetooth mit sepia funktioniert. Aber von Anfang an ...

Erstes Scenario: Rpi Sepia Client mit Audiojack als Output und USB-Mikro, .asoundrc aus dem Github

Folglich stimmt das System als auch meine Konfiguration als solches !

Zweites Scenario: Rpi Sepia Client mit Bluetooth als Audio Ausgabe und USB-Mic, Bluetooth ist verbunden und funktioniert mit aplay, @sepia-assistant deine .asoundrc https://github.com/SEPIA-Framework/sepia-docs/issues/63#issuecomment-674152427

Bei beiden Varianten funktioniert das Wake-Word nur einmal (wenn überhaupt) und dann nicht mehr.

Also entweder funktioniert die Musikwiedergabe oder die Sprachausgabe, aber nicht beides zusammen. Ob es nun an der (falschen) asoundrc liegt (habe schon andere aus dem Netz probiert z.B. https://www.raspberrypi.org/forums/viewtopic.php?t=232182) oder an sepia selbst bzw meiner Konfiguration, keine Ahnung. Bin mittlerweile wirklich am verzweifeln ! Tschau nepo

P.S. Nochmals sorry, das ihr extra Arbeit hattet

neporamone commented 4 years ago

Hi @sepia-assistant

Ich könnte eine Option ins Setup Menü einbauen (~/sepia-client/setup) mit der man das Output Gerät angeben kann.

Hier ist eine (experimentelle ^^) Testversion: sepia-diy-client_0.23.0_beta_scripts. :-) Einfach die run.sh und setup.sh in ~/sepia-client/ ersetzen und dann im Setup Punkt 9 auswählen um das Output Gerät zu definieren.

Habe es nun ausprobiert, macht keinen Unterschied. Nochmals, tut mir leid wegen der Umstände ! Noch ein Test, wobei mir bald die Ideen ausgehen, was und wie ich testen soll.

Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"idle"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-speech":{"type":"tts_error","msg":"unknown"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"idle"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"speaking"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-speech":{"type":"tts_speak","msg":"Läuft!"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","test-result":{"isActive":true,"user":"uid1007","next":"sending test message now ..."}}} Broadcaster response: "sent" Broadcaster event: {"broadcast":{"name":"sepia-client","data":{"deviceId":"o1","call":"test"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"idle"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"speaking"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-speech":{"type":"tts_speak","msg":"Läuft!"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","test-result":{"isActive":true,"user":"uid1007","next":"sending test message now ..."}}} Broadcaster response: "sent" Broadcaster event: {"broadcast":{"name":"sepia-client","data":{"deviceId":"o1","call":"test"}}}

Also mit Fehlermeldung:

Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-speech":{"type":"tts_error","msg":"unknown"}}}

Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"idle"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"speaking"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-speech":{"type":"tts_speak","msg":"Läuft!"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","sepia-state":{"state":"loading"}}} Broadcaster event: {"broadcast":{"client":"o1_chrome_app_v0.22.0","deviceId":"o1","test-result":{"isActive":true,"user":"uid1007","next":"sending test message now ..."}}} Ohne Fehlermeldung und über Kopfhörer sind Internetstream und Sprachansage gleichzeitig zu hören (wobei natürlich die Lautstärke des Internetstreams nicht reduziert wird)

Ein Schuß ins blaue: Bei (blue-) alsa kann man nicht zwei Software-Player gleichzeitig laufen lassen (es sei denn, man benutzt das dmix-Plugin). Kann es sein, das bei der Bluetooth-Variante Chromium einen anderen Player benutzt als den für die Sprachausgabe ?

Mir fällt wirklich sonst nichts mehr ein ...

Tschau nepo

Anbei nochmal meine asoundrc

pcm.!default {
type asym
capture.pcm "mic"
playback.pcm "speaker"
}
pcm.mic {
type plug 
slave { pcm "hw:1,0" }
}
pcm.speaker {
type plug
slave.pcm {
           type bluealsa
           device "80:C5:F2:27:E7:7E"
           profile "a2dp"
}
}

ctl.!default {
type bluealsa
}
rubipopubi commented 4 years ago

Sicherlich ist das keine zufriedenstellende Lösung - aber versuchs doch notfalls mit nem Bluetooth Sender/Empfänger-Dongle, der einfach an den Headsetport angesteckt wird und dann an den Speaker weiter sendet? Die kosten ja nur ein paar Euro. Falls alle anderen Ansätze versagen :(

neporamone commented 4 years ago

Moin @rubipopubi

Ein guter Tipp, habe daran noch nicht gedacht - Danke! Werde es als Notfalllösung im Hinterkopf behalten. Generell möchte ich den Klinken-Anschluß nur ungern benutzen. Hinzu kommt, das ich alles so klein halten möchte wie möglich (noch ein Gerät und noch eins ....) und zweitens alles so automatisch wie möglich laufen soll, anschalten - Verbindung automatisch - Musik u.a. wird abgespielt .... . Generell funktioniert alles auch einzelnd, Bluetooth-Box, Mikrofon, Sepia. Dementsprechend gebe ich die Hoffnung nicht auf, das wir alles zusammen fügen können !

Tschau neporamone

fquirin commented 4 years ago

Hallo,

sorry noch mal für die späten Antworten, zur Zeit komme ich nicht immer sofort dazu alles sorgfältig zu lesen.

Bitte nicht schlagen

Haha, hier wird keiner geschlagen :laughing:

Es ist leider etwas schwierig den Fehler zu suchen, da ich mir selber erst das gleiche Setup aufbauen müsste um verschiedene Sachen zu testen. Wenn ich es zeitlich irgendwie hinbekomme werde ich in den nächsten 2 Wochen mal versuchen mir verschiedenen Clients + Bluetooth einzurichten, vielleicht kommt mir dann eine gute Idee.

Ein Schuß ins blaue: Bei (blue-) alsa kann man nicht zwei Software-Player gleichzeitig laufen lassen (es sei denn, man benutzt das dmix-Plugin). Kann es sein, das bei der Bluetooth-Variante Chromium einen anderen Player benutzt als den für die Sprachausgabe ?

Bisher bin ich davon ausgegangen, dass Chrome nur einen Audioausgang kennt und technisch gesehen laufen TTS und Musik über die selbe Schnittstelle (HTML Audio Element). Vielleicht ist Bluetooth in dieser Konfiguration besonders, aber das weiß ich nicht.

Hat deine Bluetooth Box eigentlich ein eingebautes Mikrofon? Das sorgt bei mir in Kombination mit der Android App manchmal für komische Effekte. Generell hilft es in Linux alle Audio Geräte, die nicht verwendet werden, zu deaktivieren. Am Besten über die /boot/config.txt.

Ich hoffe ich kann zu dem Bluetooth Thema in ein 1-2 Wochen ein paar neue Erkenntnisse beisteuern.