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š
HLS in Http Live Streaming sta protokola za pretakanje v realnem času, ki ga je določil Apple. HLS se izvaja na podlagi protokola HTTP. Vsebina prenosa vključuje dva dela, eden je opisna datoteka M3U8, drugi pa predstavnostna datoteka TS.
1. Datoteka M3U8
Predstavnostna datoteka je opisana v besedilu, ki je sestavljeno iz vrste oznak.
#EXTM3U
# EXT-X-CILJ TRAJANJA: 5
#EXTINF: 5,
./0.ts
#EXTINF: 5,
./1.ts
# EXTM3U: Prva vrstica vsake datoteke M3U8 mora biti ta oznaka.
# EXT-X-TARGETDURATION: Določite največjo dolžino časa segmenta medija (v sekundah). Čas, določen v #EXTINF, mora biti manjši ali enak tej največji vrednosti. Ta vrednost se lahko prikaže samo enkrat.
#EXTINF: Opišite dolžino posamezne predstavnostne datoteke. Sledijo predstavnostne datoteke, na primer ./0.ts
Lahko ga distribuira HTTP v napravi iOS in Mac. Standard seznama predvajanja je datoteka m3u8, razširjena za m3u, predstavnostna datoteka pa je datoteka MPEG2-TS ali AAC (samo zvok).
Obstajata dva scenarija uporabe datotek m3u8:
Tok prilagoditve z več stopnjami,
#EXTM3U
# EXT-X-STREAM-INF: PROGRAM-ID = 1, BANDWIDTH = 1280000
# EXT-X-STREAM-INF: PROGRAM-ID = 1, BANDWIDTH = 2560000
# EXT-X-STREAM-INF: PROGRAM-ID = 1, BANDWIDTH = 7680000
# EXT-X-STREAM-INF: PROGRAM-ID = 1, BANDWIDTH = 65000, CODECS = "mp4a.40.5"
http://example.com/audio-only.m3u8
Enotni prilagoditveni tok
#EXTM3U
# EXT-X-CILJ TRAJANJA: 5220
#EXTINF: 5220,
http://media.example.com/entire.ts
# EXT-X-ENDLIST
Mednarodna organizacija za standardizacijo opredeljuje ta dokument RFC:
http://tools.ietf.org/html/draft-pantos-http-live-streaming-06
Datoteka m3u8 je razširitev datoteke m3u. Razširjene ključne besede so opredeljene v rfc:
med njimi:
# EXT-X-CILJNO TRAJANJE
Določite najdaljše trajanje vsake TS.
# EXT-X-MEDIA-SEQUENCE
Določite serijsko številko prve datoteke v trenutni datoteki m3u8. Vsaka datoteka ts ima določeno in enolično serijsko številko v datoteki m3u8. Serijska številka se uporablja za preklop hitrosti kode za poravnavo med MBR.
# EXT-X-KEY
Določite način šifriranja in URL datoteke ključa, ki se uporablja za pridobitev datoteke 16 ključev za dekodiranje datoteke ts.
Lastnosti:
POSTOPEK
URL
# EXT-X-PROGRAM-DATUM-ČAS
Absolutni čas prve datoteke
# EXT-X-ALLOW-CACHE
Ali dovoliti predpomnilnik.
# EXT-X-ENDLIST
Označuje konec datoteke m3u8. Live m3u8 nima te oznake.
# EXT-X-STREAM-INF
Lastnosti:
BANDWIDTH določa bitno hitrost
PROGRAM-ID enolična ID
CODECS določa vrsto kodiranja toka
# EXT-X-DISKONTINUITETA
Ko naletimo na oznako, so se spremenili naslednji atributi:
format datoteke
število in vrsta skladb
kodiranje parametrov
kodiranje zaporedja
zaporedje časovnega žiga
# EXT-X-VERSION Ta atribut lahko uporabljate ali ne, ne morete ga imeti
M3U8 je razdeljen na najvišjo raven M3U8 in drugo stopnjo M3U8. Vrhunski M3U8 se v glavnem uporablja za večstopenjsko prilagajanje. M3U8 druge stopnje je prava datoteka rezine.
Privzeto bo odjemalec najprej izbral zahtevo z najvišjo bitno hitrostjo. Če ugotovi, da bitne hitrosti ni mogoče doseči, bo zahteval tok z nizko bitno hitrostjo
Datoteka M3U8 najvišje ravni, ki se dejansko uporablja, je naslednja:
#EXTM3U
# EXT-X-STREAM-INF: PROGRAM-ID = 201273221265, BANDWIDTH = 358400
11.m3u8
# EXT-X-STREAM-INF: PROGRAM-ID = 201273221265, BANDWIDTH = 972800
22.m3u8
Zgornja datoteka M3U8 zgoraj določa dve datoteki druge ravni, 11.m3u8 in 22.m3u8, odjemalec pa bo izbral eno od njih, da bo dobil njeno vsebino.
Vsebina sekundarne datoteke M3U8 je naslednja:
#EXTM3U
# EXT-X-VERZIJA: 1
# EXT-X-CILJ TRAJANJA: 10
# EXT-X-MEDIA-SEQUENCE: 0
#EXTINF: 3,
1-4.ts
#EXTINF: 8,
1-6.ts
#EXTINF: 8,
1-8.ts
#EXTINF: 8,
1-10.ts
#EXTINF: 8,
1-12.ts
#EXTINF: 8,
1-14.ts
#EXTINF: 8,
1-16.ts
#EXTINF: 9,
1-18.ts
#EXTINF: 6,
1-20.ts
#EXTINF: 8,
1-22.ts
#EXTINF: 9,
1-24.ts
#EXTINF: 3,
1-26.ts
# EXT-X-ENDLIST
Ko odjemalec dobi zgornjo sekundarno datoteko M3U8, bo še naprej zahteval datoteko v njej in jo nato lahko predvajal.
Zgoraj gre za situacijo na zahtevo in situacijo neposrednega predvajanja, v datoteki M3U8 bodo atributi, ki sporočajo, da je v živo, in odjemalec bo občasno zahteval nove datoteke M3U8.
// Ko HLS uresniči oddajo na zahtevo in oddajo v živo, razlika v datoteki M3U8
1. Opis težave
Pred kratkim sem opravil preizkus transkodiranega rezanja z uporabo HLS (HTTP Live Streaming) za oddajanje v živo. Vsak čas segmentacije TS traja 10 s, v skladu z datotekami segmentacije TS pa se ustvarijo naslednje datoteke m3u8 v živo
Kopirajte kodo
#EXTM3U
# EXT-X-MEDIA-SEQUENCE: 1
# EXT-X-CILJ TRAJANJA: 10
#EXTINF: 10
hls / 1.ts
#EXTINF: 10
hls / 2.ts
#EXTINF: 10
hls / 3.ts
#EXTINF: 10
hls / 4.ts
#EXTINF: 10
hls / 5.ts
#EXTINF: 10
hls / 6.ts
#EXTINF: 10
hls / 7.ts
#EXTINF: 10
hls / 8.ts
#EXTINF: 10
hls / 9.ts
#EXTINF: 10
hls / 10.ts
Kopirajte kodo
Zgornjo datoteko m3u8 shranite kot živo.m3u8, jo postavite v imenik dokumentov Apache in z VLC predvajajte naslednji URL:
http://localhost/live.m3u8
Preizkus je pokazal, da prva datoteka, ki se je začela predvajati, ni bila 1.ts. Po več testih je bilo ugotovljeno, da:
Dokler je na seznamu več kot tri datoteke, se vedno predvajajo zadnje tri datoteke na seznamu
2. Reševanje problemov
Zelo žalostno je, da po iskanju po internetu nisem našel nobenih učinkovitih informacij. Prijatelj je naletel na isto situacijo, ali je po razrešitvi delil svoje izkušnje?
Po posvetu s kolegom je kolega dejal, da je to mogoče, ker je treba seznam datotek v živo m3u8 posodobiti sproti. Če naredimo test, lahko na koncu najprej dodamo # EXT-X-ENDLIST. Ta metoda je bila preizkušena. Deluje, vendar to ni več način m3u8 v živo
Po ponovnem iskanju po internetu sem potrdil, da sem končno našel opis m3u8 v živo
Seznam predvajanja v živo (drsno okno)
Za seje v živo se indeksna datoteka posodobi tako, da se iz datoteke odstranijo predstavnostni URI-ji, ko se ustvarijo in dajo na voljo nove predstavnostne datoteke.
Pomembno: Oznaka EXT-X-ENDLIST ni na seznamu predvajanja v živo, kar pomeni, da bodo nove predstavnostne datoteke dodane v indeksno datoteko, ko bodo na voljo.
Glejte seznam 3 za primer seznama predvajanja v živo, kot bi bil prikazan na začetku seje.
Seznam 3 seznama predvajanja v živo na začetku seje.
Kopirajte kodo
#EXTM3U
# EXT-X-CILJ TRAJANJA: 10
# EXT-X-VERZIJA: 3
# EXT-X-MEDIA-SEQUENCE: 1
#EXTINF: 10,
fileSequence1.ts
#EXTINF: 10,
fileSequence2.ts
#EXTINF: 10,
fileSequence3.ts
#EXTINF: 10,
fileSequence4.ts
#EXTINF: 10,
fileSequence5.ts
Kopirajte kodo
Vrednost oznake EXT-X-MEDIA-SEQUENCE MORA povečati za 1 za vsak medij URI, ki je odstranjen iz datoteke s seznamom predvajanja. URI medijev je treba odstraniti iz datoteke s seznamom predvajanja v vrstnem redu, kot so prikazani na seznamu predvajanja. Posodobljena indeksna datoteka predstavlja premikajoče se okno v neprekinjen tok. Ta vrsta seje je primerna za neprekinjene oddaje.
Tu je isti seznam predvajanja po posodobitvi z novimi medijskimi URI-ji:
Seznam 4 Seznam predvajanja v živo po posodobitvi URI-jev medijev.
Kopirajte kodo
#EXTM3U
# EXT-X-CILJ TRAJANJA: 10
# EXT-X-VERZIJA: 3
# EXT-X-MEDIA-SEQUENCE: 2
#EXTINF: 10,
fileSequence2.ts
#EXTINF: 10,
fileSequence3.ts
#EXTINF: 10,
fileSequence4.ts
#EXTINF: 10,
fileSequence5.ts
#EXTINF: 10,
fileSequence6.ts
Kopirajte kodo
3. živeti m3u8 posodobitev pravil
Seznam živih datotek m3u8 je treba nenehno posodabljati, posodobiti pravila:
Odstranite zgornjo datoteko (pomislite na predvajanje) s seznama predvajanja
Nenehno posodabljajte oznako EXT-X-MEDIA-SEQUENCE, povečajte za 1
4. Poskus
Napišite majhen program za ustvarjanje m3u8 v živo za testiranje
Uporaba:
m3u8_gen.exe start_num seznam_števanje trajanje ime datoteke.m3u8 [predpona]
Primer uporabe:
m3u8_gen.exe 1 3 10 v živo.m3u8 hls /
Ustvari datoteko live.m3u8 kot
Kopirajte kodo
#EXTM3U
# EXT-X-MEDIA-SEQUENCE: 1
# EXT-X-CILJ TRAJANJA: 10
#EXTINF: 10
hls / 1.ts
#EXTINF: 10
hls / 2.ts
#EXTINF: 10
hls / 3.ts
Kopirajte kodo
Napišite BAT skript za posodobitev datoteke live.m3u8 vsakih 10s
Kopirajte kodo
@ Echo off
f
|
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