Modul für Yamaha Musiccast

Begonnen von Pythonf, 20 Juni 2016, 10:28:46

Vorheriges Thema - Nächstes Thema

Jack-Luck

Hallo zusammen,

ich überlege mir MusicCast Geräte zu kaufen, einen Yamaha Verstärker sollte ja mit dem YAMAHA_AVR Modul in FHEM einzubinden sein.
Wie sieht es denn jetzt mit den Netzwerklautsprecher von Yamaha aus, kann man die mit dem Modul YAMAHA_MC genauso
steuern? Funktioniert denn auch text2speech bei den Lautsprechern?

Vielen dank

Jack

korreander12

Hallo liebe Musiccast Freunde,
Ich würde gerne Status Texte oder eventabhängige Klänge über meinen WX10 wieder geben.
Darum bin ich ebenso an folgender Frage interessiert :

ZitatFunktioniert denn auch text2speech bei den Lautsprechern?

Hat das schon jemand realisiert oder mithilfe weiterer Module gebaut?
Wäre doch super wenn mp3 Dateien direkt vom fhem Server in den entsprechen Raum zum Lautsprecher gestreamt werden könnten.
Ich möchte damit quasi eine multiroom-tts Anlage bauen.
Schöne Grüße

rastagandalf

Selbst probiert habe ich es noch nicht, wäre aber nicht übel TTS per Musiccast auszugeben.
Eine Möglichkeit wäre, den Lautsprecher auf einen bestimmten DLNA-Ordner zu verweisen und dort eine einzelne, immer gleich benannte Datei zu haben.
Dann den Ordner einfach einmalig abspielen.
Alternativ könnte man versuchen, per UPNP direkt Dateien auf den Lautsprecher zu pushen:
http://www.accella.net/knowledgebase/sending-a-video-content-to-a-dlnaupnp-softwaredevice-using-curl/

korreander12

Zitat von: rastagandalf am 26 Dezember 2017, 18:40:41
....
Eine Möglichkeit wäre, den Lautsprecher auf einen bestimmten DLNA-Ordner zu verweisen und dort eine einzelne, immer gleich benannte Datei zu haben.
Dann den Ordner einfach einmalig abspielen.

Alternativ könnte man versuchen, per UPNP direkt Dateien auf den Lautsprecher zu pushen:
http://www.accella.net/knowledgebase/sending-a-video-content-to-a-dlnaupnp-softwaredevice-using-curl/
Hallo Rastagandolf, freut mich dass du es interessant findest.
Danke für deine Links. Die push - Lösung macht aus meiner Sicht nur Sinn, wenn sie im Modul integriert ist. Ist eine Integration so einer push Funktion vorgesehen?


Ist das abspielen einer einzelnen Datei von einem DLNA Server momentan mit dem Modul möglich?
Dann würde ich meinen Fhem server einfach um miniDLNA erweitern und könnt mal vorerst  damit starten.

korreander12

Ich habe gerade den Code des Modul oberflächlich angeschaut, und festgestellt, dass es eine Funktion "YAMAHA_GetSpeakFile"  gibt.
So wie es scheint ist bereits ein TTS handling integriert. Leider kann ich die Anwendung de Funktion nicht aus dem Code herauslesen.
Hat das schon jemand getestet?
Und wenn ja, was muss alles beachtet und definiert werden um das zu nutzen?

rastagandalf

#185
Zitat von: Korre am 26 Dezember 2017, 22:57:39
Ich habe gerade den Code des Modul oberflächlich angeschaut, und festgestellt, dass es eine Funktion "YAMAHA_GetSpeakFile"  gibt.
So wie es scheint ist bereits ein TTS handling integriert. Leider kann ich die Anwendung de Funktion nicht aus dem Code herauslesen.
Hat das schon jemand getestet?
Und wenn ja, was muss alles beachtet und definiert werden um das zu nutzen?
Könnte was dran sein...ich werde mir das auch mal anschauen sobald ich zu Hause bin und versuchen das mal auszuführen.

