Projekt Ambient Light für Android TV

  • Antworten:5
  • Bentwortet
Mikke
  • Forum-Beiträge: 2

17.12.2018, 23:36:32 via Website

Hallo zusammen

Ich bin Mikke und hab mich heut mal hier im Forum registriert. Ich bin am Überlegen ein größeres Projekt umzusetzen - nämlich meinem SmartTV ein Ambient Light feature zu spendieren. Soll heißen: eine App Programmieren, welche die Farbwerte im Randbereich aufzeichnet und die Infos per USB an eine externe Platine weiter gibt wo die LED´s angeschlossen sind.
Bin hier noch GANZ am Anfang und habe auch bisher noch nie eine App programmiert. Aber erstmal interessieren mich so Dinge, was andere GENERELL von dieser Idee halten - ist das überhaupt machbar? und noch was, was mich am Anfang interessiert: Ich kann zwischen Android Apps und TV 'umschalten' - aber wie kann ich ermitteln, ob die App im Hintergrund weiter läuft oder ob sie komplett abgewürgt wird, wenn ich auf TV umschalte.

Was haltet ihr davon?
PS: habe lange überlegt die Frage hier oder im "Device" Forum zu posten - aber mich interessiert mehr was Programmierer darüber denken, als das was andere Android TV User meinen. Falls das ein Admin anders sieht - gern verschieben...:D

Vielen Dank
Mikke

Kommentieren
Beste Antwort
swa00
  • Forum-Beiträge: 3.704

18.12.2018, 13:08:40 via Website

