FMUSER Wirless Menghantar Video Dan Audio Lebih Mudah!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Orang Afrika
sq.fmuser.org -> Bahasa Albania
ar.fmuser.org -> Bahasa Arab
hy.fmuser.org -> Armenia
az.fmuser.org -> Azerbaijan
eu.fmuser.org -> Basque
be.fmuser.org -> Belarus
bg.fmuser.org -> Bulgaria
ca.fmuser.org -> Bahasa Catalan
zh-CN.fmuser.org -> Bahasa Cina (Ringkas)
zh-TW.fmuser.org -> Bahasa Cina (Tradisional)
hr.fmuser.org -> Bahasa Croatia
cs.fmuser.org -> Bahasa Czech
da.fmuser.org -> Denmark
nl.fmuser.org -> Belanda
et.fmuser.org -> Estonia
tl.fmuser.org -> Orang Filipina
fi.fmuser.org -> Bahasa Finland
fr.fmuser.org -> Bahasa Perancis
gl.fmuser.org -> orang Galicia
ka.fmuser.org -> Orang Georgia
de.fmuser.org -> Jerman
el.fmuser.org -> Greek
ht.fmuser.org -> Haitian Creole
iw.fmuser.org -> Bahasa Ibrani
hi.fmuser.org -> Bahasa Hindi
hu.fmuser.org -> Bahasa Hungary
is.fmuser.org -> Bahasa Iceland
id.fmuser.org -> Bahasa Indonesia
ga.fmuser.org -> Ireland
it.fmuser.org -> Bahasa Itali
ja.fmuser.org -> Jepun
ko.fmuser.org -> Bahasa Korea
lv.fmuser.org -> Bahasa Latvia
lt.fmuser.org -> Bahasa Lithuania
mk.fmuser.org -> orang Macedonia
ms.fmuser.org -> Bahasa Melayu
mt.fmuser.org -> Malta
no.fmuser.org -> Bahasa Norway
fa.fmuser.org -> Parsi
pl.fmuser.org -> Bahasa Poland
pt.fmuser.org -> Portugis
ro.fmuser.org -> Romania
ru.fmuser.org -> Rusia
sr.fmuser.org -> Bahasa Serbia
sk.fmuser.org -> Bahasa Slovak
sl.fmuser.org -> Bahasa Slovenia
es.fmuser.org -> Sepanyol
sw.fmuser.org -> Swahili
sv.fmuser.org -> Sweden
th.fmuser.org -> Thai
tr.fmuser.org -> Turki
uk.fmuser.org -> Ukraine
ur.fmuser.org -> Bahasa Urdu
vi.fmuser.org -> Vietnam
cy.fmuser.org -> Wales
yi.fmuser.org -> Bahasa Yiddish
1. Idea reka bentuk pemain h5
Fungsi-fungsi ini harus disertakan setelah pembinaan semula: sokongan untuk permintaan (MP4 tanpa enkripsi) dan siaran langsung (m3u8), serasi (disesuaikan) ke terminal mudah alih, dan secara automatik memilih (gunakan flash atau h5) mengikut platform.
Dari segi kerangka kerja dan perpustakaan, kami masih memilih untuk menggunakan kerangka kerja nej, nej menyediakan banyak kaedah. Kelas-kelas yang terdedah kepada dunia luar dilaksanakan dengan menggunakan biasa, kerana kebanyakan komponen dan projek perniagaan produk pendidikan menggunakan biasa, yang sangat mudah digunakan. Selain itu, solusi fleksibel dipilih di terminal bergerak, kerana penyesuaian halaman web produk pendidikan telah disatukan menggunakan fleksibel, dan penanganan peristiwa gerak isyarat dipilih.
Untuk memudahkan pengembangan dan penambahan komponen, mod pemerhati digunakan. Mod pemerhati sangat sesuai digunakan dalam projek ukuran pemain video, dan ini juga mod reka bentuk yang telah dicuba dan diuji. Saya secara langsung merujuk kepada pelaksanaan serupa dalam bentuk flex, dan menulisnya lagi menggunakan js (tentu saja, saya menulisnya dengan sangat cepat).
Seperti yang ditunjukkan dalam gambar di atas, kelas asas komponen dan kelas tunggal komponenContainer menerapkan corak pemerhati. Semua komponen diwarisi dari kelas komponen. Dalam contoh komponen, metode dapat dipanggil untuk mengirim objek pemberitahuan untuk komunikasi antara komponen. Penjadualan pemberitahuan ada di komponenContainer. Dicapai. Komponen ini dibahagikan kepada komponen yang diperlukan dan komponen pilihan. Komponen yang diperlukan termasuk: komponen objek video (movieData), komponen main balik video (mainVideo), komponen api, dan lain-lain. Komponen pilihan dikembangkan mengikut keperluan perniagaan produk yang berbeza, yang dapat dikembangkan melalui Konfigurasi senarai komponen yang berbeza menyesuaikan fungsi khusus pemain, yang juga dilaksanakan dalam komponenContainer. Html5VideoMedia adalah enkapsulasi HTMLVideoElement. Ia tidak digunakan sebagai komponen, tetapi hanya menyediakan fungsi main balik video dan menentukan peristiwa yang berkaitan. Sebagai tambahan kepada komponen main balik video, Html5VideoMedia juga dapat menjadi komponen pengenalan iklan.
Dari segi penyesuaian, skema fleksibel digunakan untuk penyesuaian gaya. Beberapa komponen lebih kompleks, seperti bar kawalan. Fungsi web dan mudah alih sangat berbeza, dan gaya juga sangat berbeza. Anda boleh mempertimbangkan untuk menggunakan komponen yang berbeza pada platform yang berbeza (kawalan dan kawalanMobile dapat dilihat pada gambar), dan logikasinya akan sangat jelas. , Tidak perlu menulis banyak jika dan lain-lain, tetapi kerana bergantung pada lebih banyak komponen, fail js dan css akan lebih besar. Saya secara peribadi merasakan bahawa untuk meningkatkan pemeliharaan kod, disarankan untuk mengorbankan sebahagian dari ukuran fail.
,
2. Beberapa ciri siaran langsung hls
Penghakiman status siaran langsung. Sebenarnya, fungsi siaran langsung berkait rapat dengan perniagaan. Status siaran langsung di sini juga merupakan status perniagaan sahaja, seperti: tidak dimulakan, hendak dimulakan, siaran langsung, siaran langsung berakhir, dll. Produk kami masih menggunakan pengundian depan untuk mengemas kini status siaran langsung. Satu perkara yang perlu disebutkan adalah bahawa aliran hls tidak akan mencetuskan acara akhir, jadi status siaran langsung h5 sebenarnya dikendalikan sepenuhnya oleh pengundian.
Cara menentukan aliran tidak normal. Untuk masalah rangkaian umum atau masalah sumber, anda dapat memantau kejadian ralat dari tag video dan tag sumber. Kedua-dua teg perlu dipantau. Tetapi mesej kesalahan ketika kesalahan dicetuskan kadang-kadang bukan maklumat, atau penyemak imbas yang berbeza mempunyai pelaksanaan yang berbeza. Saya pernah mengalami perubahan atribut currentTime untuk dicari sebelumnya, dan kadang-kadang peristiwa kesalahan akan dicetuskan, tetapi kesalahan hanya mengatakan bahawa itu adalah kesalahan rangkaian. Tanpa maklumat lain, sangat menyakitkan untuk menentukan bahawa ia adalah masalah transkod video setelah membandingkan video lain. Semasa main semula aliran langsung, pengecualian streaming sekali-sekala mungkin berlaku. Pengecualian penstriman biasanya muncul ketika skrin membeku dan tidak semestinya mencetuskan kejadian ralat. Saya merujuk kepada rancangan rakan sekerja Qingguo sebelumnya: periksa currentTime sesekali, jika currentTime tidak berubah dalam jangka masa ini dalam keadaan main balik, kemungkinan aliran itu tidak normal, dan kemudian aktifkan semula.
,
3. Beberapa masalah yang tidak dapat diselesaikan pada masa ini
Terdapat banyak masalah berkaitan video di ios, kerana sistem ini mempunyai sekatan yang terlalu banyak. Senaraikan sedikit:
1. Hanya satu video atau audio yang dapat dimainkan pada masa yang sama, dan hanya satu video atau audio yang dibenarkan. Akan menjadi sedikit menyusahkan untuk melakukan fungsi iklan pengenalan.
2. Mainkan video di Safari dengan versi ios yang lebih rendah akan memaksa skrin penuh, dan ios 10 dapat menggunakan playinline. Anda boleh menambahkan webkit-playinginline ke WeChat dan beberapa webkit yang disesuaikan.
3. Tanpa operasi manusia, mustahil untuk memasuki halaman untuk mula memainkan video secara automatik
4. Di ios, js tidak dapat digunakan untuk mengendalikan kelantangan video, hanya dapat dikendalikan dengan butang fizikal. Di ios, anda boleh menyembunyikan fungsi kawalan kelantangan secara langsung. . .
5. Terdapat juga masalah mengambil tangkapan skrin, tetapi tidak ada penyelidikan jika tidak digunakan dalam produk.
Terdapat juga banyak masalah pada Android, terutamanya kerana terlalu banyak versi Android, terlalu banyak model, dan semua aspek tidak rata. Senaraikan sedikit:
1. Beberapa sistem android secara langsung akan menggantikan tag video dan menggunakan pemain sistem untuk bermain, yang biasa berlaku di telefon bimbit domestik
2. Hasil pengesanan kaedah canPlayType tidak sesuai dengan keadaan sebenar. Masalah ini telah dihadapi semasa proses pembangunan. Sebagai contoh, dikesan bahawa pemutaran m3u8 tidak disokong pada telefon bimbit Asus, tetapi sebenarnya boleh dimainkan. Pada asalnya saya ingin melepaskan sekatan ini, tetapi kemudian mendapati pemutaran paksa dalam paparan web apl Cloud Classroom boleh menyebabkan aplikasi tersebut hancur, jadi pengesanannya ditambahkan pada akhir. .
3. Android yang tidak menyokong main balik m3u8 pada umumnya berada di sekitar android4.0 ke bawah
|
Masukkan e-mel untuk mendapatkan kejutan
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Orang Afrika
sq.fmuser.org -> Bahasa Albania
ar.fmuser.org -> Bahasa Arab
hy.fmuser.org -> Armenia
az.fmuser.org -> Azerbaijan
eu.fmuser.org -> Basque
be.fmuser.org -> Belarus
bg.fmuser.org -> Bulgaria
ca.fmuser.org -> Bahasa Catalan
zh-CN.fmuser.org -> Bahasa Cina (Ringkas)
zh-TW.fmuser.org -> Bahasa Cina (Tradisional)
hr.fmuser.org -> Bahasa Croatia
cs.fmuser.org -> Bahasa Czech
da.fmuser.org -> Denmark
nl.fmuser.org -> Belanda
et.fmuser.org -> Estonia
tl.fmuser.org -> Orang Filipina
fi.fmuser.org -> Bahasa Finland
fr.fmuser.org -> Bahasa Perancis
gl.fmuser.org -> orang Galicia
ka.fmuser.org -> Orang Georgia
de.fmuser.org -> Jerman
el.fmuser.org -> Greek
ht.fmuser.org -> Haitian Creole
iw.fmuser.org -> Bahasa Ibrani
hi.fmuser.org -> Bahasa Hindi
hu.fmuser.org -> Bahasa Hungary
is.fmuser.org -> Bahasa Iceland
id.fmuser.org -> Bahasa Indonesia
ga.fmuser.org -> Ireland
it.fmuser.org -> Bahasa Itali
ja.fmuser.org -> Jepun
ko.fmuser.org -> Bahasa Korea
lv.fmuser.org -> Bahasa Latvia
lt.fmuser.org -> Bahasa Lithuania
mk.fmuser.org -> orang Macedonia
ms.fmuser.org -> Bahasa Melayu
mt.fmuser.org -> Malta
no.fmuser.org -> Bahasa Norway
fa.fmuser.org -> Parsi
pl.fmuser.org -> Bahasa Poland
pt.fmuser.org -> Portugis
ro.fmuser.org -> Romania
ru.fmuser.org -> Rusia
sr.fmuser.org -> Bahasa Serbia
sk.fmuser.org -> Bahasa Slovak
sl.fmuser.org -> Bahasa Slovenia
es.fmuser.org -> Sepanyol
sw.fmuser.org -> Swahili
sv.fmuser.org -> Sweden
th.fmuser.org -> Thai
tr.fmuser.org -> Turki
uk.fmuser.org -> Ukraine
ur.fmuser.org -> Bahasa Urdu
vi.fmuser.org -> Vietnam
cy.fmuser.org -> Wales
yi.fmuser.org -> Bahasa Yiddish
FMUSER Wirless Menghantar Video Dan Audio Lebih Mudah!
Hubungi Kami
alamat:
No.305 Bilik HuiLan Bangunan No.273 Huanpu Road Guangzhou China 510620
Kategori
Buletin