EDIT: Alternativ könnte man vielleicht mit diesem Modul einen Stream an den Lautsprecher schicken. Anschließend müsste man dann eben auf die vorherige Audioquelle zurück schalten.
Werde ich bei Gelegenheit mal näher anschauen.

Leugi

Ich hatte vor einiger Zeit versucht eine Mp3 bzw. Sprachausgave im Modul zu implementieren, bin aber auf Grund fehlender Zeit nicht dazu gekommen das abzuschließen.
Die bestehenden Befehle sind zwar vorbereitet, funktionieren aber noch nicht.

Leider ist die direkte Ausgabe von Dateien auf Musiccast Geräten nicht so einfach. Daher war meine Idee folgende :

1. NAS-Laufwerk zur Speicherung der mp3 Files am Raspi wo fhem läuft mounten
2. mp3 File auf dem Raspi mittels Text2Speach erstellen und in dem gemounteten Verzeichnis starten
3. einen Server (Logitech Media Server, Plex, Twonky o.ä.) bereitstellen, der Zugriff auf dem NAS Laufwerk hat
4. Musiccast auf input "Server" stellen  und die erzeugte Datei abspielen

Dabei müsste es dann ein paar Attribute gesetzt werden, um das möglichst allgemeingültig zu machen :
1. Pfad zum NAS Laufwerk(gemountetes Verzeichnis)
2. Ggf. Dateinamen für TTS File
3. Server Adresse und Pfad

Wer Lust hat kann gerne helfen, das mit zu implementieren.  ;)


FHEM auf RaspPi 2, USB-CUL V3, div. HM Aktoren

chopsor

#187
Hallo,

habe mir heute 4x das wx-010 geholt und da soll noch ne wxad-10 dazu kommen.

leider lese ich grade, dass es da wohl nicht so einfach sein soll eine URL drauf zu donnern (wollte die Teile eigentlich wie oben als ttl für Alarm-ansagen etc benutzen)

Wenn ich irgendwie zur Weiterentwicklung beitragen kann gerne (Programmierfähigkeiten auf grünschnabelniveau).

PS: habe hier eine API dok gefunden https://www.pdf-archive.com/2017/04/21/yxc-api-spec-advanced/preview/page/1/ das wird wohl die sein auf welche hier aufgebaut wurde ?
Hier könnte Ihre Werbung stehen !

Strida

Vielen Dank für das tolle Modul. Ich habe gleich auf Anhieb vier verschiedene Geräte (WX010, WX030, ISX80 und A1050) erfassen können.

Sehe ich das richtig, dass die Version vom 12. August 2017 (Post #149 auf Seite 10) die aktuellste Version ist?

im Moment ist mir nur eine Kleinigkeit aufgefallen: Umlaute der Gerätenamen werden in FHEM nicht richtig dargestellt. Mein WX010 hat den Namen Küchenradio und das "ü" wird mit einer Art Fragezeichen bei dem internal network_name angezeigt.

RaspiLED

Hey,


Danke für das Modul! Seit heute mit dem CD-NT670D im Einsatz ;-)


Was soll ich sagen, on/off geht schon einmal, der Rest wird jetzt getestet *lol*
Gruß Arnd
Raspberry Pi mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, WifiLight2, Bravia, ...

rs

Ciao

Zunächst vielen Dank für das Module. Funktioniert in meinem FHEM wunderbar.

Nun hätte ich gerne "irgendwie" meine Lieblingssender hinterlegt und per FHEM direkt aufrufbar, was ich dann auch via ALexa anstossen kann.

Nutze ich die Multicast App auf einem Tablet, dann kann ich FavoritenSender abspielen, das würde ich gerne via FHEM machen ... geht das irgendwie ? ? ?

Gruss & Dank
Roland

PS: Ich betreibe das Yamaha YAS 306
rpi3+ & RaspBee | Phillips, Osram, IKEA, SIlvercrest Devices | FHEM 6.2 | Echo Show 15 | Yamaha YAS| LG TV | Ubuntu 22.04 - NextCloud 27 - OpemVPN - Wordpress - NAS - ...

Leugi

Hallo Roland,

du musst mit

