Posts mit dem Label Audio werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Audio werden angezeigt. Alle Posts anzeigen

Montag, 20. September 2021

Alexa Remote Control Shell Script

 It's about time for a new post since a lot of things have changed over the course of the past four years.

First things first though, the good news is there's finally an almost official way to properly use the script with your Amazon Alexa. Luckily all major home automation projects became inspired by the idea of the original script and some inner workings have been discovered by people smarter than me. Michael Geramb of openHAB and Ingo Fischer of ioBroker came up with the idea to proxy the login to Amazon very similar to how a mobile app would.

The result was for example the nodeJs package alexa-cookie2 (by Ingo Fischer). Looking more closely at the result of the login process it became clear that only a single item is required for our purposes. Hence I created a small nodeJS app that will output the token after successfully completing the login.

As not everybody would want to install nodeJS (or run it in Docker) I created packaged binaries using the nodeJS packager pkg.

While the old login flow may still work (for some time) I strongly encourage everybody to try the new cleaner method.

Dienstag, 10. Oktober 2017

Amazon Alexa per Shell fernsteuern (Echo remote control)

Hier gibt es einen aktuelleren Post zu diesem Thema. Please look here for an updated post!
UPDATE 2021-09-20

Nachdem Amazon mit dem Multiroom Feature der Echos meine alten Multiroom Audio Bemühungen quasi nebenbei erledigt hat, fehlte mir zu meinem Glück noch die Fernsteuerung meiner Echos.

Wenn ich nach Hause komme, soll die Home Automation bitte auch gleich das Radio auf den Amazon Echos einschalten.
Für den umgekehrten Weg nutze ich HA-Bridge, welches meine Intertechno Billigsteckdosen per Alexa Sprachkommando schaltet. Daher kenne ich auch die Möglichkeit, über einen Browser auf das Alexa Interface zuzugreifen.

Was ein Browser kann, das sollte sich doch auch per Shell bewältigen lassen...

Samstag, 28. Januar 2017

HomeAutomation and multi-room audio revisited

In älteren Beiträgen hatte ich bereits meine Begeisterung über Multi-Room Audio und dessen Bedeutung für die HomeAutomation geteilt.
Inzwischen gibt es viele neue Entwicklungen, die den Möglichkeiten eines SONOS Systems etwas näher kommen.

Ich nutze nach wie vor kleine Router mit USB-Soundkarte auf OpenWRT Basis als Netzwerklautsprecher in jedem Raum. Es gibt drei Möglichkeiten, Sound auf diese Geräte zu schicken, wobei ich auf den letzten Punkt insbesonders eingehen möchte:
  1. AirPlay (iPhone, iPad, iPod touch)
  2. DLNA / UPNP-AV (Android)
  3. EsounD/PulseAudio (HomeAutomation Server)

Donnerstag, 10. Januar 2013

OpenWRT UPnP/DLNA Renderer - diesmal wirklich!

Geht es in meinem Freundeskreis um das Thema Netzwerkaudio und Streaming, frage ich immer, ob überwiegend ein Apple Universum vorhanden ist oder eher viele verschiedene andere Geräte - also AirPlay oder UPNP/DLNA (meine EsounD, Pulseaudio-Lösung konnte ich bisher noch niemandem schmackhaft machen...). Mit Shairplay gibt es eine relativ schlanke Lösung für die AirPlay-Ausgabe auf beliebigen OpenWRT Geräten mit USB-Soundkarte.

In einem der alten Posts habe ich mich bereits beklagt, dass es jedoch keinen UPNP/DLNA-Renderer für Linux geben würde. Es gibt scheinbar Millionen von UPNP-Servern aber die Welt der Controlpoints und Renderer ist recht dünn gesät. Aus diesem Grund habe ich, vor gut einem Jahr, einem guten Freund den "alten" Fritz!Repeater empfohlen - nicht, um in seiner 3-Zimmer Wohnung das ohnehin gute WLAN zu verstärken, sondern als UPNP-Renderer für's Netz. Nach anfänglichen Erfolgen hält sich die Zufriedenheit in Grenzen und eine nennenswerte Weiterentwicklung scheint es auch nicht zu geben.

