[MMB-322] Versteckte GUI "BDP"

M

M1cha

Stammgast
180
Hi,

habe gerade eine entdeckung gemacht. Das Programm, dass die Grafikausgabe der Box initialisiert ist eigentlich dazu gedacht, eine eigene Oberfläche anzuzeigen. Diese wurde nur deaktiviert und stattdessen wird Android gebootet.

Diese Oberfläche hat direkten Zugriff auf den HDMI-Ausgang und legt sich somit über die(gleichzeitig funktionierende) Android-Oberfläche.
Leider reagiert die Oberfläche weder auf Tastatur, Maus oder Fernbedienung.
Mal sehen, ob ich das noch hinbekomme.

Aber es gibt noch mehr interessante Dinge:
In dem Ordner, wo die ganzen Dateien liegen, befinden sich Build-Informationen, also Einstellungen mit denen die Oberfläche erstellt wurde.
Darunter steht, dass DTS aktiviert ist. Möglicherweise kann der Player dieser Oberfläche DTS wiedergeben?

Vorteil dieser Oberfläche wäre übrigens die schnelle Bootzeit. In wenigen Sekunden ist diese geladen.

Hier 2 Bilder von der Oberfläche. Einmal mit und ohne Hintergrund, damit man sieht, wie sie sich über Android "drüberlegt":
 

Anhänge

  • IMG_20110717_093852.jpg
    IMG_20110717_093852.jpg
    299,3 KB · Aufrufe: 534
  • IMG_20110717_093512.jpg
    IMG_20110717_093512.jpg
    188,9 KB · Aufrufe: 539
Interessant, daß da unten ein LG Logo zu sehen ist ;)
 
Das steht doch aufm dem Fernseher und nicht auf der Bildfäche xd
 
M1cha schrieb:
Das steht doch aufm dem Fernseher und nicht auf der Bildfäche xd

Ups.. OK, dann sollte ich demnächst meine Brille aufsetzen, wenn ich am Rechner bin ;)
 
Hrhr zu gut ;)


Wie haste das Menü/OS aktiviert? Läuft das komplett unabhängig von ANDROID?
 
Ja, es läuft unabhängig von Android.
Das Menü wird über LuaScripts generiert und dargestellt.
Diese befinden sich unter "/BDP/GUI_Content/BoxGui/Scripts".
Normalerweise ist in der main_Android.lua das Starten der GUI auskommentiert.

Nur leider weiß ich nicht, woher das Programm versucht die Events zu nehmen. Deshalb liegt es gerade an sowas simplen, dass die GUI nicht nutzbar ist :(

In den Scripts konnte ich lesen, dass man da sehr viele Einstellungen vornehmen kann. Hier mal ne Kurze Liste:

Bilschirmauflösung:
"480I", "576I", "480P", "576P", "720P60", "720P50",
"720P30", "720P25",
"1080I60", "1080I50",
"1080P30", "1080P25", "1080P24",
"1080P60", "1080P50",

Dann gibts 24P, HDMI_Native, 3D(Auto,3D,2D),

"QDEO-Einstellungen":
"Brightness", "Contrast", "Hue", "Saturation", "Color-Temperature","Brightness-Level","EE Gain", "LTI Gain", "CTI Gain", "Adaptive-Cont.-En.",
"Intel.-Color-Remap.","Flesh-tone-det.co.","Gamma","VNR", "Adaptive PQ"

Audio-Einstellungen:
"HDMI", "SPDIF", "DRC Mode", "Sampling Freq.", "Speaker Setup", "Equalizer", "Bass Mgmt"
Bei HDMI und SPDIF kann man unter Anderem HDMI und AC3 aktivieren.

Außerdem gibt es ein Tool spi_flash, das die fürs Update benutzen.
Ich teste das nicht, nicht dass es so tief eingreift, dass mir der SPIKey auch nichts bringt.

Ich glaube, das Ganze ist für einen BlueRay-Player gedacht.
Aber wenn die Hardware dieselbe ist, müsste das Ganze bei uns auch funktionieren.
 
  • Danke
Reaktionen: ahab
Danke! :)

Werd mich da auch mal ein wenig spielen.... Sehe das als einzige Möglichkeit DTS zu bekommen ;)
 
Also durchs decompilieren konnte ich nicht herausfinden, woher der seine Eingaben nimmt.
Vllt kann man die Scripts ja entsprechend modifizieren, sodass man statt den internen KeyEvents eigene Abfragen macht.
 
ahab schrieb:
Danke! :)

Werd mich da auch mal ein wenig spielen.... Sehe das als einzige Möglichkeit DTS zu bekommen ;)

Ist TS und DTS dasselbe?

Weil ich ja schon in einem anderen Thread geschrieben hatte, dass ich über USB-Stick sogar einen 3D-Film von Sky (.TS) mit Ton abspielen konnte. Der Videoplayer kann das also!
 
TS ist doch nur das Dateiformat "Transport Stream" oder?
DTS ist ein Audioformat - welches die Box leider nicht unterstütz.
 
ahab schrieb:
TS ist doch nur das Dateiformat "Transport Stream" oder?
DTS ist ein Audioformat - welches die Box leider nicht unterstütz.

Innerhalb des BDP-Verzeichnisses sind sehr viele.xml-Dateien.
Dort steht DTS drin, man kann es disablen, also ausschalten und sicher auch aktivieren!

BDP = Blu-ray DiscPlayer

Es gibt sogar Bilder dazu. Ich habe das ganze BDP-Verzeichnis auf USB-Stick kopiert und kann es belegen.

Marvell BD Player:

ujY8cmpRt1q4msNOuOeV6PD47.jpg
 