attr wx030 pathToFavoritesNetRadio 0 0

in deiner Musiccast App den Weg zu deiner Favoritenliste definieren. Im Menü also immer mit 0 beginnend oben anfangen, dann bei der nächsten Menüebne fortfahren.
Bei mir ist das Menü 0 0.

Dann den Namen deines letzten Favoritenmenüs angeben, bei mir z.B. "Best radio"

attr wx030 menuNameFavoritesNetRadio "Best radio"

Dann deinen Lieblingssender innerhalb deines Menüs festlegen wieder mit 0 oben beginnend, bei mir z.B. der erste Sender :
attr wx030 FavoriteNetRadioChannel 0

Dann kannst du die Befehle verwenden :
set wx030 TurnFavNetRadioChannelOn  => speilt deinen Lieblingssender ab
set wx030 NetRadioNextFavChannel     => schaltet einen Sender in der Favoritenliste vor
set wx030 NetRadioPrevFavChannel     => schaltet einen Sender in der Favoritenliste zurück

Ist leider alles durch die Menü Steuerung etwas träge und fehleranfällig, aber meistens klappt das ganz gut. Einfach mal testen.

Man kann die Menusteuerung auch immer mit den Befehlen getMenuItems (liest die aktuellen Texte des Menüs) und selectMenuItem (wählt den Menupunkt aus) manuell durchgehen als Alternative zur Musiccast App.

Viel Spass beim Tüfteln !

Gruß
Leugi
FHEM auf RaspPi 2, USB-CUL V3, div. HM Aktoren

rs

#192
Hallo Zusammen

Da ihr euch mit dem Yamaha MC beschäftigt habe, hoffe ich auf eure Hilfe zu meinem kleinem Problem, das ich nirgends sonst gelöst finde.

Ich habe erfolgreich mein Yamaha YAS306 ins FHEM eingebunden und möchte nun per FHEM auch Musik abspielen, etwa wie das Wiki zu MediaList es beschreibt.

Dazu muss ich erst einmal den mpd auf meinem PI3 zum Laufen bringen, dass der darauf Sound ausgeben kann und genau hier struggle ich.

Wie muss den der Yamaha angesteuert werden, damit er vom mpd sound streamed?

In der mpd.conf muss man den Output definieren und hier komme ich nicht weiter.
Dachte das geht so:

# An example of a httpd output (built-in HTTP streaming server):
#
audio_output {
        type            "httpd"
        name            "Yamaha YAS-306"
        encoder         "lame"                  # optional, vorbis or lame
        port            "8000"
        bind_to_address "192.168.2.100"         # optional, IPv4 or IPv6
        quality         "5.0"                   # do not define if bitrate is defined
#       bitrate         "128"                   # do not define if quality is defined
        format          "44100:16:1"
        max_clients     "0"                     # optional 0=no limit
}

aber leider bekomme ich beim Start des mpd den Fehler:

Mar 23 18:03 : socket: Failed to enable "Yamaga YAS-306" [httpd]: Failed to bind to '192.168.2.100:8000': Cannot assign requested address

Kann mir bitte jemand helfen.

Gruss und Dank
ROland

PS --- ich kann von meinem Win10 jeden sound auf diesem Netzwerkgerät ausgeben, also zb mp3´s abspielen. Wie mache ich das aus dem mpd meines pi3 heraus?


PPS --- hier noch die FHEM meines Yamahas

