


Gambaran keseluruhan dan contoh menangkap maklumat audio dan video menggunakan petua tutorial HTML5_html5
Merakam maklumat audio dan video telah lama menjadi kesukaran dalam pembangunan Web. Selama bertahun-tahun, kami telah bergantung pada pemalam penyemak imbas untuk memenuhi keperluan ini.
Dalam HTML 5, terdapat banyak API yang boleh mengakses peranti perkakasan, seperti API Geolokasi untuk mengakses peranti GPS, API Orientasi untuk mengakses peranti pecutan, API WebGL untuk mengakses peranti GPU, API Audio Web untuk mengakses peranti main balik audio, dsb. . API ini sangat berkuasa kerana pembangun boleh mengakses terus peranti perkakasan asas dengan menulis kod skrip JavaScript.
Artikel ini memperkenalkan API baharu yang membolehkan aplikasi web mempunyai keupayaan untuk mengakses kamera dan peranti mikrofon pengguna dengan menggunakan kaedah navigatior.getUserMedia().
Sejarah pembangunan teknologi untuk menangkap data media
Dalam beberapa tahun kebelakangan ini, keperluan untuk mengakses peranti tempatan pelanggan dalam aplikasi web mula muncul, jadi organisasi W3C memutuskan untuk menganjurkan Kumpulan kerja DAP (DASAR APIS Peranti) untuk membangunkan piawaian bersatu bagi merealisasikan keperluan ini.
Mari kita lihat apa yang berlaku pada tahun 2011:
Menangkap data media dalam fail halaman HTML
Standard pertama yang dibangunkan oleh kumpulan kerja DAP ialah cara Menangkap data media dalam halaman HTML web aplikasi. Mereka memutuskan untuk melebihkan elemen input bagi jenis fail () dan menambah nilai atribut baharu pada atribut accept.
Jika pembangun ingin melaksanakan fungsi pengguna mengambil gambar melalui kamera, mereka boleh menulis kod seperti yang ditunjukkan di bawah.
Kod untuk merakam data video dan data audio adalah serupa:
untuk melengkapkan pengambilan gambar atau keupayaan untuk merakam data media. Walau bagaimanapun, kerana kod ini masih kekurangan keupayaan untuk melaksanakan beberapa keperluan yang berkaitan (seperti memaparkan data video yang ditangkap dalam elemen kanvas, atau menggunakan penapis WEBGL pada data video yang ditangkap), ia tidak digunakan secara meluas oleh pembangun.
Pelayar yang disokong:
Chrome untuk Android (0.16)
Firefox Mobile 10.0
elemen peranti
Jika anda menggunakan kawalan fail, tangkap data media dan proseskannya Memproses keupayaan adalah sangat terhad, jadi satu standard baharu muncul yang boleh menyokong mana-mana peranti. Piawaian ini menggunakan elemen peranti.
Pelayar Opera ialah penyemak imbas pertama yang menangkap data video melalui elemen peranti. Hampir pada hari yang sama, organisasi WhatWG memutuskan untuk menggunakan kaedah navigator.getUserMedia() untuk menangkap data media. Seminggu kemudian, Opera melancarkan pelayar baharu yang menyokong kaedah navigator.getUserMedia(). Kemudian, Microsoft Tools melancarkan pelayar IE 9 yang menyokong kaedah ini. Penggunaan
elemen peranti adalah seperti berikut.
kemas kini fungsi(strim) {
dokumen. querySelector('video').src = stream.url;
Pelayar yang disokong:
Malangnya, tiada versi rasmi penyemak imbas menyokong elemen peranti setakat ini.
WEBRTC
Baru-baru ini, disebabkan kemunculan API WebRTC (Web Real Time Communication: Web real-time communication), teknologi penangkapan data media telah mencapai kemajuan yang besar. Google, Opera, Mozilla dan syarikat lain sedang berusaha keras untuk melaksanakannya dalam penyemak imbas mereka.
WebRTC API ialah API yang berkait rapat dengan kaedah getUserMedia, yang menyediakan keupayaan untuk mengakses kamera tempatan atau peranti mikrofon pelanggan.
Pelayar yang disokong:
Setakat ini, dalam versi Chrome 18 penyemak imbas, WebRTC boleh digunakan selepas menetapkannya dalam halaman chrome://flags Dalam versi Chrome 21 penyemak imbas, API ini digunakan secara lalai, tiada lagi tetapan diperlukan. API WebRTC disokong secara lalai dalam penyemak imbas di atas Opera 12 dan Firefox 17.
Menggunakan kaedah getUserMedia
Dengan menggunakan kaedah getUserMedia, kami boleh mengakses terus peranti kamera tempatan dan peranti mikrofon pelanggan tanpa bergantung pada pemalam.
Mengesan sokongan penyemak imbas
Anda boleh menggunakan kaedah yang ditunjukkan di bawah untuk mengesan sama ada penyemak imbas menyokong kaedah getUserMedia.
fungsi hasGetUserMedia() {
/ /Sila ambil perhatian: Awalan
return tidak digunakan dalam penyemak imbas Opera!!(navigator.getUserMedia || navigator.webkitGetUserMedia ||
navigator.mozGetUserMedia || navigator.msGetUserMedia ||
}
jika (mempunyaiGetUserMedia()) {
alert('Pelayar anda menyokong kaedah getUserMedia');
}
lain {
alert('Pelayar anda tidak menyokong kaedah getUserMedia');
}
Dapatkan kebenaran untuk mengakses peranti
Untuk mengakses peranti kamera pelanggan dan peranti mikrofon, kami perlu mendapatkan kebenaran terlebih dahulu. Parameter pertama kaedah getUserMedia ialah objek yang menentukan jenis media. Contohnya, apabila anda ingin mengakses peranti kamera, parameter pertama hendaklah {video:true}. Untuk mengakses peranti kamera dan peranti mikrofon pada masa yang sama, anda perlu menggunakan {video:true,audio: true} parameter. Kod adalah seperti berikut:
Salin kod
Sicherheit
In einigen Browsern wird beim Aufruf der getUserMedia-Methode ein Eingabeaufforderungsfenster angezeigt, in dem der Benutzer gefragt wird, ob er den Zugriff auf seine Kamera oder sein Mikrofon zulassen oder verweigern soll.
Fotos aufnehmen
In der Canvas-API können Sie die Methode ctx.drawImage(video,0,0) verwenden, um einen bestimmten Frame im Videoelement an das Canvas-Element auszugeben. Da wir die erfassten Bildinformationen von der Kamera des Benutzers an das Videoelement ausgegeben haben, können wir die Bildinformationen natürlich auch über das Videoelement an das Canvas-Element ausgeben, um die Fotoaufnahme in Echtzeit zu realisieren Funktion. Der Code ist wie folgt.
var canvas = document.getElementById('canvas'); var localMediaStream = null;
function snapshot() {
if (localMediaStream) {
ctx.drawImage(video, 0, 0); .toDataURL( 'image/png');
}
}
video.addEventListener('click', snapshot, false);
//Kein Herstellerpräfix verwenden
navigator.getUserMedia ({video : true}, function(stream) {
video.src = window.URL.createObjectURL(stream);
localMediaStream = stream;
},
CSS-Filter anwenden
Bisher können CSS-Filter in Browsern ab Chrome 18 und höher verwendet werden.
Code kopieren
-webkit-filter: greyscale(1);
}
.sepia {
-webkit-filter: sepia(1);
.blur {
- Webkit-Filter: Unschärfe (3px);
...
script> var idx = 0; ', ' hue-rotate3', 'saturate', 'invert', ''];
function changeFilter(e) {
var el = e.target;
el.className = ''; 🎜>var effect = filter[idx % filter.length]; // Schleife durch Filter
if (effect) {
el.classList.add(effect);
}
document. getElementById('video').addEventListener('click', changeFilter, false);

H5 menyediakan pelbagai ciri dan fungsi baru, sangat meningkatkan keupayaan pembangunan front-end. 1. Sokongan Multimedia: Media Media Melalui dan Elemen, Tiada Plug-Ins diperlukan. 2. Kanvas: Gunakan elemen untuk menjadikan grafik dan animasi 2D secara dinamik. 3. Penyimpanan Tempatan: Melaksanakan penyimpanan data berterusan melalui LocalStorage dan sessionStorage untuk meningkatkan pengalaman pengguna.

H5 dan HTML5 adalah konsep yang berbeza: HTML5 adalah versi HTML, yang mengandungi unsur -unsur baru dan API; H5 adalah rangka kerja pembangunan aplikasi mudah alih berdasarkan HTML5. HTML5 Parses dan membuat kod melalui pelayar, manakala aplikasi H5 perlu menjalankan bekas dan berinteraksi dengan kod asli melalui JavaScript.

Unsur -unsur utama HTML5 termasuk ,,,,,, dan lain -lain, yang digunakan untuk membina laman web moden. 1. Tentukan kandungan kepala, 2.

Tidak ada perbezaan antara HTML5 dan H5, iaitu singkatan HTML5. 1.HTML5 adalah versi kelima HTML, yang meningkatkan fungsi multimedia dan interaktif laman web. 2.H5 sering digunakan untuk merujuk kepada laman web atau aplikasi mudah alih berasaskan HTML5, dan sesuai untuk pelbagai peranti mudah alih.

HTML5 adalah versi terkini bahasa markup hiperteks, yang diseragamkan oleh W3C. HTML5 memperkenalkan tag semantik baru, sokongan multimedia dan peningkatan bentuk, meningkatkan struktur web, pengalaman pengguna dan kesan SEO. HTML5 memperkenalkan tag semantik baru, seperti,, dan lain -lain, untuk menjadikan struktur laman web lebih jelas dan kesan SEO lebih baik. HTML5 menyokong elemen multimedia dan tiada pemalam pihak ketiga diperlukan, meningkatkan pengalaman pengguna dan kelajuan memuatkan. HTML5 meningkatkan fungsi bentuk dan memperkenalkan jenis input baru seperti, dan lain -lain, yang meningkatkan pengalaman pengguna dan membentuk kecekapan pengesahan.

Bagaimana cara menulis kod HTML5 yang bersih dan cekap? Jawapannya adalah untuk mengelakkan kesilapan biasa dengan tag semantik, kod berstruktur, pengoptimuman prestasi dan mengelakkan kesilapan biasa. 1. Gunakan tag semantik seperti, dan lain -lain untuk meningkatkan kebolehbacaan kod dan kesan SEO. 2. Pastikan kod berstruktur dan boleh dibaca, menggunakan lekukan dan komen yang sesuai. 3. Mengoptimumkan prestasi dengan mengurangkan tag yang tidak perlu, menggunakan CDN dan kod pemampatan. 4. Elakkan kesilapan biasa, seperti tag tidak ditutup, dan pastikan kesahihan kod.

H5 meningkatkan pengalaman pengguna web dengan sokongan multimedia, penyimpanan luar talian dan pengoptimuman prestasi. 1) Sokongan multimedia: H5 dan Elemen Memudahkan pembangunan dan meningkatkan pengalaman pengguna. 2) Penyimpanan Luar Talian: WebStorage dan IndexedDB membenarkan penggunaan luar talian untuk meningkatkan pengalaman. 3) Pengoptimuman Prestasi: Pekerja web dan elemen mengoptimumkan prestasi untuk mengurangkan penggunaan jalur lebar.

Kod HTML5 terdiri daripada tag, elemen dan atribut: 1. Tag mentakrifkan jenis kandungan dan dikelilingi oleh kurungan sudut, seperti. 2. Unsur terdiri daripada tag permulaan, kandungan dan tag akhir, seperti kandungan. 3. Atribut menentukan pasangan nilai utama dalam tag permulaan, meningkatkan fungsi, seperti. Ini adalah unit asas untuk membina struktur web.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma
