Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
PROGRAMSKA
PODRŠKA U TELEVIZIJI
I OBRADI SLIKE
Softver digitalnog TV prijemnika
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 2/15
DTV Softver
Kao i u računaru, u DVB prijemniku operativni sistem kontroliše osnovne komponente uređaja neophodne za pravilno izvršavanje aplikacija.
STB uređaj sa jednostavnim operativnim sistemom je dovoljan za osnovno praćenje digitalnog TV programa.
Pouzdanost je jedna od najvažnijih karakteristika DTV prijemnika. Za razliku od PC korisnika, TV gledaoci ne očekuju i nisu spremni da prihvate pojavu greški u radu sistema koje zahtevaju resetovanje uređaja.
DTV prijemnik mora reagovati brzo na zadate komande, jer gledalac očekuje da se promena TV kanala obavlja gotovo trenutno.
DTV OS mora biti imati male zahteve sa aspekta korištenja sistemskih resursa
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 3/15
Arhitektura DTV softvera
Hardver DTV prijemnika
Rukovaoci sistemskim spregama
(System drivers)
Rukovaoci DTV blokovima
(DTV drivers)
Rukovaoci blokovima za uslovni pristup
(CA drivers)
Abstrakcija hardvera (HAL)
Operativni sistem Softver za kontrolu DTVSoftver za kontrolu uslovnog pristupa
Srednji sloj – Middleware(Virtualna mašina za TV aplikacije)
Programska sprega za razvoj aplikacija (API)
TV vodič Zapper VoDTV-centric
IgriceHbbTV...
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 4/15
Arhitektura DTV softvera
Hardver DTV prijemnika
Rukovaoci sistemskim spregama
(System drivers)
Rukovaoci DTV blokovima
(DTV drivers)
Rukovaoci blokovima za uslovni pristup
(CA drivers)
Abstrakcija hardvera (HAL)
Operativni sistemSoftver za kontrolu DTV Softver za kontrolu
uslovnog pristupa
Srednji sloj – Middleware(Virtualna mašina za TV aplikacije)
Programska sprega za razvoj aplikacija (API)
TV vodič VoD VoDTV-centric
IgriceHbbTV...
DirectFB
Zapper
Linux TDP API - Marvell
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 5/15
Operativni sistem
OS je prvi softverski sloj iznad hardverskih drajvera.
Najvažnija uloga OS u DTV prijemniku je da obezbedi okruženje za podršku
multitasking zahteva DTV softvera što obuhvata upravljanje procesima, memorijom
i sistemskim resursima
Ograničeni resursi DTV prijemnika zahtevaju da memorija koju koristi OS bude
minimalna i da OS obezbedi što veću brzinu procesora (minimalan OS overhead).
Apstrakcija programskih resursa (programske niti, semafori, vremenske kontrole,...)
Pomocni programski alati (npr. busybox)
Najzastupljeniji operativni sistem koji se koristi je Linux
Najpoznatiji OS koji se koriste u DTV uređajima:
pSOS
Nucleus+
Linux
Windows CE / Mobile
Novo rešenje – Android!
Iznad OS nalazi se tzv. middleware sloj, koji obezbeđuje usluge višeg nivoa koje su
sastavni deo DTV funkcionalnosti i omogućava izvršavanje naprednih DTV
aplikacija.
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 6/15
Sloj za abstrakciju hardvera (HAL)
Omogućava razvoj viših programskih slojeva bez detaljnog poznavanja arhitekture korištene platforme
Modularnost programskih blokova
Smanjuje vreme koje je potrebno uložiti u razvoj
Pogodnost ponovne upotrebe već razvijenog softvera na platformama iz iste familije
Jednostavnostavno proširenje novim opcijama
Podela HAL sloja:
Sistemske funkcije (programske niti, semafori, vremenske kotrole)
DVB programski blokovi
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 7/15
Srednji sloj - Middleware
Srednji sloj predstavlja najkompleksniju i najvredniju komponenu programske podrške.
Kontrola i realizacija najvažnijih operacija se odvija u okviru ovog sloja (raščlanjivanje
DVB podataka, kontrola pristupa i organizacija servisa, prikupljanje EIT podataka,
podrška za snimanje, kontrola podsetnika, dekodovanje multimedijalnih sadžaja)
Komunikacijom sa nižim slojevima softvera se kontroliše rad hardverskih blokova
Obezbeđuje potrebne programske sprege ka višim programskim slojevima (grafičkoj
korisničkoj sprezi)
Većina proizvođača DTV softvera koji se koristi u DTV prijemnicima ne ograničava svoje
usluge samo na osnovne OS funkcije već se OS prodaje kao deo kompletnog paketa
koji uključuje i tzv. middleware sloj.
Middleware obezbeđuje odgovarajući API koji apstrakuje funkcionalnost TV uređaja, HW
platforme, kao i OS funkcija, čime je omogućeno da proizvođači aplikativnog DTV
softvera ne moraju da poznaju hardverske specifičnosti DTV prijemnika. Ovim je
omogućeno da se aplikacije koje koriste isti middleware API mogu izvršavati na različitim
hardverskim platformama, tj. middleware formira virtuelnu mašinu.
Osnovni problem kod middleware-a je nepostojanje jedinstvenog standarda. Mnogi
proizvođači softvera nude svoja rešenja koja su međusobno nekompatibilna.
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 8/15
Dostupna rešenja srednjeg sloja
Najpoznatija Middleware rešenja:
DVB-MHP
DVB-GEM
OpenTV
MediaHighway
CISCO PowerTV
DASE
Cabot
IWEDIA
Situacija na tržištu
se stalno menja
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 9/15
Inicijalizacija softvera
00111101
01101010
11010101
10101010
10101101
110101010x0000
0x3fffRAM
• CUP programski brojač
se postavlja na
početnu adresu
programa koji treba da
se izvrši.
• OS bootloader kopira
izvršni program (FLASH,
NFS, USB ) u radnu
memoriju
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 10/15
Organizacija softvera rukovalaca
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 11/15
Primer SW apstrakcija: LinuxTV API
LinuxTV je neprofitni linux projekat nezavisan od proizvođača, koji ima za cilj standardizaciju Linux DVB API-ja
LinuxTV API je platformski nezavisan skupfunkcija na nivou linux kernela, koji omogućavakontrolu digitalnih TV uređaja na PC-u.
Jednom napisana aplikacija po LinuxTV DVB standardu može se izvršavati na različitimplatformama koje podržavaju LinuxTV API skupfunkcija
LinuxTV nije skup funkcija koji podržava razvojkompletne multimedijalne programske podrške. Zarad sa grafičkim elementima se koristi DirectFBbiblioteka funkcija
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 12/15
LinuxTV API arhitektura
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 13/15
Koncept LinuxTV DVB prijemnika
Svaki DVB prijemnik je organizovan i predstavljen u linux operativnom sistemu preko nekoliko uređaja
Frontend API Memory Input API Demux API Common Interface API Audio API Video APINetwork API
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 14/15
Linux DVB devices
Svi linux device-ovi se nalaze
u /dev/dvb/
Osnovni device-ovi:
Frontend0
Demux0
Video0
Audio0
Dvr0
Net0
Programska podrška u televiziji i obradi slike (E1) – 2015/2016 15/15
Gstreamer biblioteka
Framework za kreiranje multimedijalnih aplikacija
Podržava veliki broj ‚‚plugin‚‚-a za različite vrste funkcija i veliki broj dostupnih a/v kodeka
Osnovne karakteristike Jednostavna i moćna biblioteka
Objektno orjentisana
Lako proširiva
Pruža velike performanse na različitim platformama