FMUSER Wirless edastab videot ja heli lihtsamalt!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikaans
sq.fmuser.org -> albaania keel
ar.fmuser.org -> araabia
hy.fmuser.org -> Armeenia
az.fmuser.org -> aserbaidžaanlane
eu.fmuser.org -> baski keel
be.fmuser.org -> valgevenelane
bg.fmuser.org -> Bulgaaria
ca.fmuser.org -> katalaani keel
zh-CN.fmuser.org -> hiina (lihtsustatud)
zh-TW.fmuser.org -> Hiina (traditsiooniline)
hr.fmuser.org -> horvaadi keel
cs.fmuser.org -> tšehhi
da.fmuser.org -> taani keel
nl.fmuser.org -> Hollandi
et.fmuser.org -> eesti keel
tl.fmuser.org -> filipiinlane
fi.fmuser.org -> soome keel
fr.fmuser.org -> Prantsusmaa
gl.fmuser.org -> galicia keel
ka.fmuser.org -> gruusia keel
de.fmuser.org -> saksa keel
el.fmuser.org -> Kreeka
ht.fmuser.org -> Haiti kreool
iw.fmuser.org -> heebrea
hi.fmuser.org -> hindi
hu.fmuser.org -> Ungari
is.fmuser.org -> islandi keel
id.fmuser.org -> indoneesia keel
ga.fmuser.org -> iiri keel
it.fmuser.org -> Itaalia
ja.fmuser.org -> jaapani keel
ko.fmuser.org -> korea
lv.fmuser.org -> läti keel
lt.fmuser.org -> Leedu
mk.fmuser.org -> makedoonia
ms.fmuser.org -> malai
mt.fmuser.org -> malta keel
no.fmuser.org -> Norra
fa.fmuser.org -> pärsia keel
pl.fmuser.org -> poola keel
pt.fmuser.org -> portugali keel
ro.fmuser.org -> Rumeenia
ru.fmuser.org -> vene keel
sr.fmuser.org -> serbia
sk.fmuser.org -> slovaki keel
sl.fmuser.org -> Sloveenia
es.fmuser.org -> hispaania keel
sw.fmuser.org -> suahiili keel
sv.fmuser.org -> rootsi keel
th.fmuser.org -> Tai
tr.fmuser.org -> türgi keel
uk.fmuser.org -> ukrainlane
ur.fmuser.org -> urdu
vi.fmuser.org -> Vietnam
cy.fmuser.org -> kõmri keel
yi.fmuser.org -> Jidiši
tagapõhi
MP4 on meie tavaline videovorming ja sageli, kui mängime serverivideoid, on see otse taotletud MP4-videoallikas. Kuid tegelikult pole see hea. MP4 päisefail [ftyp + moov] on mahukas ja algsel taasesitusel tuleb kogu päisefail alla laadida ja seda analüüsida ning seejärel mängimiseks alla laadida teatud pikkusega esitatav videoklipp. Lisaks kasvab video suuruse kasvades päisefail ja esialgne taasesitusaeg pikeneb. Seda olukorda silmas pidades on vaja meetodit, mis võib video esmast analüüsi kiirendada. HLS on Apple'i pakutud lahendus selle probleemi lahendamiseks.
HLS
HLS on HTTP reaalajas voogesituse lühend. See on Apple'i pakutud HTTP-põhine voogesitusmeediumivõrgu edastamise protokoll. See võib üheaegselt toetada reaalajas ja nõudmisel tellitavat funktsiooni, samuti mitme eraldusvõimega, heli ja video kaherealist, subtiitreid ja muid funktsioone. Selle põhimõte on jagada terve video mitmeks väikeseks videoks ja täielik taasesitus moodustub nende segmentide liitmise teel.
HLS-i kasutatakse laialdaselt mobiilsetes terminalides. Praegused HLS-protokolli toetavad kliendid hõlmavad järgmist.
iOS 3.0 ja uuemad versioonid, AVPlayer toetab loomulikult HLS-i
Android 3.0 ja eespool
Adobe Flash Player 11.0 ja uuemad
Selle üldpõhimõte on järgmine:
1. Koguge heli ja videot
2. Kodeerige serveris heli ja video
3. Pärast kodeerimist andke see MPEG-2 transpordivoo kujul Stream Segmenterile üle
4. Viilutaja loob indeksfaili ja ts-esitusloendi, indeksfaili kasutatakse heli ja video asukoha näitamiseks ning ts on tõeline multimeediumiklipp
5. Pange eelmise sammu ressursid HTTP-serverisse
6. Klient nõuab taasesituseks registrifaili ja taasesituse sisu leiate registrifaili kaudu
M3U8
HLS-i realiseerimise peamine samm on ülaltoodud neljas samm, nimelt indeksfailide ja ts-esitusloendite korraldamine. Siin kasutatakse vormingut M3U8. M3U8 on M3U Unicode'i versioon, 8 tähendab UTF-8 kodeerimist ja nii M3U kui M3U8 on multimeediumiloendite failivormingud.
M3U8 vormingu kirjeldus
Mõnikord peame testimiseks või mõnel erijuhul vaja faili M3U8 sisu käsitsi muutma, seega peame selle vormingust teatud määral aru saama. Selle vormingu määratlus on kirjutatud dokumendis RFC 8216. Järgnevalt on toodud mõned märkused:
M3U8-failid peavad olema kodeeritud UTF-8-s ega tohi kasutada baitide järjestuse baidijärjekorda (BOM) ega tohi sisaldada utf-8 juhtmärke (U + 0000 ~ U_001F ja U + 007F ~ u + 009F)
Iga faili M3U8 rida on kas tühi rida, URI või string, mis algab tähega # ja tühje märke ei saa ilmuda.
Sisseehitatud sildid on kõik stringid, mis algavad tähega #EXT ja on tõstutundlikud.
URI on sisutee, mis võib olla suhteline või absoluutne tee
Master M3U8 loendifail
M3U8 peamist indeksfaili kasutatakse tavaliselt mitme indeksiallika määramiseks. Analüüsime kõigepealt m3u8 põhifaili hls_vod_mvp.m3u8 sisu, selle pea on selline
Päise formaat
#EXTM3U
# EXT-X-VERSIOON: 7
# EXT-X-SÕLTUMATU-SEGMENTSKoopia kood
# EXTM3U näitab, et fail on M3U-vormingus ja kõik M3U-vormingus failid peaksid sisu asetama esimesele reale.
# EXT-X-VERSIOn tähistab esitusloendi ühilduvat versiooni, mis on praegu 7.
# EXT-X-SÕLTUMATUD SEGMENDID See silt näitab, et kõiki meediumisegmendi meediuminäiteid saab iseseisvalt dekodeerida, tuginedes muule meediumisegmendi teabele.
Subtiitrivorming
Allpool olev sisu on mõned pealdised, pealdiste sisu pole vajalik.
# EXT-X-MEDIA: TÜÜP = SUBTIITRID, GRUPI ID = "subs", NIMI "English", DEFAULT = JAH, AUTOSELECT = YES, Sunnitud = EI, KEEL = "eng", URI = "subtiitrid / eng / prog_index.m3u8 "
# EXT-X-MEDIA: TÜÜP = SUBTIITRID, Rühma ID = "subsC", NIMI "Inglise", DEFAULT = JAH, AUTOSEEL = JAH, Sunnitud = EI, KEEL = "eng", URI = "subtiitrid / engc / prog_index.m3u8 "
# EXT-X-MEDIA: TÜÜP = SUBTIITRID, GRUPI ID = "subs", NAME = "Jaapani", DEFAULT = JAH, AUTOSELECT = JAH, Sunnitud = EI, KEEL = "jpn", URI = "subtiitrid / jpn / prog_index.m3u8 "
# EXT-X-MEDIA: TÜÜP = SUBTIITRID, GRUPI ID = "subsC", NIMI "Jaapani", DEFAULT = JAH, AUTOSELECT = JAH, Sunnitud = EI, KEEL = "jpn", URI = "subtiitrid / jpnc / prog_index.m3u8 "
# EXT-X-MEDIA: TÜÜP = SUBTIITRID, GRUPI ID = "subs", NIMI "hiina", DEFAULT = YES, AUTOSELECT = YES, FORCE = EI, LANGUAGE = "zho", URI = "subtiitrid / zho / prog_index.m3u8 "
# EXT-X-MEDIA: TÜÜP = SUBTIITRID, GRUPI ID = "subsC", NIMI "Hiina", MÄÄRATLUS = JAH, AUTOSEEL = JAH, Sunnitud = EI, Keel = "zho", URI = "subtiitrid / zhoc / prog_index.m3u8 "Kopeeri kood
# EXT-X-MEDIA kasutatakse sama sisuga mitmekeelse meediumiloendi ressursside määramiseks.
TYPE on ressursitüüp ja valikuline sisu on: AUDIO, VIDEO, SUBTIITRID, SULETUD.
Ülalolev sisu määrab TYPE = SUBTITLES, mis on alapealkirja tüüp.
GROUP-ID on rühm, kuhu mitmekeelne tõlge kuulub, ja see on vajalik parameeter
NAME on tõlkevoo loetav kirjeldav teave ja see väärtus vastab AVMediaSelectionOptioni displayName'ile.
DEFAULT, AUTOSELECT, FORCED on kolm BOOL-väärtust, mis vastavad sellele, kas tõlkevoog on vaikimisi valitud, kui vajalik teave puudub. Taasesituse voogu esitatakse siis, kui kasutaja seadeid ei kuva. FORCED kehtib ainult alapealkirja tüübi jaoks ja seda kasutatakse tõlkevoo praeguse automaatse valiku tähistamiseks. .
KEEL kasutatakse keele tüübi määramiseks, mis määratakse vastavalt [ISO 639 keelekoodile] (https://www.w3.org/WAI/ER/WD-AERT/iso639.htm "ISO 639 keelekood") standard. Kui süsteemi vaikemängija valib subtiitrid, määratakse kuvatava subtiitrite loendi nimi vastavalt sellele väärtusele.
URI on ressursi asukohateave, kus see vastab subtiitritega failile M3U8. subtiitrid / eng / prog_index.m3u8 on suhteline tee,
Ülaltoodud teabe kaudu saame analüüsida ülaltoodud sisu tähendust: Praegune video toetab kolme subtiitrit: inglise, jaapani ja hiina. Kuid igal keelel on kaks EXT-X-MEDIA sõnumit. Nende erinevus seisneb grupeerimises, üks on rühmitatud alamrubriikidesse ja teine rühmitatud alamrubriikidesse C. Miks on kaks rühma? Ma räägin sellest hiljem.
Video vorming
Vaadake uuesti alla videosisu register:
#EXT-X-STREAM-INF:BANDWIDTH=827299,AVERAGE-BANDWIDTH=747464,CODECS="avc1.64001f,mp4a.40.2",RESOLUTION=640x360,FRAME-RATE=29.970,AUDIO="program_audio",SUBTITLES=" subs"
0640 / 0640.m3u8
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=360849,AVERAGE-BANDWIDTH=320932,CODECS="avc1.64001f",RESOLUTION=640x360,URI="0640/0640_I-Frame.m3u8"Copy code
EXT-X-STREAM-INF: see atribuut määrab varundusallika, see tähendab video taasesituse tee ja osa videoteavet. Järgmine on vastava sisu konfiguratsioon: BANDWIDTH on tipp-bitikiirus, 827299 on 827299bit / s, mis on kõrgeim tipp-aeg. Tarbib 101 KB liiklust sekundis.
AVERAGE-BANDWIDTH on keskmine bitikiirus 747464
CODECS kodeerib teavet, avc1.64001f, mp4a.40.2, avc tähistab h264 kodeerimisvormingut, järgmine 64001f on kodeerimisparameeter, mida tähistavad vastavalt kuueteistkümnendsüsteem, 64, 00, 1f kolm erinevat parameetri väärtust. mp4a on heli kodeerimisvorming ja järgmine 40.2 tähistab heli kodeerimise parameetreid.
RESOLUTION on video eraldusvõime. Praegune videoallika eraldusvõime on 640x360.
FRAME-RATE on maksimaalne kaadrisagedus, 29.970 tähistab praeguse taasesituse maksimaalset kaadrisagedust 29.970 kaadrit sekundis.
AUDIO on helirühm ja programm_audio on vastava helirühma nimi.
SUBTIITRID tähistavad vastavat subtiitrirühma ja subs on vastava subtiitrirühma nimi. Ülaltoodud alapealkirjainfol on GROUP-ID ja see väärtus vastab sellele.
URI on sisutee, 0640 / 0640.m3u8 vastab videoallika m3u8-failiteele. Seda on näha pakettide hõivamise teabest.
EXT-X-STREAM-INF all on EXT-XI-FRAME-STREAM-INF, mis tähistab esitusloendifailis sisalduva multimeediumressursi I kaadrit (võtmeraami). Kuna I raam on lihtsalt pilt, ei sisalda see helisisu ja ülejäänud parameetrid on kooskõlas videosisu vorminguga.
Pärast seda on olemas videoallikad, mis vastavad erinevatele eraldusvõimetele, 1920x1080, 1280x720, 960x540, 480x270. Kuna HLS vahetab eraldusvõimet automaatselt vastavalt võrgusituatsioonile, on valimiseks tavaliselt ette valmistatud mitu eraldusvõimet. Püütud andmete analüüsi kohaselt on esimene mängitud segment 640 eraldusvõimet, teine kuni 8 segmenti pärast seda on 480 eraldusvõimet ja seejärel lülitatakse see 640 eraldusvõimele.
helivorming
Allapoole vaatamine on vastava heli indeks
# EXT-X-MEDIA: TYPE = AUDIO, GROUP-ID = "program_audio", LANGUAGE = "eng", NAME = "Alternate Audio", AUTOSELECT = YES, DEFAULT = YES, URI = "audio1 / audio1.m3u8" Kopeeri Kood
# EXT-X-MEDIA ilmus ülal, kuid ei maininud mitme keele loendit.
TYPE = AUDIO, seekord on tüüp heli.
GROUP-ID on rühma ID, mis vastab EXT-X-STREAM-INF-i AUDIO sisule.
URI = audio1 / audio1.m3u8 vastab heliteele.
Erinevate kodeerimisvormingute alternatiivsed allikad
Põhifailis M3U8 näeme ka 640 eraldusvõimega videoallikat, mis pole sama mis ülaltoodud 640 eraldusvõime. Selle sisu on järgmine:
#EXT-X-STREAM-INF:BANDWIDTH=1922391,AVERAGE-BANDWIDTH=1276855,VIDEO-RANGE=SDR,CODECS="hvc1.2.4.H150.B0,mp4a.40.2",RESOLUTION=640x360,FRAME-RATE=29.970 ,AUDIO="program_audio_0",SUBTITLES="subsC"
0640c / prog_index.m3u8
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=1922391,AVERAGE-BANDWIDTH=1276855,CODECS="hvc1.2.4.H150.B0",RESOLUTION=640x360,URI="0640c/iframe_index.m3u8"
# EXT-X-MEDIA: TYPE = AUDIO, GROUP-ID = "program_audio_0", LANGUAGE = "eng", NAME = "Alternate Audio", AUTOSELECT = YES, DEFAULT = YES, URI = "audioc / prog_index.m3u8" Kopeeri Kood
CODECSi kodeerimisvorming on hvc1.2.4.H150.B0, mp4a.40.2, heli kodeerimisvorming pole muutunud, kuid video kodeerimisvorming on muutunud. hvc1 on üks HEVC (H265) kodeerimisvormingutest. See on uue põlvkonna video kodeerimisvorming, mille on välja lasknud Apple. Ühilduvusprobleemide tõttu ei saa paljud kliendid seda vormingut sõeluda, seega pole see eriti populaarne. Ilmuvad selles vormingus videiallikad. See peaks olema siin varukoopia. Võrreldes sama eraldusvõime kahte sisu, võib leida, et hvc1-vormingu bitikiirus on suurem kui avc1-vormingus, mis näitab, et hvc1 sisu on suurem ja avc1 tihendussuhe sama eraldusvõime korral suurem.
Vastavalt hvc1-vormingus videoallikale on muutunud ka selle subtiitrite sisu rühmitamine ja helisisu rühmitamine, mistõttu ülaltoodud subtiitritel on kaks eksemplari ühes keeles ja need vastavad video-allikatele avc1 ja hvc1-vormingus.
See on M3U8 peamine loend. Selle sisu heli ja videot töödeldakse eraldi, kuid neid saab ka kombineerida.
M3u8 fail, mis sisaldab meediumiteavet
Võtke näiteks fail 0640.m3u8
#EXTM3U
# EXT-X-VERSIOON: 4
# EXT-X-SIHTKESTUS: 7
# EXT-X-MEDIA-SEQUENCE: 1
# EXT-X-PLAYLIST-TYPE: VOD
#EXTINF: 6.006,
0640_00001.ts
#EXTINF: 6.006,
0640_00002.ts
#EXTINF: 6.006,
0640_00003.ts
...
# EXT-X-ENDLISTKoopia kood
# EXTM3U ja # EXT-X-VERSION on vastavalt M3U-faili päis ja ühilduv versiooninumber. See vorming on varane versioon, seega on versiooni number põhifailist väiksem.
EXT-X-TARGETDURATION tähistab iga taasesitussegmendi maksimaalset kestust, 7 tähistab 7 sekundit ja selle kataloogi segmendid ei tohi ületada 7 s.
EXT-X-MEDIA-SEQUENCE tähistab esitusloendi esimese segmendi järjekorranumbrit ja 1 tähistab seda, et esituslõik algab 1-st.
#EXTINF tähistab segmendi kestust, 6.006 tähendab, et praegune segment on 6.006s. Video kogu kestvuse teave saadakse selle väärtuse akumuleerimisel.
0640_00001.ts on klipi suhteline tee. Ts-fail tähistab video- või helitükki ning see võib olla nii ts, mp4, aac kui ka muus vormingus. Kuna see on määratud avama alates 1-st
|
Üllatuse saamiseks sisestage e-posti aadress
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikaans
sq.fmuser.org -> albaania keel
ar.fmuser.org -> araabia
hy.fmuser.org -> Armeenia
az.fmuser.org -> aserbaidžaanlane
eu.fmuser.org -> baski keel
be.fmuser.org -> valgevenelane
bg.fmuser.org -> Bulgaaria
ca.fmuser.org -> katalaani keel
zh-CN.fmuser.org -> hiina (lihtsustatud)
zh-TW.fmuser.org -> Hiina (traditsiooniline)
hr.fmuser.org -> horvaadi keel
cs.fmuser.org -> tšehhi
da.fmuser.org -> taani keel
nl.fmuser.org -> Hollandi
et.fmuser.org -> eesti keel
tl.fmuser.org -> filipiinlane
fi.fmuser.org -> soome keel
fr.fmuser.org -> Prantsusmaa
gl.fmuser.org -> galicia keel
ka.fmuser.org -> gruusia keel
de.fmuser.org -> saksa keel
el.fmuser.org -> Kreeka
ht.fmuser.org -> Haiti kreool
iw.fmuser.org -> heebrea
hi.fmuser.org -> hindi
hu.fmuser.org -> Ungari
is.fmuser.org -> islandi keel
id.fmuser.org -> indoneesia keel
ga.fmuser.org -> iiri keel
it.fmuser.org -> Itaalia
ja.fmuser.org -> jaapani keel
ko.fmuser.org -> korea
lv.fmuser.org -> läti keel
lt.fmuser.org -> Leedu
mk.fmuser.org -> makedoonia
ms.fmuser.org -> malai
mt.fmuser.org -> malta keel
no.fmuser.org -> Norra
fa.fmuser.org -> pärsia keel
pl.fmuser.org -> poola keel
pt.fmuser.org -> portugali keel
ro.fmuser.org -> Rumeenia
ru.fmuser.org -> vene keel
sr.fmuser.org -> serbia
sk.fmuser.org -> slovaki keel
sl.fmuser.org -> Sloveenia
es.fmuser.org -> hispaania keel
sw.fmuser.org -> suahiili keel
sv.fmuser.org -> rootsi keel
th.fmuser.org -> Tai
tr.fmuser.org -> türgi keel
uk.fmuser.org -> ukrainlane
ur.fmuser.org -> urdu
vi.fmuser.org -> Vietnam
cy.fmuser.org -> kõmri keel
yi.fmuser.org -> Jidiši
FMUSER Wirless edastab videot ja heli lihtsamalt!
Saada sõnum
Aadress:
Nr 305 tuba HuiLan Building No.273 Huanpu Road Guangzhou, Hiina 510620
Kategooriad
Uudiskiri