Reinhard Zwirner schrieb:
Der Stick muss nicht HBBTV-fähig sein. Es befindet sich im
Transport-Stream eine Section im AIT-Format, die die HBBTV-Daten
transportiert.
Wenn Du den Transport-Stream auf einem Rechner hast, kannst Du mittels
geeigneter Software auch AIT und somit HBBTV dekodieren.
AIT ist aber letztendlich nur ein hoch kompliziertes Verfahren, um ein
paar URLs zu übertragen. :-)
Die URLs kann man mit dvbsnoop (einer "Art tcpdump für digitales
Fernsehen") schon mal sichtbar machen.
Allerdings kann man die URLs nicht einfach mit einem normalen Browser
sichtbar machen, um sich HBBTV anzuschauen. Dafür braucht es spezielle
Extensions, die die Browser in den Fernseh-Geräten haben. Für Firefox
gab es solche Extensions auch mal, die laufen aber nicht mehr, seitdem
Firefox "aus Sicherheitsgründen" seine eigene Extension-Schnittstelle
durch die von Google Chrome ersetzt hat, die deswegen sicherer ist, weil
sie nichts kann... Es gibt zwar einen Nachfolger, aber der funktioniert
nicht richtig.
Da mich die "nur per HBBTV empfangbaren" Programme mal interessiert
haben, habe ich mir vor einem Jahr mal die Mühe gemacht, herauszufinden,
wie das funktioniert. Die "zuständige" URL ist nämlich nicht einfach im
AIT-Stream.
Stattdessen funktioniert es so, dass zusätzlich zum HTML ein hoch
komplexes Konglomerat von diversen JavaScripten übertragen wird. Diesen
muss dann noch zusätzlich die TSID, SID und ONID des DVB-T2-Kanals
übergeben werden. Daraus bauen die Scripte dann wieder mit einer nicht
trivialen Logik eine URL, die mit XMLHttpRequest geöffnet wird. Und
DAHINTER verbirgt sich dann tatsächlich der Stream des "nur über HBBTV
übertragenen" Senders, sprich, diese URL kann man mit jedem Videoplayer
öffnen.
Die geladenen Scripte kann man z.B. NodeJS übergeben und wenn man das in
einer Sandbox tut, ist das auch sicher (mal abgesehen von möglichen
Löchern in NodeJS).
Insgesamt ist das ein ganz schöner Aufwand für eine eigentlich einfache
Funktion...
--
Manfred Härtel, DB3HM mailto:
Manfred...@rz-online.de
http://rz-home.de/mhaertel