Jetzt hatte ich 2 Wochen Zeit mich eindringlich mit Googles ChromeCast zu beschäftigen. Wie ich ja bereits berichtet habe ist ChromeCast kein AirPlay und auch kein MiraCast.

Das Konzept ist gänzlich anders.

Es wird hier nicht der Inhalt des Smartphone oder Tablet Dispalys einfach gespiegelt, sondern es handelt sich hier immer um zwei gänzlich getrennte Komponenten.

Sender und Receiver

Jede ChromeCast Anwendung besteht aus zwei Teilen – einem Sender und einem Receiver. Der Receiver ist eine HTML5 Webseite welche der ChromeCast lädt sobald der zugehörige Sender, eine App für iOS, Android oder Chrome, etwas am ChromeCast abspielen will. Welcher Receiver zu welchem Sender gehört wird über die AppID identifiziert.

Ich habe seit ca. zwei Wochen eine solche AppID, welche es mir erlaubt für ChromeCast zu entwickeln. Mein Receiver, also die HTML5 Webseite, liegt auf einem meiner Webserver öffentlich erreichbar im Internet, mein Sender ist eine Android App.

Kommunikation

Der Sender fungiert als Fernbedienung für den Receiver. Man sendet also an die HTML5 Webseite am Chromecast neben der Information was abgespielt werden soll noch zusätzliche Steuerbefehle wie Play, Pause, Forward, Backward und Lautstärke Plus und Minus.

Auf der Receiverseite greift ein JavaScript diese Befehle ab und steuert die Webseite. Wird also ein Video zum Abspielen übergeben wird dieses zum Beispiel einfach in einem Video-Tag abgespielt.

Content Source

Das Thema mit den lokalen Inhalten ist ja ein leidiges. Mal ging, dann wieder nicht, dann “kommt erst”. Bereits vor zwei Wochen habe ich euch gesagt, dass es geht nur eben nicht so wie man es erwartet hätte – stadt-bremerhaven.de berichtete netter Weise gleich darüber.

Der ChromeCast bekommt nämlich den abzuspielenden Inhalt als URL. Macht ja auch Sinn, denn er stellt ja eine Webseite dar. Ich hatte die Befürchtung, dass diese URL öffentlich verfügbar sein muss, dies erwies sich aber als falsch. Denn ich konnte ohne Probleme ein Video aus meinem LAN am ChromeCast abspielen. Die einzige Voraussetzung ist, dass es per URL erreichbar sein muss. In meinem Fall ermöglichte dies ein Webserver auf meinem Notebook. Natürlich könnte auch eine Android App direkt Inhalt auf diese Weise bereitstellen und so ist lokales Streaming möglich. Man muss eben eine Content Source bereitstellen die sich wie ein Webserver verhält und das ist zum Beispiel unter Android kein Problem.

Wie geht es weiter?

Diese Frage stellte sich mir erstmals nach meinem ersten Erfolg mit dem Video. Wir wissen jetzt, dass wir Apps bauen können die lokalen Inhalt abspielen. Wir wissen auch, dass wir viel mehr als das machen können, denn wir können damit alles am TV darstellen was wir mit einer Webseite auch können. Meine Idee einer Presenter App oder eines MultiUser-Whiteboards ist also machbar, aber im Moment hinfällig.

Google erlaubt es mir und anderen für Chromecast zu entwickeln, aber nicht unsere Apps einer breiten Öffentlichkeit zur Verfügung zu stellen. Meine App für lokales Streaming ist nämlich nur für meinen ChromeCast whitelisted und somit nur bei mir lauffähig.

Daraus schließe ich, dass Google selbst sich noch nicht sicher ist wohin die Reise geht. Werden sie noch viel verändern? Kommen noch mehr Features und das Wichtigste: Wann?

Google, tut uns Entwickler einen Gefallen und lasst uns nicht so im Dunkeln stehen.

Ich für meinen Teil sehe dieses Konzept und das Gerät als großartige Chance an, aber nur wenn wir es auch für unsere Zwecke verwenden können.

Der Videobeweis

Wie bereits angekündigt habe ich auch ein Video gemacht in welchem ich noch einmal genau erkläre wie es funktioniert und ihr das Ganze mal in Aktion seht.