Diese kleine Niederlage wollte ich ungern auf mir sitzen lassen, so dass mir meine neuen PogoPlugs wie gerufen kamen, um damit Rygel mit PlayBin als Renderer auszuprobieren.

Samstag, 25. August 2012

HomeAutomation und Audio - final thoughts

Wie ich schon in Teil 1 bzw. Teil 2 geschrieben habe, ist PulseAudio eine interessante Alternative zu EsounD. Es ist nicht nur ein Drop-In Replacement für ESD, es wird zur Abwechslung auch mal konsequent weiterentwickelt.

Bisher habe ich mit PulseAudio v0.9.x getestet, inzwischen gibt es v2.0 und sogar vorkompilierte OpenWRT Pakete. Eigentlich ist es an der Zeit, mal 'was Neues zu probieren... ;)

Freitag, 24. August 2012

HomeAutomation SoundClients (Teil 3)


In den Server Wrapper Dateien konnte man bereits sehen, die Clients wurden einfach über den "$esdopt" Parameter angegeben. Ein Client ist ein beliebiges Gerät, auf dem der ESD Server läuft. Es gab mal für Windows einen virtuellen Soundkartentreiber, aktuell würde ich EsounD aus dem Cygwin Projekt verwenden. Allerdings gibt es bei uns zu Hause keinen stationären Rechner mehr, auf den es sich lohnen würde Audio auszugeben (früher in der WG liefen die Kisten noch ständig...) - deshalb geht es hier um dedizierte Clients.

Ich bin bei OpenWRT als "Distribution" meiner Wahl gelandet, weil es eine Vielzahl an Plattformen unterstützt. Auf der Homepage kann man unter "Supported Devices" eine umfangreiche Hardwareliste finden. Es sollte sich jeder Router eignen, solange er einen USB-Port besitzt, in den eine billige USB-Soundkarte kommt.
Schafft man gezielt Hardware an, helfen Preisvergleichsportale (mein Favorit ist geizhals.at/de), auf denen man teilweise bei den Router-Features auf "USB" und "OpenWRT" Filtern kann.

HomeAutomation SoundServer (Teil 2)

Im ersten Post habe ich bereits mein Bedürfnis für die Sound-Integration in die HomeAutomation und meinen Enthusiasmus über die Netzwerkfähigkeit von EsounD zum Ausdruck gebracht. Im folgenden möchte ich meine rudimentären Perl-Kenntnisse zur Schau stellen ;-)

Die dargestellten Scripte bilden sozusagen das Herzstück der Interaktion mit den diversen EsounD Servern auf den Netzwerk Clients, da sie über das Webinterface angesteuert werden können. Aber auch meine Cron-Scripte (Weckzeitplaner, etc.) greifen darauf zurück.

HomeAutomation ist auch "Audio in jedem Raum" (Multi-Room Audio) - Teil 1

Ich brauche zu Hause immer eine Geräuschkulisse, am liebsten in jedem Raum. Deshalb haben wir in unsere Homeautomation auch schon frühzeitig Lautsprecher und deren "Bespielung" eingebaut.

Anfänglich (als es noch kein Alsa mit DMIX und TTABLE gab) habe ich EsounD (ESD) dazu genutzt, den Stereo-Kanal einer Soundkarte in zwei getrennte Mono-Kanäle aufzuteilen, die an zwei Verstärker in unterschiedlichen Räumen angeschlossen waren.

Auf diese Weise mit dem spärlich Dokumentierten (und längst nicht mehr weiterentwickelten) EsounD vertraut, habe ich bald auch die Netzwerkfähigkeit von ESD dazu genutzt, Audio in alle Räume zu bringen.

Zunächst liefen drei ESD über drei USB Soundkarten an einem NSLU. Ein günstiges 5.1 Verstärker-Set bekam auf diese Weise drei Input-Kanäle auf die einzelnen Boxen verteilt (vorn, hinten, center) und drei anliegende Räume konnten mit Sound versorgt werden.