Zuletzt bearbeitet:
Ich kann mit dem Script die Auflösung der Box verändern. Es sind mehr möglich als unter Android. Dass Android Skaliert liegt wirklich am Framework, denn egal welche Auflösung ich einstelle, die Oberfläche ist immer gleich groß.
Vllt kann man das durch Veränderungen im Framework ja korrigieren.

DTS kann ich zwar mit einem Befehl aktivieren, allerdings weiß ich nicht, ob es funktioniert da ich das nirgens sehen kann. Vllt meldet sich mal jemand, der DTS-Hardware hat.
 
Ich hab zwar DTS Hardware aber das bringt auch nix. Android greift ja nicht auf den MVPlayer zurück und den BDP können wir noch nicht steuern ;) Oder was meintest du?
 
Ja kommt halt drauf an, ob die Bibliotheken von Android DTS aktiviert haben und nur ins leere senden oder obs wirklich nicht implementiert wurde.

Dieser ganze MVPlayer kram ist übrigens Schuld, dass wir keine Screenshots machen können, denn normalerweise greift man die Bilder von /dev/graphics ab, jedoch hat unsere Box diesen Treiber nicht.
Stattdessen wurde Android so modifiziert, dass es über dieselbe Methode wie der MVPlayer auf den HDMI-Port zugreift.
 
Weitere schöne Bilder im BDP-Verzeichnis:

6zYVHVdVt3651fO4pjCIKGJHn.jpg
 
M1cha schrieb:
Ja kommt halt drauf an, ob die Bibliotheken von Android DTS aktiviert haben und nur ins leere senden oder obs wirklich nicht implementiert wurde.

Dieser ganze MVPlayer kram ist übrigens Schuld, dass wir keine Screenshots machen können, denn normalerweise greift man die Bilder von /dev/graphics ab, jedoch hat unsere Box diesen Treiber nicht.
Stattdessen wurde Android so modifiziert, dass es über dieselbe Methode wie der MVPlayer auf den HDMI-Port zugreift.


Auf dem NB-7 kann man ja per Tastendruck Bildschirmfotos machen.
Diese Bildschirm-App ist auf der Meteoritbox installierbar (!).

Was müsste man ändern, damit das auch auf der TV-Box geht?
 
Existiert auf dem NB-7 "/dev/graphics"?
Wenn ja, geht das auch darüber. Kannst mir die App ja mal geben, dann dekompiliere ich das Ganze mal.
 
M1cha schrieb:
Existiert auf dem NB-7 "/dev/graphics"?
Wenn ja, geht das auch darüber. Kannst mir die App ja mal geben, dann dekompiliere ich das Ganze mal.

Schaue ich gleich mal nach.


Hier drei Bilder zu der Screenshot.apk (16kb):

Cyychh3InZdygyFJ3fGvNj5Tl.jpg



Der Datei-Manager vom Touchlet X2G läuft auch auf dem NB-7 und zeigt hier teilweise das Verzeichnis /system/app des NB-7 samt Screenshot.apk!




M1TJH2lTidlIjM0fla9jIpRc5.jpg


Hier ein weiterer Blick in die 49 APKs des NB-7 und auch auf Screenshot.apk!




PfKs6dz7L7sWrCK4Lkz1wVn7K.jpg


Alle Details zu dieser APK!


_________________________________________________________________________


Und ja, das Verzeichnis /dev/graphics existiert!

Cxqpgv8bZV9HvauZgxe0MdjHH.jpg



Die Bilder werden dann auf der internen SD-Karte (sdcard1) gespeichert!

Download der Screenshot.apk des NB-7:

http://www.airsetpublic.com/files/Screenshot.zip?i=YGBxTBJXXhTJHrLUoHCIABLY
 
Zuletzt bearbeitet:
Genau dieser standardisierte graphics-Treiber existiert bei der MMB322 nicht.
Aber ich werde mich in den nächsten Tagen mal mehr mit dem MVPlayer beschäftigen.
Und wenn wir herausfinden können, wie man in den Screen-Buffer schreibt, vllt gibt es dann ja auch eine Möglichkeit diesen auszulesen.
 
M1cha schrieb:
Genau dieser standardisierte graphics-Treiber existiert bei der MMB322 nicht.
Aber ich werde mich in den nächsten Tagen mal mehr mit dem MVPlayer beschäftigen.
Und wenn wir herausfinden können, wie man in den Screen-Buffer schreibt, vllt gibt es dann ja auch eine Möglichkeit diesen auszulesen.
Ich glaube nicht, das dies von Erfolg gekrönt sein wird, das scheinen im MVPlayer Pfade zu seien, die direkt über die Hardware gehen. Es kann höchstens sein, dass man an das Hardwaresurface irgendwie über libstagefrighthw ran kommt. (Das ist im Standard framework der Weg Videobeschleunigung zu aktivieren). Das kann aber auch über Overlays gehen, dann wird der Screenshot immer ohne Video sein.
Bzgl. DTS, da dass ganze auf Gstreamer auf zu setzen scheint, kann man vielleicht eine GStreamer Applikation schreiben (oder bestehende umschreiben), die die Marvell plugins zum dekodieren benutzt und eins der FFMpeg Gstreamer Plugins zum dekodieren von DTS, wenn das wirklich so wichtig ist. (Ich schaue wenn nur DVB und da gibts es kein DTS.)

Marten
 

Ähnliche Themen

Nathaniel9
Antworten
6
Aufrufe
2.999
GosyTX
G
D
Antworten
1
Aufrufe
2.407
Cirno
Cirno
E
Antworten
0
Aufrufe
6.530
Elematics
E
Zurück
Oben Unten