FMUSER Wirless Transmit video și audio mai ușor!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> Albaneză
ar.fmuser.org -> arabă
hy.fmuser.org -> Armeană
az.fmuser.org -> azeră
eu.fmuser.org -> bască
be.fmuser.org -> bielorusă
bg.fmuser.org -> Bulgarian
ca.fmuser.org -> catalană
zh-CN.fmuser.org -> Chineză (simplificată)
zh-TW.fmuser.org -> Chineză (tradițională)
hr.fmuser.org -> croată
cs.fmuser.org -> cehă
da.fmuser.org -> Daneză
nl.fmuser.org -> Dutch
et.fmuser.org -> estonă
tl.fmuser.org -> filipinez
fi.fmuser.org -> finlandeză
fr.fmuser.org -> Franceză
gl.fmuser.org -> Galeză
ka.fmuser.org -> Georgiană
de.fmuser.org -> germană
el.fmuser.org -> greacă
ht.fmuser.org -> Creole haitian
iw.fmuser.org -> ebraică
hi.fmuser.org -> Hindi
hu.fmuser.org -> Maghiară
is.fmuser.org -> islandeză
id.fmuser.org -> indoneziană
ga.fmuser.org -> irlandeză
it.fmuser.org -> Italiană
ja.fmuser.org -> japoneză
ko.fmuser.org -> coreeană
lv.fmuser.org -> letonă
lt.fmuser.org -> lituaniană
mk.fmuser.org -> macedoneană
ms.fmuser.org -> Malay
mt.fmuser.org -> malteză
no.fmuser.org -> norvegiană
fa.fmuser.org -> persană
pl.fmuser.org -> poloneză
pt.fmuser.org -> portugheză
ro.fmuser.org -> Română
ru.fmuser.org -> rusă
sr.fmuser.org -> sârbă
sk.fmuser.org -> slovacă
sl.fmuser.org -> Slovenă
es.fmuser.org -> spaniolă
sw.fmuser.org -> Swahili
sv.fmuser.org -> suedeză
th.fmuser.org -> Thai
tr.fmuser.org -> turcă
uk.fmuser.org -> ucraineană
ur.fmuser.org -> Urdu
vi.fmuser.org -> Vietnameză
cy.fmuser.org -> galeză
yi.fmuser.org -> idiș
Codul open source live555 este SDK-ul folosit pentru a implementa funcția de transmisie media streaming. Utilizați jocul Common.cpp din folderul teSTProgs din SDK pentru a proiecta modulul de transmisie al set-top box-ului IP TV și, împreună cu modulul de redare, constituie playerul media de streaming al procesului de set-top box IPTV. playCommon. cpp este un pod care conectează serverul și clientul. Principiul său de lucru este că atunci când clientul solicită date de la server, acesta obține informațiile de descriere SDP de la adresa URL a serverului și creează o sesiune multimedia bazată pe SDP și, în final, redă fluxul de date.
a introdus procesul de proiectare a playerului media de streaming IPTV set-top box, utilizând funcția playCommON.cpp în codul open source live555, combinat cu proiectarea structurii software a set-top box-ului IPTV, a dezvoltat modulul de transmisie al set-top box IPTV . Apoi, modulul de transmisie este conectat cu middleware-ul prin coada de mesaje și, în același timp, este conectat cu modulul de redare prin funcția de intrare a modulului de redare și, în final, constituie playerul media de streaming al set-top box-ului IPTV. Jucătorul a fost testat și are performanțe stabile.
1 set-top box IPTV pentru streaming media player design
1. 1 structură software de set-top box IPTV
Codul software al set-top boxului este împărțit în 4 părți: driver hardware, sistem de operare, middleware, strat de aplicație.
1) Driverul hardware conectează hardware-ul de bază și sistemul de operare superior. 2) Sistem de operare Codul open source gratuit Linux este utilizat aici. 3) Middleware Stratul de adaptare a software-ului care izolează stratul superior al aplicației de sistemul de operare subiacent și hardware. Modulele de bază ale middleware-ului includ în principal: (1) Browser: Obțineți adresa URL de pe server și afișați pagina EPG corespunzătoare. (2) Gestionarea interfeței grafice a utilizatorului: oferă funcții grafice precum controlul interfeței utilizatorului (cum ar fi butoane, liste) și desenarea imaginilor grafice pentru aplicații. 4) Stratul aplicației realizează redarea fișierelor media audio și video.
1.2 Structura sistemului de redare media IPTV set-top box
În codul open source Live555, playCommon.cpp realizează funcția de a utiliza un computer ca terminal de recepție, de a primi și de a juca cu software-ul VLC și, în cele din urmă, de a-l afișa pe computer. Conținutul cercetării este de a integra playCommon.cpp în codul software al set-top box-ului și, în cele din urmă, de a realiza funcția de a folosi set-top box-ul IPTV ca terminal de recepție, de a-l reda și de a-l afișa pe televizor. Acest lucru propune noi cerințe pentru proiectarea codului: Pe de o parte, playCommon.cpp obține adresa URL a serverului introducând rtsp: // adresa IP locală: numărul portului / numele fișierului care trebuie redat în coloana RTSP a VLC . Dobândit. Cu toate acestea, pentru set-top box-ul IPTV, adresa URL obținută de modulul de transmisie este adresa URL corespunzătoare atunci când utilizatorul selectează programul de pe EPG prin telecomandă. Această adresă URL este citită de browser în middleware, deci este necesar să conectați middleware-ul și modulul de transmisie să se ridice. Pe de altă parte, fluxul de date trimis de playCommon.cpp este primit și redat prin VLC. Pentru set-top box-urile IPTV, fluxul de date trimis de modulul de transmisie este primit și redat prin modulul de redare. Prin urmare, este necesar să conectați modulul de transmisie și modulul de redare.
Pentru a conecta middleware-ul, modulul de ieșire și modulul de redare, este proiectată o coadă de mesaje pentru a realiza comunicarea datelor între aceste trei module. În plus, pt hread create () este, de asemenea, proiectat în program pentru a crea thread rt spmain () pentru a realiza simultanitatea programului.
1.3 Analiza structurii programului
1.3.1 Modulul de transmisie.
1) funcția principală (1) void initMsgQ () inițializează coada de mesaje. dataQid reprezintă coada de mesaje a datelor, care conține unele date transmise în rețea. În cele din urmă, datele din coada de mesaje sunt trimise jucătorului prin funcția de trimitere a datelor către jucător (). msgkeyQid reprezintă coada de mesaje a valorii cheii de mesaj. Modulul de transmisie primește comanda valorii cheii telecomenzii obținută din middleware și o trimite jucătorului pentru a realiza operații de avans rapid, derulare înapoi, oprire și redare. fromeMiddleQid reprezintă coada de mesaje a middleware-ului. Modulul de transmisie primește adresa URL trimisă din middleware ca adresă de destinație atunci când jucătorul client solicită date de la server. playerStateQid reprezintă coada de mesaje a stării de joc. Modulul de transmisie este utilizat pentru a trimite și primi starea jucătorului și pentru a controla dacă jucătorul este la cerere, în direct sau în schimbul de timp. (2) phread_create (& g_session_thread_info, & tattr, (void * (*) (void *)) rtsp_main, (void *) & urlInform); Creați rtsp_main () fir. Asigurați-vă că comunicarea cozii de mesaje și transmiterea mediului de difuzare rulează simultan.
2) funcția rtsp_main. (1) recvMiddlewareMsg (fromeMiddleQid, url): valoarea adresei URL transmise din middleware este atribuită variabilei url. (Definiția adresei URL este completată în middleware, deci trebuie obținută din middleware); (2) funcția playCommon.cpp: Când clientul trimite o cerere către server, acesta răspunde la cerere, creează o sesiune media și redă fluxul de date. (3) main_player_entry (gTrans. First Create): clientul primește fluxul și apelează funcția de intrare a playerului pentru a inițializa playerul. (4) void send_data_to_player (): apelați playerul, trimiteți datele primite de pe Internet către player și începeți să jucați.
|
Introduceți adresa de e-mail pentru a primi o surpriză
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> Albaneză
ar.fmuser.org -> arabă
hy.fmuser.org -> Armeană
az.fmuser.org -> azeră
eu.fmuser.org -> bască
be.fmuser.org -> bielorusă
bg.fmuser.org -> Bulgarian
ca.fmuser.org -> catalană
zh-CN.fmuser.org -> Chineză (simplificată)
zh-TW.fmuser.org -> Chineză (tradițională)
hr.fmuser.org -> croată
cs.fmuser.org -> cehă
da.fmuser.org -> Daneză
nl.fmuser.org -> Dutch
et.fmuser.org -> estonă
tl.fmuser.org -> filipinez
fi.fmuser.org -> finlandeză
fr.fmuser.org -> Franceză
gl.fmuser.org -> Galeză
ka.fmuser.org -> Georgiană
de.fmuser.org -> germană
el.fmuser.org -> greacă
ht.fmuser.org -> Creole haitian
iw.fmuser.org -> ebraică
hi.fmuser.org -> Hindi
hu.fmuser.org -> Maghiară
is.fmuser.org -> islandeză
id.fmuser.org -> indoneziană
ga.fmuser.org -> irlandeză
it.fmuser.org -> Italiană
ja.fmuser.org -> japoneză
ko.fmuser.org -> coreeană
lv.fmuser.org -> letonă
lt.fmuser.org -> lituaniană
mk.fmuser.org -> macedoneană
ms.fmuser.org -> Malay
mt.fmuser.org -> malteză
no.fmuser.org -> norvegiană
fa.fmuser.org -> persană
pl.fmuser.org -> poloneză
pt.fmuser.org -> portugheză
ro.fmuser.org -> Română
ru.fmuser.org -> rusă
sr.fmuser.org -> sârbă
sk.fmuser.org -> slovacă
sl.fmuser.org -> Slovenă
es.fmuser.org -> spaniolă
sw.fmuser.org -> Swahili
sv.fmuser.org -> suedeză
th.fmuser.org -> Thai
tr.fmuser.org -> turcă
uk.fmuser.org -> ucraineană
ur.fmuser.org -> Urdu
vi.fmuser.org -> Vietnameză
cy.fmuser.org -> galeză
yi.fmuser.org -> idiș
FMUSER Wirless Transmit video și audio mai ușor!
Contact
Adresa:
Nr. 305 Clădirea HuiLan nr. 273 Huanpu Road Guangzhou China 510620
Categorii
Stiri lunare via e-mail