FMUSER Wirless Video və Səsi Daha Asan ötürür!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> Alban
ar.fmuser.org -> ərəb
hy.fmuser.org -> Ermənistan
az.fmuser.org -> azərbaycan dili
eu.fmuser.org -> Bask
be.fmuser.org -> Belarus
bg.fmuser.org -> Bulgarian
ca.fmuser.org -> Katalan
zh-CN.fmuser.org -> Çin (Sadələşdirilmiş)
zh-TW.fmuser.org -> Çin (Ənənəvi)
hr.fmuser.org -> Xorvat
cs.fmuser.org -> Çex dili
da.fmuser.org -> Danimarkalı
nl.fmuser.org -> Holland
et.fmuser.org -> Eston
tl.fmuser.org -> Filipin
fi.fmuser.org -> Fin
fr.fmuser.org -> Fransız
gl.fmuser.org -> Qalisian
ka.fmuser.org -> gürcü
de.fmuser.org -> Alman
el.fmuser.org -> Yunan
ht.fmuser.org -> Haiti Kreolu
iw.fmuser.org -> İbrani
hi.fmuser.org -> Hind dili
hu.fmuser.org -> Macar
is.fmuser.org -> İslandiya
id.fmuser.org -> İndoneziya
ga.fmuser.org -> İrlandiyalı
it.fmuser.org -> Italian
ja.fmuser.org -> Yapon
ko.fmuser.org -> Koreyalı
lv.fmuser.org -> Latviya
lt.fmuser.org -> Litva
mk.fmuser.org -> Makedoniya
ms.fmuser.org -> Malay dili
mt.fmuser.org -> Malta
no.fmuser.org -> Norveç
fa.fmuser.org -> Fars dili
pl.fmuser.org -> Polşa
pt.fmuser.org -> Portuqal
ro.fmuser.org -> Roman
ru.fmuser.org -> Rus
sr.fmuser.org -> Serb
sk.fmuser.org -> Slovak
sl.fmuser.org -> Sloveniya
es.fmuser.org -> İspan
sw.fmuser.org -> suahili
sv.fmuser.org -> İsveç
th.fmuser.org -> Thai
tr.fmuser.org -> Türkcə
uk.fmuser.org -> Ukrayna
ur.fmuser.org -> Urdu
vi.fmuser.org -> Vietnamese
cy.fmuser.org -> Uels
yi.fmuser.org -> Azərbaycan
fon
MP4 bizim ümumi video formatımızdır və çox vaxt server videolarını oynadığımızda birbaşa istənilən MP4 video mənbəyidir. Ancaq əslində bu yaxşı deyil. MP4 başlıq faylı [ftyp + moov] böyükdür və başlanğıc səsləndirmənin tam başlıq sənədini yükləməsi və təhlil etməsi və sonra oynamaq üçün müəyyən bir uzunluqda oynana bilən video klip yükləməsi lazımdır. Bundan əlavə, videonun ölçüsü artdıqca, başlıq faylı böyüməyə davam edəcək və ilkin oynatma müddəti daha uzun olacaq. Bu vəziyyəti nəzərə alaraq videonun ilkin analizini sürətləndirə biləcək bir metod lazımdır. HLS, bu problemi həll etmək üçün Apple tərəfindən təklif olunan bir həlldir.
HLS
HLS, HTTP Live Streaming-in kısaltmasıdır. Apple tərəfindən təklif olunan HTTP əsaslı bir axın media şəbəkəsi ötürmə protokoludur. Canlı və eyni zamanda istəyə uyğun olaraq, çox tərifli, səsli və video ikili yollu, altyazılı və digər funksiyaları dəstəkləyə bilər. Onun prinsipi bütöv bir videonu birdən çox kiçik videoya bölməkdir və tam səsləndirmə bu seqmentləri birləşdirərək formalaşır.
HLS mobil terminallarda geniş istifadə olunur. HLS protokolunu dəstəkləyən mövcud müştərilərə aşağıdakılar daxildir:
iOS 3.0 və üstü AVPlayer yerli olaraq HLS-i dəstəkləyir
Android 3.0 və yuxarıda
Adobe Flash Player 11.0 və üstü
Ümumi prinsipi budur:
1. Səs və video toplayın
2. Səs və videonu serverdə kodlaşdırın
3. Kodladıqdan sonra MPEG-2 nəqliyyat axını şəklində Axın Seqmentinə təhvil verin
4. Dilimləyici bir indeks faylı və bir ts siyahısını yaradır, indeks faylı səs və videonun yerini göstərmək üçün istifadə olunur və ts əsl multimedia klipidir
5. Əvvəlki addımın mənbələrini HTTP serverinə qoyun
6. Müştəri oxumaq üçün indeks sənədini tələb edir və oynatma məzmunu indeks faylı vasitəsilə tapıla bilər
M3U8
HLS-i həyata keçirmək üçün əsas addım yuxarıdakı dördüncü addımdır, yəni indeks faylları və ts pleylistlərinin təşkili. M3U8 formatı burada istifadə olunur. M3U8, M3U-nun Unicode versiyasıdır, 8, UTF-8 kodlamasından istifadə olunur və həm M3U, həm də M3U8, multimedia siyahıları üçün fayl formatlarıdır.
M3U8 formatının təsviri
Bəzən test üçün və ya bəzi xüsusi hallarda M3U8 sənədinin məzmununu əl ilə dəyişdirməyimiz lazım ola bilər, buna görə onun formatı barədə müəyyən bir anlayışa sahib olmalıyıq. Bu formatın tərifi RFC 8216 sənədində yazılmışdır. Aşağıdakı bəzi qeydlər:
M3U8 sənədləri UTF-8-də kodlanmalı və Bayt Sifariş Nişanı (BOM) bayt sırasını istifadə edə bilməz və utf-8 nəzarət simvollarını (U + 0000 ~ U_001F və U + 007F ~ u + 009F) ehtiva edə bilməz.
M3U8 fayl məzmununun hər bir satırı ya boş bir sətir, bir URI və ya # ilə başlayan bir sətirdir və boş simvol görünə bilməz.
Daxili etiketlərin hamısı #EXT ilə başlayan sətirlər və hərflərə həssasdır.
URI, nisbi bir yol və ya mütləq bir yol ola bilən məzmun yoludur
Master M3U8 siyahı faylı
Əsas M3U8 indeks faylı ümumiyyətlə birdən çox indeks mənbəyi təyin etmək üçün istifadə olunur. Əvvəlcə hls_vod_mvp.m3u8 ana m3u8 sənədinin tərkibini təhlil edək, başlığı belədir
Başlıq formatı
#EXTM3U
# EXT-X-VERSİYA: 7
# EXT-X-MÜSTƏQİL-SEGMENTSCopy kodu
# EXTM3U, faylın M3U formatında olduğunu və bütün M3U formatlı sənədlərin məzmunu birinci sətirdə qoymasını tələb edir.
# EXT-X-VERSIOn hazırda 7 olan çalğı siyahısının uyğun versiyasını göstərir.
# EXT-X-MÜSTƏQİL-SEGMENTS Bu etiket, bir media seqmentindəki bütün media nümunələrinin digər media seqment məlumatlarına etibar etmədən müstəqil olaraq dekodlaşdırıla biləcəyini göstərir.
Altyazı formatı
Aşağıdakı məzmun bəzi başlıqlardır, başlıqların məzmunu lazım deyil.
# EXT-X-MEDIA: TYPE = SUBTITLES, GROUP-ID = "subs", NAME = "English", DEFAULT = EVET, AUTOSELECT = YES, FORCED = NO, LANGUAGE = "eng", URI = "subtitles / eng / prog_index.m3u8 "
# EXT-X-MEDIA: TYPE = SUBTITLES, GROUP-ID = "subsC", NAME = "English", DEFAULT = EVES, AUTOSELECT = YES, FORCED = NO, LANGUAGE = "eng", URI = "subtitles / engc / prog_index.m3u8 "
# EXT-X-MEDIA: TYPE = ALTTIBARLAR, QRUP-ID = "alt", NAME = "Yapon", DEFAULT = EVET, AUTOSELECT = EVET, FORCED = NO, LANGUAGE = "jpn", URI = "subtitles / jpn / prog_index.m3u8 "
# EXT-X-MEDIA: TYPE = ALTTIBARLAR, GROUP-ID = "subsC", NAME = "Japanese", DEFAULT = EVET, AUTOSELECT = EVET, FORCED = NO, LANGUAGE = "jpn", URI = "subtitles / jpnc / prog_index.m3u8 "
# EXT-X-MEDİA: NÖV = Subtitrlər, GROUP-ID = "subs", AD = "Çin", DEFAULT = EVET, AUTOSELECT = EVET, FORCED = NO, LANGUAGE = "zho", URI = "subtitles / zho / prog_index.m3u8 "
# EXT-X-MEDIA: NÖV = Subtitrlər, GROUP-ID = "subsC", NAME = "Chinese", DEFAULT = EVET, AUTOSELECT = EVET, FORCED = NO, LANGUAGE = "zho", URI = "subtitles / zhoc / prog_index.m3u8 "Kodu kopyalayın
# EXT-X-MEDIA, eyni məzmunda çoxdilli media siyahısı mənbələrini təyin etmək üçün istifadə olunur.
TYPE mənbə növüdür və isteğe bağlı məzmunu bunlardır: SƏS, VİDEO, SUBTİTLƏR, QAPALI BÖLMƏLƏR.
Yuxarıda göstərilən məzmun alt yazı növü olan TYPE = SUBTITLES təyin edir.
GROUP-ID, çoxdilli tərcümənin aid olduğu və tələb olunan bir parametrdir
NAME tərcümə axınının oxunaqlı təsvir məlumatıdır və bu dəyər AVMediaSelectionOption-un displayName-i ilə uyğundur.
DEFAULT, AUTOSELECT, FORCED, lazımlı məlumat yoxdursa, tərcümə axınının default olaraq seçilib-seçilməməsinə uyğun üç BOOL dəyəridir. İstifadəçi parametrləri göstərmədiyi zaman oxutma axını oynanır. FORCED yalnız altyazı növü üçün etibarlıdır və tərcümə axınının cari avtomatik seçimini qeyd etmək üçün istifadə olunur. .
LANGUAGE, [ISO 639 dil koduna] uyğun olaraq qurulan dil növünü təyin etmək üçün istifadə olunur (https://www.w3.org/WAI/ER/WD-AERT/iso639.htm "ISO 639 dil kodu") standartı. Sistem defolt pleyeri altyazı seçdikdə, göstərilən altyazı siyahısının adı bu dəyərə uyğun olaraq təyin olunur.
URI, subtitrli M3U8 sənədinə uyğun olduğu mənbənin yerləşmə məlumatıdır. subtitles / eng / prog_index.m3u8 nisbi yoldur,
Yuxarıdakı məlumatlar vasitəsilə yuxarıdakı məzmunun mənasını belə təhlil edə bilərik: Hazırkı video üç altyazını dəstəkləyir: İngilis, Yapon və Çin. Ancaq hər dildə iki EXT-X-MEDIA mesajı var. Aralarındakı fərq qruplaşdırmadır, biri alt qruplarında, digəri alt qruplarında qruplaşdırılır. Niyə iki qrup var? Bu barədə sonra danışacağam.
Video format
Video məzmununun indeksi üçün yenidən aşağıya baxın:
#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: Bu xüsusiyyət bir ehtiyat mənbəyi, yəni video oynatma yolu və bəzi video məlumatlarını göstərir. Aşağıdakılar müvafiq məzmunun konfiqurasiyasındadır: BANDWIDTH pik bit sürətidir, 827299 827299bit / s, ən yüksək pik vaxtıdır saniyədə 101 KB trafik sərf edir.
ORTA-BANDWIDTH ortalama bit dərəcəsidir, 747464
CODECS məlumatı kodlaşdırır, avc1.64001f, mp4a.40.2, avc h264 kodlaşdırma formatını təmsil edir, aşağıdakı 64001f onaltılıq, 64, 00, 1f ilə təmsil olunan kodlaşdırma parametridir, müvafiq olaraq üç fərqli parametr dəyərini təmsil edir. mp4a bir səs kodlaşdırma formatıdır və aşağıdakı 40.2 səs kodlaşdırma parametrlərini təmsil edir.
RESOLUTION video qətnaməsidir. Mövcud video mənbəyi çözünürlüğü 640x360-dır.
FRAME-RATE maksimum kadr sürətidir, 29.970 saniyədə 29.970 kadr olan mövcud oynatmanın maksimum kadr dərəcəsini təmsil edir.
AUDIO səs qrupudur və program_audio müvafiq səs qrupunun adıdır.
SUBTITLES müvafiq altyazı qrupunu göstərir və subslar müvafiq altyazı qrupunun adıdır. Yuxarıdakı altyazı məlumatları QRUP-ID-yə malikdir və bu dəyər ona uyğundur.
URI məzmun yoludur, 0640 / 0640.m3u8, video mənbəyinin m3u8 fayl yoluna uyğun gəlir. Bu paket ələ keçirmə məlumatında görünə bilər.
EXT-X-STREAM-INF-in altında pleylist faylında olan multimedia mənbəyinin I çərçivəsini (açar çərçivəsini) təmsil edən EXT-XI-FRAME-STREAM-INF var. I kadr yalnız bir şəkil olduğundan səs məzmunu içermir və qalan parametrlər video məzmun formatına uyğundur.
Bundan sonra, 1920x1080, 1280x720, 960x540, 480x270 fərqli qətnamələrə cavab verən video mənbələri var. HLS şəbəkə vəziyyətinə uyğun olaraq qətnaməni avtomatik olaraq dəyişdirəcəyi üçün bir çox qətnamə ümumiyyətlə seçim üçün hazırlanır. Çəkilən məlumatların analizinə görə, oynanan ilk seqment 640 çözünürlük, ikincisi ondan sonra 8 seqment 480 çözünürlükdür və sonra 640 çözünürlüğə keçir.
audio formatı
Aşağıya baxmaq müvafiq səsin indeksidir
# EXT-X-MEDIA: TYPE = AUDIO, GROUP-ID = "program_audio", LANGUAGE = "eng", NAME = "Alternative Audio", AUTOSELECT = YES, DEFAULT = YES, URI = "audio1 / audio1.m3u8" Copy Kod
# EXT-X-MEDIA yuxarıda göründü, lakin birdən çox dil üçün siyahıdan bəhs etmədi.
TYPE = AUDIO, bu dəfə səs səslidir.
GROUP-ID, EXT-X-STREAM-INF-dəki AUDIO məzmununa uyğun olan qrup kimliyidir.
URI = audio1 / audio1.m3u8 səs yoluna uyğundur.
Fərqli kodlaşdırma formatlarının alternativ mənbələri
Əsas M3U8 sənədində yuxarıda göstərilən 640 qətnamə ilə eyni olmayan 640 qətnamə video mənbəyi də görə bilərik. Məzmunu belədir:
#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 = "Alternative Audio", AUTOSELECT = YES, DEFAULT = YES, URI = "audioc / prog_index.m3u8" Copy Kod
CODECS kodlaşdırma formatı hvc1.2.4.H150.B0, mp4a.40.2, səs kodlaşdırma formatı dəyişməyib, lakin video kodlaşdırma formatı dəyişib. hvc1, HEVC (H265) kodlaşdırma formatlarından biridir. Apple tərəfindən başlatılan yeni nəsil video kodlaşdırma formatıdır. Uyğunluq problemləri səbəbindən bir çox müştəri bu formatı təhlil edə bilmir, buna görə də çox populyar deyil. Bu formatdakı video mənbələri görünür burada bir ehtiyat olmalıdır. Eyni qətnamənin iki məzmunu ilə müqayisə edildikdə hvc1 formatının bit sürətinin avc1 formatından daha yüksək olduğu aşkar edilə bilər ki, bu da hvc1-in məzmununun daha böyük olduğunu və eyni qətnamə altında avc1-in sıxılma nisbətinin daha yüksək olduğunu göstərir.
Hvc1 formatlı video mənbəyinə uyğun olaraq, onun altyazı məzmun qruplaşdırması və səsli məzmun qruplaşması da dəyişdi, bu səbəbdən də yuxarıdakı altyazıların eyni dilin iki nüsxəsi var və bunlar avc1 və hvc1 formatındakı video mənbələrinə uyğun gəlir.
Bu M3U8-in əsas siyahısı. Bu məzmunun audio və videoları ayrıca işlənir, lakin bunlar da birləşdirilə bilər.
Media məlumatlarını ehtiva edən M3u8 faylı
Nümunə olaraq 0640.m3u8 sənədini götürün
#EXTM3U
# EXT-X-VERSİYA: 4
# EXT-X-Hədəf: 7
# EXT-X-MEDİA-SIRALIQ: 1
# EXT-X-OYNATMA SİYAHISI: VOD
# ÇIXARIŞ: 6.006,
0640_00001.ts
# ÇIXARIŞ: 6.006,
0640_00002.ts
# ÇIXARIŞ: 6.006,
0640_00003.ts
....
# EXT-X-ENDLISTCopy code
# EXTM3U və # EXT-X-VERSION, sırasıyla M3U fayl başlığı və uyğun versiya nömrəsidir. Bu format erkən versiyadır, buna görə versiya nömrəsi əsas sənəddən aşağıdır.
EXT-X-HEDEF, hər oynatma seqmentinin maksimum müddətini, 7-si 7 saniyəni təmsil edir və bu qovluqdakı seqmentlər 7s-dən çox ola bilməz.
EXT-X-MEDIA-SEQUENCE, çalğı siyahısının ilk seqmentinin sıra nömrəsini və 1, oynatma seqmentinin 1-dən başladığını göstərir.
#EXTINF, seqmentin müddətini təmsil edir, 6.006, cari seqmentin 6.006s olduğu mənasını verir. Ümumi video müddəti məlumatları bu dəyəri toplayaraq əldə edilir.
0640_00001.ts klipin nisbi yoludur. Ts faylı bir video və ya səs parçasını təmsil edir və ts, mp4, aac və digər formatlarda ola bilər. Çünki 1-dən açılması dəqiqləşdirilib
|
Sürpriz almaq üçün e-poçt daxil edin
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> Alban
ar.fmuser.org -> ərəb
hy.fmuser.org -> Ermənistan
az.fmuser.org -> azərbaycan dili
eu.fmuser.org -> Bask
be.fmuser.org -> Belarus
bg.fmuser.org -> Bulgarian
ca.fmuser.org -> Katalan
zh-CN.fmuser.org -> Çin (Sadələşdirilmiş)
zh-TW.fmuser.org -> Çin (Ənənəvi)
hr.fmuser.org -> Xorvat
cs.fmuser.org -> Çex dili
da.fmuser.org -> Danimarkalı
nl.fmuser.org -> Holland
et.fmuser.org -> Eston
tl.fmuser.org -> Filipin
fi.fmuser.org -> Fin
fr.fmuser.org -> Fransız
gl.fmuser.org -> Qalisian
ka.fmuser.org -> gürcü
de.fmuser.org -> Alman
el.fmuser.org -> Yunan
ht.fmuser.org -> Haiti Kreolu
iw.fmuser.org -> İbrani
hi.fmuser.org -> Hind dili
hu.fmuser.org -> Macar
is.fmuser.org -> İslandiya
id.fmuser.org -> İndoneziya
ga.fmuser.org -> İrlandiyalı
it.fmuser.org -> Italian
ja.fmuser.org -> Yapon
ko.fmuser.org -> Koreyalı
lv.fmuser.org -> Latviya
lt.fmuser.org -> Litva
mk.fmuser.org -> Makedoniya
ms.fmuser.org -> Malay dili
mt.fmuser.org -> Malta
no.fmuser.org -> Norveç
fa.fmuser.org -> Fars dili
pl.fmuser.org -> Polşa
pt.fmuser.org -> Portuqal
ro.fmuser.org -> Roman
ru.fmuser.org -> Rus
sr.fmuser.org -> Serb
sk.fmuser.org -> Slovak
sl.fmuser.org -> Sloveniya
es.fmuser.org -> İspan
sw.fmuser.org -> suahili
sv.fmuser.org -> İsveç
th.fmuser.org -> Thai
tr.fmuser.org -> Türkcə
uk.fmuser.org -> Ukrayna
ur.fmuser.org -> Urdu
vi.fmuser.org -> Vietnamese
cy.fmuser.org -> Uels
yi.fmuser.org -> Azərbaycan
FMUSER Wirless Video və Səsi Daha Asan ötürür!
Əlaqə
Ünvan:
No. 305 Otaq HuiLan Bina No.273 Huanpu Yolu Guangzhou Çin 510620
Kateqoriyalar
Newsletter