Internals:
   API_VERSION 1.19
   DEF        192.168.2.100 80 120 60
   DEVICE_ID  00A0DED8D837
   HOST       192.168.2.100
   MODEL      YAS-306
   NAME       YamahaYAS
   NR         72
   OFF_INTERVAL 120
   ON_INTERVAL 60
   PORT       80
   PowerOnInProgress 0
   STATE      on
   SYSTEM_ID  024277C3
   SYSTEM_VERSION 2
   TYPE       YAMAHA_MC
   URLCMD     /YamahaExtendedControl
   WLAND_STRENGTH 0
   WLAN_SSID 
   attemptsToReturnMenu 0
   connection wired_lan
   location_id 14704a0135b840829a7363c386056a0d
   location_name Home1
   network_name Wohnzimmer
   settingChannelInProgress 0
   vtuner_id  00A0DED8D837
   READINGS:
     2018-03-23 18:15:27   FirmwareAvailable 0
     2018-03-23 18:28:03   album_name      Chill Klassik Disc 2
     2018-03-20 09:15:47   bluetooth_connected
     2018-03-20 09:15:47   bluetooth_tx_setting 0
     2018-03-22 19:27:33   currentFavNetRadioChannel 1
     2018-03-23 18:28:03   currentMenuLayer 0
     2018-03-23 18:28:03   currentMenuName SERVER
     2018-03-23 18:28:03   currentMenuPlayingIndex -1
     2018-03-23 18:28:03   currentMenumaxItems 1
     2018-03-23 17:09:32   input           server
     2018-03-23 14:47:46   last_error      http://192.168.2.100:80/YamahaExtendedControl/v1/system/getDeviceInfo: empty answer received
     2018-03-23 18:28:03   max_volume      100
     2017-11-12 15:11:25   mute            0
     2018-03-23 18:28:03   playback_input  server
     2018-03-23 18:28:03   playback_status stop
     2018-03-23 18:16:01   power           on
     2018-03-23 18:16:01   presence        present
     2018-03-23 18:28:03   response_code   0
     2017-11-12 15:11:49   sound_program   movie
     2018-03-23 18:16:01   state           on
     2018-03-23 18:28:03   station_name    Diverse
     2018-03-23 18:28:03   track           Tino Rangatiratanga
     2018-03-23 18:16:03   volume          17
   YamahaYAS:
     READINGS:
   helper:
     AVAILABLE  1
     DISABLED   0
     INPUTS     napster|spotify|juke|qobuz|tidal|deezer|airplay|mc_link|server|net_radio|bluetooth|tv|bd_dvd|analog
     MENUITEMS  AVEON: Aveon:
     RUNNING_REQUEST 0
     ZONES      main
     inputs_comma napster,spotify,juke,qobuz,tidal,deezer,airplay,mc_link,server,net_radio,bluetooth,tv,bd_dvd,analog
     inputs_piped napster|spotify|juke|qobuz|tidal|deezer|airplay|mc_link|server|net_radio|bluetooth|tv|bd_dvd|analog
     menuitems_comma aveon:aveon:
     menuitems_piped aveon:aveon:
     soundprograms_comma
     CMD_QUEUE:
     SELECTED_ZONE:
   mac_address:
     wired_lan  00A0DED8D837
     wireless_direct 88C25518836B
     wireless_lan 88C25518836A
Attributes:
   FavoriteNetRadioChannel 1
   alexaName  yamaha
   alias      yamaha
   icon       it_radio
   menuNameFavoritesNetRadio "Best Radio"
   pathToFavoritesNetRadio 0 0
   room       System,Wohnzimmer,Zuhause,alexa
   standard_volume 15
   verbose    1
   volumeSteps 3
   webCmd     volume:input:on:off
rpi3+ & RaspBee | Phillips, Osram, IKEA, SIlvercrest Devices | FHEM 6.2 | Echo Show 15 | Yamaha YAS| LG TV | Ubuntu 22.04 - NextCloud 27 - OpemVPN - Wordpress - NAS - ...

chopsor

Ahoi,

hab mal ne frage:

wenn ich bei z.B. ner WX-010 ein "set  Music_Buero speak hallo" setze stürtzt Fhem ab, die letzten Zeilen im Log sind dann folgende:

2018.03.27 19:45:07 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/71_YAMAHA_MC.pm line 1868.
Undefined subroutine &main::YAMAHA_Client_Data_Retreive called at ./FHEM/71_YAMAHA_MC.pm line 3670.
(sowohl mit verbose 0 als auch mit 5)

Muss man noch irgend etwas beachten ?

MfG
Hier könnte Ihre Werbung stehen !

fhemoob

und noch ein weitere Frage:

Ich habe hier mehrere WX-030. Geht auch ein Stereobetrieb?