FMUSER brezžični prenos video in zvoka lažje!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikanščina
sq.fmuser.org -> albanski
ar.fmuser.org -> arabščina
hy.fmuser.org -> Armenščina
az.fmuser.org -> azerbajdžanski
eu.fmuser.org -> baskovščina
be.fmuser.org -> belorusko
bg.fmuser.org -> bolgarščina
ca.fmuser.org -> katalonščina
zh-CN.fmuser.org -> kitajščina (poenostavljena)
zh-TW.fmuser.org -> kitajščina (tradicionalno)
hr.fmuser.org -> hrvaški
cs.fmuser.org -> češčina
da.fmuser.org -> danski
nl.fmuser.org -> nizozemščina
et.fmuser.org -> estonščina
tl.fmuser.org -> filipinsko
fi.fmuser.org -> finski
fr.fmuser.org -> francosko
gl.fmuser.org -> galicijščina
ka.fmuser.org -> gruzijski
de.fmuser.org -> nemščina
el.fmuser.org -> grščina
ht.fmuser.org -> haitijska kreolščina
iw.fmuser.org -> hebrejščina
hi.fmuser.org -> hindujščina
hu.fmuser.org -> madžarščina
is.fmuser.org -> islandski
id.fmuser.org -> indonezijski
ga.fmuser.org -> irski
it.fmuser.org -> italijanščina
ja.fmuser.org -> japonski
ko.fmuser.org -> korejski
lv.fmuser.org -> latvijski
lt.fmuser.org -> litovščina
mk.fmuser.org -> makedonščina
ms.fmuser.org -> malajščina
mt.fmuser.org -> malteščina
no.fmuser.org -> norveščina
fa.fmuser.org -> perzijski
pl.fmuser.org -> poljščina
pt.fmuser.org -> portugalščina
ro.fmuser.org -> romunščina
ru.fmuser.org -> ruščina
sr.fmuser.org -> srbščina
sk.fmuser.org -> slovaški
sl.fmuser.org -> slovenščina
es.fmuser.org -> španščina
sw.fmuser.org -> svahili
sv.fmuser.org -> švedščina
th.fmuser.org -> tajska
tr.fmuser.org -> turški
uk.fmuser.org -> ukrajinski
ur.fmuser.org -> urdujščina
vi.fmuser.org -> Vietnamščina
cy.fmuser.org -> valižanščina
yi.fmuser.org -> jidiš
Pred kratkim sem začel stikati s projektom za video v živo, povzel sem tudi nekaj konceptov, tehnologij in rešitev, povezanih z video v živo.
Najprej razumejte koncept videa v živo. Več pogostih video protokolov je: RTMP, http-flv, HLS, RTP / RTCP.
Nato bomo razložili celoten postopek oddajanja v živo in s tem povezane tehnologije.
1, video protokol v živo
Na področju oddajanja v živo obstajata dve vrsti oddajanja v živo: interaktivno oddajanje v živo in neinteraktivno oddajanje v živo.
Neinteraktivno oddajanje v živo (na primer: parada v živo, oddajanje NBA v živo, oddaja v ligi prvakov v živo itd.) Ni zelo interaktivno in omogoča zamudo 10 sekund ali več. Zanj je značilno razmeroma malo virov in je primeren za večkanalno prekodiranje (uporabniki si ga lahko ogledajo glede na omrežne pogoje).
Tipični prizori interaktivnega oddajanja v živo vključujejo oddajanje v živo, oddajanje iger v živo itd. Zaradi visokih zahtev za interakcijo med sidrom in občinstvom je treba te oddaje v živo zakasniti v 5S. Značilnosti interaktivnega oddajanja v živo so: več virov, ki niso primerni za večkanalno prekodiranje, vmesni strežnik samo kot tranzitna vloga.
Medij za prenos vsebin v živo je omrežje, za prenos videa ali zvoka v omrežju pa so potrebni ustrezni protokoli. Trenutno so običajni protokoli, primerni za prizore v živo, naslednji.
1. RTMP protokol (ne podpira HTML 5, podpira flash)
RTMP je pretočni medijski protokol, ki je Adobeov patentni protokol. Na podlagi TCP je zelo priljubljen na Kitajskem.
Priljubljeni razlog: podpora odprtokodne programske opreme in odprtokodne knjižnice je stabilna in popolna, najpogosteje uporabljene rešitve za pretakanje in pretakanje pa lahko v bistvu delujejo stabilno. Na primer: odprtokodna knjižnica potisnega toka librtmp, na strani storitve je vtičnik nginx RTMP, vlečni tok ima knjižnico predvajanja ijkplayer.
2. Http-flv protokol (ne podpira HTML 5, podpira flash)
Se pravi za uporabo protokola HTTP za pretakanje medijske vsebine. HTTP je preprostejši in bolj znan kot RTMP. Zakasnitev vsebine je lahko tudi 2-5 sekund, hitrost odpiranja pa je hitrejša, saj sam HTTP nima zapletene interakcije stanja. Torej je z vidika zakasnitve http-flv boljši od RTMP.
3. HLS protokol (podpora za HTML, podpora za Flash)
Pretočno predvajanje HTTP v živo je protokol za prenos pretočnih medijev, ki temelji na HTTP-ju, ki ga predlaga Apple. HLS ima zelo veliko prednost: HTML5 je mogoče neposredno odpreti in predvajati; to pomeni, da je mogoče povezavo v živo deliti prek wechata in drugega posredovanja, brez potrebe po namestitvi neodvisne aplikacije z brskalnikom, zato je zelo priljubljena. Aplikacija Social Live, HLS je samo potrebna. URL pretočnega predvajanja v živo, ki temelji na HLS, je datoteka m3u8, ki vsebuje več nedavnih majhnih video datotek TS. Zakasnitev tega načina predvajanja je sorazmerno velika (kar je povezano z velikostjo datoteke TS) in lahko doseže 5-7 sekundno zakasnitev v istem mestnem omrežju.
4. RTP / RTCP protokol
Prenosni protokol v realnem času je protokol transportne plasti za večpredstavnostni tok podatkov v internetu. RTCP prenaša signale interaktivnega nadzora, RTP pa dejanske medijske podatke.
RTP se pogosto uporablja v video nadzoru, video konferencah in IP telefonu, ker je ena pomembnih izkušenj video konferenc in IP telefona močna vsebina v realnem času.
V primerjavi z zgornjimi tremi protokoli je ena pomembnih razlik med RTP in njimi ta, da se protokol UDP privzeto uporablja za prenos podatkov, medtem ko RTMP in HTTP temeljita na protokolu TCP.
Uporabite analizo scenarija: prizor toka avdio in video posnetkov v realnem času ne potrebuje zanesljivega jamstva, zato ni potrebe po mehanizmu ponovnega oddajanja. Ni pomembno, da si sliko in zvok ogledate v realnem času, izgubite nekaj vsebine, ko se omrežje trese, zameglite sliko in začetni zaslon. Za ponovno pošiljanje bo TCP povzročil zamudo in asinhronost. Če določen del vsebine prispe po eni sekundi zaradi ponovne oddaje, bo celoten pogovor zakasnjen za eno sekundo. Z omrežnim tresenjem se bo zakasnitev povečala na dve ali tri sekunde. Če odjemalec predvajanja ne obravnava, bo resno prizadeta neposredna izkušnja oddajanja. Kako optimizirati, bo razloženo v naslednjem članku.
Zaključek: če je izbran protokol oddajanja v živo, če je izbran RTMP ali http-flv, to pomeni, da vsebina zamuja 2-5 sekund, toda kar zadeva odprto zakasnitev, je http-flv boljši od RTMP . HLS ima zakasnitev vsebine 5-7 sekund. Če izberete RTP za oddajo v živo, lahko oddajo v živo zakasnite v 1 sekundi. Vendar kolikor vemo, glavni proizvajalci CDN ne podpirajo oddajanja v živo na podlagi RTP, zato je trenutno domači mainstream RTMP ali http-flv.
2, postopek predvajanja video posnetkov v živo
Tehnični postopek, povezan z videom v živo, je: pridobivanje video toka v realnem času --- kodiranje video toka --- prenos video toka --- dekodiranje video toka --- predvajanje videa.
1. Ideja o zajemanju videa v realnem času
a) Z nastavitvijo setpreviewcallback v predogledu snemanja s kamero Android je realiziran vmesnik onpreviewframe, ki zajema podatke vsakega video toka v realnem času.
b) S pomočjo medijskega snemalnika Android povežite localocket v funkciji setoutputfile.
c) Način pretočnega medijskega strežnika z uporabo ffmpeg ali getstreamer za pridobivanje videa s kamere.
2. Izvedba kodiranja video stiskanja
a) Brez kodiranja se izvirni video okvir yuv420sp prenese neposredno skozi vtičnico.
b) JEPG stisne prvotni videookvir yuv420sp v H.264 in ga nato prenese.
c) H.264 / avc. Izvirni video okvir yuv420sp se stisne v H.264 in nato prenese. Pogosti odprtokodni kodirniki na osnovi H264 vključujejo JM, x264, t264, hdot264 itd.
d). mpeg4. Stisnite izvirni videookvir yuv420sp v MPEG4 in nato prenesite
3. Ideja o video prenosu
a). prenos vtičnice
b). Prenos HTTP
c). Prenos RTP / RTSP
d). način pretočnega medijskega strežnika, na primer live555 itd
4. Uresničitev video dekodiranja
a). dekodirnik, ki ustreza kodiranju
5. Ideja o predvajanju videa
a). prek Android videoview
b). prek predvajanja medijev Android
c). prilepite sliko okvirja neposredno skozi platno
|
Vnesite e-pošto, da dobite presenečenje
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikanščina
sq.fmuser.org -> albanski
ar.fmuser.org -> arabščina
hy.fmuser.org -> Armenščina
az.fmuser.org -> azerbajdžanski
eu.fmuser.org -> baskovščina
be.fmuser.org -> belorusko
bg.fmuser.org -> bolgarščina
ca.fmuser.org -> katalonščina
zh-CN.fmuser.org -> kitajščina (poenostavljena)
zh-TW.fmuser.org -> kitajščina (tradicionalno)
hr.fmuser.org -> hrvaški
cs.fmuser.org -> češčina
da.fmuser.org -> danski
nl.fmuser.org -> nizozemščina
et.fmuser.org -> estonščina
tl.fmuser.org -> filipinsko
fi.fmuser.org -> finski
fr.fmuser.org -> francosko
gl.fmuser.org -> galicijščina
ka.fmuser.org -> gruzijski
de.fmuser.org -> nemščina
el.fmuser.org -> grščina
ht.fmuser.org -> haitijska kreolščina
iw.fmuser.org -> hebrejščina
hi.fmuser.org -> hindujščina
hu.fmuser.org -> madžarščina
is.fmuser.org -> islandski
id.fmuser.org -> indonezijski
ga.fmuser.org -> irski
it.fmuser.org -> italijanščina
ja.fmuser.org -> japonski
ko.fmuser.org -> korejski
lv.fmuser.org -> latvijski
lt.fmuser.org -> litovščina
mk.fmuser.org -> makedonščina
ms.fmuser.org -> malajščina
mt.fmuser.org -> malteščina
no.fmuser.org -> norveščina
fa.fmuser.org -> perzijski
pl.fmuser.org -> poljščina
pt.fmuser.org -> portugalščina
ro.fmuser.org -> romunščina
ru.fmuser.org -> ruščina
sr.fmuser.org -> srbščina
sk.fmuser.org -> slovaški
sl.fmuser.org -> slovenščina
es.fmuser.org -> španščina
sw.fmuser.org -> svahili
sv.fmuser.org -> švedščina
th.fmuser.org -> tajska
tr.fmuser.org -> turški
uk.fmuser.org -> ukrajinski
ur.fmuser.org -> urdujščina
vi.fmuser.org -> Vietnamščina
cy.fmuser.org -> valižanščina
yi.fmuser.org -> jidiš
FMUSER brezžični prenos video in zvoka lažje!
Kontakt
naslov:
No.305 Soba HuiLan stavba št.273 Huanpu Road Guangzhou Kitajska 510620
Kategorije
Novice