FMUSER Wirless pārraida video un audio vieglāk!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikands
sq.fmuser.org -> albāņu
ar.fmuser.org -> arābu
hy.fmuser.org -> armēņu
az.fmuser.org -> azerbaidžāņu
eu.fmuser.org -> basku valoda
be.fmuser.org -> baltkrievu
bg.fmuser.org -> bulgāru valoda
ca.fmuser.org -> katalāņu
zh-CN.fmuser.org -> ķīniešu (vienkāršotā)
zh-TW.fmuser.org -> ķīniešu (tradicionālā)
hr.fmuser.org -> horvātu
cs.fmuser.org -> čehu
da.fmuser.org -> dāņu
nl.fmuser.org -> holandiešu
et.fmuser.org -> igauņu
tl.fmuser.org -> filipīniešu
fi.fmuser.org -> somu
fr.fmuser.org -> franču valoda
gl.fmuser.org -> galisiešu valoda
ka.fmuser.org -> gruzīnu
de.fmuser.org -> vācu
el.fmuser.org -> grieķu
ht.fmuser.org -> Haiti kreolu
iw.fmuser.org -> ebreju
hi.fmuser.org -> hindi
hu.fmuser.org -> ungāru valoda
is.fmuser.org -> islandiešu
id.fmuser.org -> indonēziešu
ga.fmuser.org -> īru
it.fmuser.org -> itāļu
ja.fmuser.org -> japāņu
ko.fmuser.org -> korejiešu
lv.fmuser.org -> latviski
lt.fmuser.org -> lietuviešu
mk.fmuser.org -> maķedoniešu
ms.fmuser.org -> malajiešu
mt.fmuser.org -> maltiešu
no.fmuser.org -> norvēģu
fa.fmuser.org -> persiešu
pl.fmuser.org -> poļu
pt.fmuser.org -> portugāļu
ro.fmuser.org -> rumāņu
ru.fmuser.org -> krievu valoda
sr.fmuser.org -> serbu
sk.fmuser.org -> slovāku
sl.fmuser.org -> slovēņu
es.fmuser.org -> spāņu
sw.fmuser.org -> svahili
sv.fmuser.org -> zviedru
th.fmuser.org -> taizemiešu
tr.fmuser.org -> turku
uk.fmuser.org -> ukraiņu
ur.fmuser.org -> urdu valoda
vi.fmuser.org -> vjetnamiešu
cy.fmuser.org -> velsiešu
yi.fmuser.org -> jidišs
HLS un Http Live Streaming ir reāllaika straumēšanas protokoli, kurus definē Apple. HLS tiek ieviesta, pamatojoties uz HTTP protokolu. Pārraides saturs ietver divas daļas, viena ir M3U8 apraksta fails, bet otra - TS multivides fails.
1. M3U8 fails
Multivides fails ir aprakstīts tekstā, kas sastāv no tagu sērijas.
#EXTM3U
# EXT-X-MĒRĶA ILGUMS: 5
#EXTINF: 5,
./0.ts
#EXTINF: 5,
./1.ts
# EXTM3U: Katra M3U8 faila pirmajai rindai jābūt šai atzīmei.
# EXT-X-TARGETDURATION: norādiet maksimālo multivides segmenta laika garumu (sekundēs). Laikā, kas norādīts #EXTINF, jābūt mazākam vai vienādam ar šo maksimālo vērtību. Šī vērtība var parādīties tikai vienu reizi.
#EXTINF: aprakstiet viena multivides faila garumu. Tālāk seko multivides faili, piemēram, ./0.ts
To var izplatīt ar HTTP palīdzību iOS ierīcē un mac. Atskaņošanas saraksta standarts ir m3u8 fails, kuru pagarina par m3u, un multivides fails ir MPEG2-TS vai AAC fails (tikai audio).
M3u8 failiem ir divi lietojuma scenāriji:
Vairāku ātrumu adaptācijas plūsma,
#EXTM3U
# EXT-X-STREAM-INF: PROGRAMMAS ID = 1, Joslas platums = 1280000
# EXT-X-STREAM-INF: PROGRAMMAS ID = 1, Joslas platums = 2560000
# EXT-X-STREAM-INF: PROGRAMMAS ID = 1, Joslas platums = 7680000
# EXT-X-STREAM-INF: PROGRAMMAS ID = 1, Joslas platums = 65000, CODECS = "mp4a.40.5"
http://example.com/audio-only.m3u8
Vienas likmes adaptācijas plūsma
#EXTM3U
# EXT-X-MĒRĶA ILGUMS: 5220
#EXTINF: 5220,
http://media.example.com/entire.ts
# EXT-X-ENDLIST
Starptautiskā standartu organizācija definē šo RF dokumentu:
http://tools.ietf.org/html/draft-pantos-http-live-streaming-06
M3u8 fails ir m3u faila paplašinājums. Paplašinātie atslēgvārdi ir definēti RFK:
starp viņiem:
# EXT-X-MĒRĶA ILGUMS
Definējiet katra TS maksimālo ilgumu.
# EXT-X-MEDIA-SEQUENCE
Definējiet pirmā faila sērijas numuru pašreizējā m3u8 failā. Katram ts failam m3u8 failā ir noteikts un unikāls sērijas numurs. Sērijas numuru izmanto, lai mainītu kodēšanas ātrumu izlīdzināšanai MBR laikā.
# EXT-X-KEY
Definējiet šifrēšanas metodi un atslēgas faila URL, ko izmanto, lai iegūtu 16 baitu atslēgas failu, lai atšifrētu ts failu.
Atribūti:
METODE
URL
# EXT-X-PROGRAM-DATE-TIME
Pirmā faila absolūtais laiks
# EXT-X-ALLOW-KACHE
Vai atļaut kešatmiņu.
# EXT-X-ENDLIST
Norāda faila m3u8 beigas. Live m3u8 nav šī taga.
# EXT-X-STREAM-INF
Atribūti:
BANDWIDTH norāda bitu pārraides ātrumu
PROGRAM-ID unikālais ID
CODECS norāda straumes kodēšanas veidu
# EXT-X-PĀRTRAUKŠANA
Atrodoties tagam, ir mainīti šādi atribūti:
faila formāts
sliežu ceļu skaits un tips
kodēšanas parametri
kodēšanas secība
laika zīmoga secība
# EXT-X-VERSION Šo atribūtu var izmantot vai nē, jums to nevar būt
M3U8 ir sadalīts augstākā līmeņa M3U8 un otrā līmeņa M3U8. Augstākā līmeņa M3U8 galvenokārt tiek izmantots daudzpakāpju pielāgošanai. Otrā līmeņa M3U8 ir īsts šķēles fails.
Pēc noklusējuma klients vispirms atlasīs pieprasījumu ar vislielāko bitu pārraides ātrumu. Ja tā konstatē, ka bitu pārraides ātrumu nevar sasniegt, tā pieprasīs straumi ar zemu bitu pārraides ātrumu
Faktiskajā lietošanā esošais augstākā līmeņa M3U8 fails ir šāds:
#EXTM3U
# EXT-X-STREAM-INF: PROGRAMMAS ID = 201273221265, Joslas platums = 358400
11. m3u8
# EXT-X-STREAM-INF: PROGRAMMAS ID = 201273221265, Joslas platums = 972800
22. m3u8
Augšējā līmeņa M3U8 fails iepriekš definē divus otrā līmeņa failus - 11.m3u8 un 22.m3u8, un klients izvēlēsies vienu no tiem, lai iegūtu tā saturu.
Sekundārā M3U8 faila saturs ir šāds:
#EXTM3U
# EXT-X-VERSIJA: 1
# EXT-X-MĒRĶA ILGUMS: 10
# EXT-X-MEDIA-SEQUENCE: 0
#EXTINF: 3,
1-4
#EXTINF: 8,
1-6
#EXTINF: 8,
1-8
#EXTINF: 8,
1-10
#EXTINF: 8,
1-12
#EXTINF: 8,
1-14
#EXTINF: 8,
1-16
#EXTINF: 9,
1-18
#EXTINF: 6,
1-20
#EXTINF: 8,
1-22
#EXTINF: 9,
1-24
#EXTINF: 3,
1-26
# EXT-X-ENDLIST
Pēc tam, kad klients saņem iepriekš minēto sekundāro M3U8 failu, tas turpinās pieprasīt failu iekšpusē, un pēc tam to varēs atskaņot.
Iepriekš minēts par situāciju pēc pieprasījuma un tiešraides situāciju, failā M3U8 būs atribūti, kas norāda, ka tas ir tiešraidē, un klients periodiski pieprasīs jaunus M3U8 failus.
// Kad HLS realizē pēc pieprasījuma un tiešraidi, M3U8 faila starpība
1. Problēmas apraksts
Nesen es veicu pārkodētu šķēlīšu atskaņošanas testu, izmantojot HLS (HTTP Live Streaming), lai veiktu tiešraidi. Katrs TS segmentācijas laiks ir 10s, un atbilstoši TS segmentācijas failiem tiek ģenerēti šādi reālie m3u8 faili
Kopēt kodu
#EXTM3U
# EXT-X-MEDIA-SEQUENCE: 1
# EXT-X-MĒRĶA ILGUMS: 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
Kopēt kodu
Saglabājiet iepriekš minēto m3u8 failu kā live.m3u8, ievietojiet to Apache dokumentu direktorijā un atskaņojiet šo vietrādi URL ar VLC:
http://localhost/live.m3u8
Tests atklāja, ka pirmais fails, kas sāka spēlēt, nebija 1.ts. Pēc vairākiem testiem tika konstatēts, ka:
Kamēr sarakstā ir vairāk nekā trīs faili, pēdējie trīs faili sarakstā vienmēr tiek atskaņoti
2. Problēmu risināšana
Ļoti skumji, ka pēc meklēšanas internetā es neatradu efektīvu informāciju. Draugs saskārās ar tādu pašu situāciju, vai viņš pēc tās atrisināšanas dalījās pieredzē?
Pēc konsultēšanās ar kolēģi kolēģis teica, ka tas ir iespējams, jo reālajā laikā ir jāatjaunina tiešais m3u8 failu saraksts. Ja veicam pārbaudi, vispirms beigās varam pievienot # EXT-X-ENDLIST. Šī metode ir pārbaudīta. Tā darbojas, bet tas vairs nav dzīvs m3u8 režīms
Pēc atkārtotas meklēšanas internetā es apstiprināju, ka beidzot atradu dzīvu m3u8 aprakstu
Tiešraides atskaņošanas saraksts (bīdāms logs)
Tiešraides sesijām indeksa fails tiek atjaunināts, noņemot multivides URI no faila, kad tiek izveidoti un pieejami jauni multivides faili.
Svarīgi: Tiešraides atskaņošanas sarakstā nav taga EXT-X-ENDLIST, kas norāda, ka jauni multivides faili tiks pievienoti indeksa failam, tiklīdz tie būs pieejami.
Skatiet 3. saraksta tiešraides atskaņošanas saraksta piemēru, kāds tas varētu parādīties sesijas sākumā.
Sesijas sākumā tiek parādīts 3 tiešraides atskaņošanas saraksts.
Kopēt kodu
#EXTM3U
# EXT-X-MĒRĶA ILGUMS: 10
# EXT-X-VERSIJA: 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
Kopēt kodu
Katram multivides URI, kas tiek noņemts no atskaņošanas saraksta faila, taga vērtība EXT-X-MEDIA-SEQUENCE OBLIGĀTI jāpalielina ar 1. Multivides URI ir jānoņem no atskaņošanas saraksta faila tādā secībā, kādā tie tiek parādīti atskaņošanas sarakstā. Atjauninātais indeksa fails parāda kustīgu logu nepārtrauktā straumē. Šis sesijas veids ir piemērots nepārtrauktām pārraidēm.
Šis ir tas pats atskaņošanas saraksts, kad tas ir atjaunināts ar jauno multivides URI:
Pēc multivides URI atjaunināšanas ir redzams 4 tiešraides atskaņošanas saraksts.
Kopēt kodu
#EXTM3U
# EXT-X-MĒRĶA ILGUMS: 10
# EXT-X-VERSIJA: 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
Kopēt kodu
3. dzīvot m3u8 atjaunināšanas noteikumus
Dzīvo m3u8 failu saraksts ir nepārtraukti jāatjaunina, atjauniniet kārtulas:
Noņemiet augšējo (domāju, ka spēlējat) failu failu atskaņošanas sarakstā
Nepārtraukti atjauniniet tagu EXT-X-MEDIA-SEQUENCE, palielinot par 1
4. Eksperiments
Uzrakstiet nelielu programmu, lai ģenerētu dzīvu m3u8 testēšanai
Lietošana:
m3u8_gen.exe start_num list_count ilgums faila nosaukums.m3u8 [prefikss]
Lietojuma piemērs:
m3u8_gen.exe 1 3 10 tiešraidē. m3u8 hls /
Ģenerējiet dzīvo.m3u8 failu kā
Kopēt kodu
#EXTM3U
# EXT-X-MEDIA-SEQUENCE: 1
# EXT-X-MĒRĶA ILGUMS: 10
#EXTINF: 10
hls / 1.ts
#EXTINF: 10
hls / 2.ts
#EXTINF: 10
hls / 3.ts
Kopēt kodu
Uzrakstiet BAT skriptu, lai atjauninātu live.m3u8 failu ik pēc 10 sekundēm
Kopēt kodu
@ Echo off
f
|
Ievadiet e-pastu, lai saņemtu pārsteigumu
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikands
sq.fmuser.org -> albāņu
ar.fmuser.org -> arābu
hy.fmuser.org -> armēņu
az.fmuser.org -> azerbaidžāņu
eu.fmuser.org -> basku valoda
be.fmuser.org -> baltkrievu
bg.fmuser.org -> bulgāru valoda
ca.fmuser.org -> katalāņu
zh-CN.fmuser.org -> ķīniešu (vienkāršotā)
zh-TW.fmuser.org -> ķīniešu (tradicionālā)
hr.fmuser.org -> horvātu
cs.fmuser.org -> čehu
da.fmuser.org -> dāņu
nl.fmuser.org -> holandiešu
et.fmuser.org -> igauņu
tl.fmuser.org -> filipīniešu
fi.fmuser.org -> somu
fr.fmuser.org -> franču valoda
gl.fmuser.org -> galisiešu valoda
ka.fmuser.org -> gruzīnu
de.fmuser.org -> vācu
el.fmuser.org -> grieķu
ht.fmuser.org -> Haiti kreolu
iw.fmuser.org -> ebreju
hi.fmuser.org -> hindi
hu.fmuser.org -> ungāru valoda
is.fmuser.org -> islandiešu
id.fmuser.org -> indonēziešu
ga.fmuser.org -> īru
it.fmuser.org -> itāļu
ja.fmuser.org -> japāņu
ko.fmuser.org -> korejiešu
lv.fmuser.org -> latviski
lt.fmuser.org -> lietuviešu
mk.fmuser.org -> maķedoniešu
ms.fmuser.org -> malajiešu
mt.fmuser.org -> maltiešu
no.fmuser.org -> norvēģu
fa.fmuser.org -> persiešu
pl.fmuser.org -> poļu
pt.fmuser.org -> portugāļu
ro.fmuser.org -> rumāņu
ru.fmuser.org -> krievu valoda
sr.fmuser.org -> serbu
sk.fmuser.org -> slovāku
sl.fmuser.org -> slovēņu
es.fmuser.org -> spāņu
sw.fmuser.org -> svahili
sv.fmuser.org -> zviedru
th.fmuser.org -> taizemiešu
tr.fmuser.org -> turku
uk.fmuser.org -> ukraiņu
ur.fmuser.org -> urdu valoda
vi.fmuser.org -> vjetnamiešu
cy.fmuser.org -> velsiešu
yi.fmuser.org -> jidišs
FMUSER Wirless pārraida video un audio vieglāk!
Kontakti
Adrese:
Nr. 305 istaba HuiLan ēka Nr.273 Huanpu Road Guangzhou, Ķīna 510620
Kategorijas
Saņemt jaunumus