Nein - ich wollte mich schon für Variante A entscheiden (also Rechenleistung vom TV nutzen um Randbereiche auswerten zu wollen

Du kannst unter Android keinen Videospeicher direkt abgreiffen, das geht nur über eine Art Screenshot.
Das heisst , du musst mindestens mit einer Frequenz von 10 Hertz images erstellen , dann die Pixel auswerten, Farben bestimmen und auswerten.

Das wird mit an Sicherheit grenzender Wahrscheinlichkeit nicht funktionieren, denn die Prozessoren eines Smart TV's sind nicht für Image-Operationen ausgelegt , sondern nur für die Menuführungen, die die externe Peripherie steuern.

Zumal du für dieses Vorhaben ein fundamentales Wissen in Imageprocessing und der Programmierung unter Android besitzen musst.

— geändert am 18.12.2018, 13:41:16

Liebe Grüße - Stefan
[ App - Entwicklung ]

Hilfreich?
MikkeMichael K.
Kommentieren
Michael K.
  • Forum-Beiträge: 1.126

17.12.2018, 23:59:14 via Website

Die c't hatte mal solch ein Projekt, das hier beschrieben ist:

https://www.heise.de/select/ct/2016/11/1463995875350184

Wenn es Dir nur ums Ambilight selber geht, und nicht so sehr um eine eigene App, würde ich das einfach nachbauen.
Ansonsten bin ich eher pessimistisch, was Deine Projektbeschreibung angeht, auch wenn ich keine Android-Apps selber programmiere.
Das fängt damit an, dass Du vermutlich gar nicht die erforderlichen Zugriffsrechte bekommst, noch eine Beschreibung dafür, wo Du erforderliche Informationen überhaupt zugreifen kannst. Ich befürchte weiter, dass der Fernsehprozessor nicht die erforderliche Echtzeitfähigkeit und (freie) Rechenleistung hat, um das Ambilight anzusteuern.
Darüber hinaus läuft längst nicht jeder smarte Fernseher unter Android und spätestens dann wird es auch bei den Softwaretools und der Community-Unterstützung eng.

Ich will Deinen Enthusiasmus wirklich nicht bremsen, und vielleicht können die erfahrenen App-Programmierer hier Dir auch noch hilfreiche Tipps geben, aber wenn es Dir um ein individuelles Ambilight für die private Nutzung geht, dann dürfte der Nachbau die billigste, schnellste und einfachste Lösung sein.

Eine ähnliche Anleitung:

http://powerpi.de/atemberaubendes-ambilight-am-eigenen-tv-selber-bauen-raspberry-pi-2-tutorial-teil-1/

Quellen: www.heise.de, powerpi.de

— geändert am 18.12.2018, 08:38:14

Hilfreich?
Mikkeswa00
Kommentieren
swa00
  • Forum-Beiträge: 3.704

18.12.2018, 10:29:50 via Website

Hallo Mikke,

welche die Farbwerte im Randbereich aufzeichnet

Dazu müsstest du erst einmal erklären , wie du das umsetzen möchtest.
Soll die App auf einem Smart TV mit Android System laufen , oder befindet sich eine Art Kamera davor ?

Für Variante A musst Du Rechenleistung auf dem Smart TV besitzen und auch Root Zugriffsrechte, für Variante B benötigst du fundamentale Kenntnisse in der Imageauswertung und auch ein Device mit gehöriger Prozessorleistung.

Mit einem Embedded - Device bist du besser aufgehoben - Android ist der falsche Ansatz.
(Siehe zweiten link von Michael,dort wird das HDMI Signal ausgewertet)

— geändert am 18.12.2018, 10:39:43

Liebe Grüße - Stefan
[ App - Entwicklung ]

Hilfreich?
Mikke
Kommentieren
Mikke
  • Forum-Beiträge: 2

18.12.2018, 13:00:41 via Website

hallo zusammen und danke für die Antworten.

@Michael K.
Das Problem ist halt, wenn ich ein externes Device verwende, dass ich nur an die Daten komme, die ich von extern in den TV einspeise. (will ich eigentlich nicht, weil so bräuchte ich auch noch einen externen Reciver um das normale TV Programm mit A.L. zu nutzen.) diese lösungen kenne ich, möchte ich aber nicht. Dann würde ich das BastelProjekt lieber als 'gescheitert' abbrechen:'(
Es muss auch keine Schnelle, günstige, einfache Lösung sein - es ist / wird halt ein Bastel Projekt - und wenn sich das ein Jahr hin zieht, ist das vollkommen ok für mich...

Ich habe jetzt auf dem TV mal "Tasker" installiert und einen Task erstellt, der alle 2 min. ein BeepTon abspielt. Das funktioniert sehr gut - auch wenn ich im TV bereich bin. Selbst nachdem ich den Fehrnseher in Standby geschickt und wieder gestartet habe höre ich meinen BeepTon regelmäßig. die nächsten Baustellen sind - wie ihr richtig gesagt habt RechenLeistung zu ermitteln, die der TV "übrig" hat, während er läuft. und natürlich wie @swa00 schon richtig schreibt Rootrechte. Und dann muss ich mir was überlegen wie ich das TV Bild abgreife...

Aber danke mal bis hier her - bin aber natürlich weiterhin für Tipps dankbar

@swa00 - nein - so gesehen sollte es schon variante A werdern... sry.

Grüße
Mikke

— geändert am 18.12.2018, 13:02:10

Hilfreich?
Kommentieren
Beste Antwort
swa00
  • Forum-Beiträge: 3.704

18.12.2018, 13:08:40 via Website

Nein - ich wollte mich schon für Variante A entscheiden (also Rechenleistung vom TV nutzen um Randbereiche auswerten zu wollen

Du kannst unter Android keinen Videospeicher direkt abgreiffen, das geht nur über eine Art Screenshot.
Das heisst , du musst mindestens mit einer Frequenz von 10 Hertz images erstellen , dann die Pixel auswerten, Farben bestimmen und auswerten.

Das wird mit an Sicherheit grenzender Wahrscheinlichkeit nicht funktionieren, denn die Prozessoren eines Smart TV's sind nicht für Image-Operationen ausgelegt , sondern nur für die Menuführungen, die die externe Peripherie steuern.

Zumal du für dieses Vorhaben ein fundamentales Wissen in Imageprocessing und der Programmierung unter Android besitzen musst.

— geändert am 18.12.2018, 13:41:16

Liebe Grüße - Stefan
[ App - Entwicklung ]

Hilfreich?
MikkeMichael K.
Kommentieren
Michael K.
  • Forum-Beiträge: 1.126

18.12.2018, 16:33:17 via Website

Wenn Du an Deinen Fernseher einen analogen Videorekorder anschließen kannst, manchmal geht das nur über Scartadapter oder ähnliches, müsstest Du alle Videodaten, auch die des eingebauten Receivers, an einen externen Video-Grabber in analoger Form weiterleiten können. Neuere Fernseher haben die Möglichkeit, Massenspeicher per USB als digitalen Videorekorder zu verwenden, bei eingeschalteter Timeshiftfunktion sogar ohne eine Aufnahme zu aktivieren...(die Daten könnten allerdings verschlüsselt sein).
Bei den vorgeschlagenen Lösungen würde ja mittels Kodi das Liveprogramm über das Internet gesehen, also einen extra Receiver bräuchte man auch nicht.
Willst Du das auch nicht, wäre immer noch denkbar, den externen Internet-Receiver nur für die Ambilight-Erzeugung zu nutzen, wobei man dann das Problem hätte, eingebauten Receiver und Kodi bezüglich der Programmauswahl zu synchronisieren, und einen zeitlichen Versatz bei der Programmdarstellung auszugleichen...

Dein Problem ist, dass Deine App auf dem oft relativ schwachbrüstigen Applikationsprozessor läuft, während die Daten, die Du brauchst, auf dem Video- oder Bildprozessor zur Verfügung stehen. Wenn überhaupt. Das sind häufig speziell zugeschnittene Spezialprozessoren oder sogar Asics, die nur das machen, was benötigt wird. Dazu kommt, dass man kaum an Hardwarebeschreibungen kommt, ebenso wenig wie an die von Betriebssystemerweiterungen oder speziellen Bibliotheken.

Aber, das Glück ist mit den Tüchtigen. Lass uns wissen, wenn Du weiterkommst.

— geändert am 18.12.2018, 16:43:03

Hilfreich?
Mikkeswa00
Kommentieren