日本免费精品_最新日韩一区_亚洲视频一区在线_a在线视频观看_天天射夜夜骑_粉嫩av一区二区三区_欧美中日韩免费视频_综合图区欧美_国内精品美女在线观看_午夜精品久久久久久久男人的天堂

首頁 > 編程 > HTML > 正文

HTML5拍照和攝像機功能實戰詳解

2024-08-26 00:21:18
字體:
來源:轉載
供稿:網友

開篇

最近在做一個chrome app的云相機應用,應用包括拍照、攝像、保存照片視頻、上傳文件等等核心功能,其中涉及到很多HTML5對媒體流相關的API。寫這篇文章的目的,其一是總結梳理知識點,最重要是希望對有相關需求的讀者提供一些指導。

注:本篇文章以實戰為準,理論知識不做過多介紹。

拍照

HTML5的getUserMedia API為用戶提供訪問硬件設備媒體(攝像頭、視頻、音頻、地理位置等)的接口,基于該接口,開發者可以在不依賴任何瀏覽器插件的條件下訪問硬件媒體設備。

瀏覽器兼容性如下:

 

 
HTML5,拍照,攝像機

 

從上圖可以看到,主流瀏覽器Firefox、Chrome、Safari、Opera等等已經全面支持。

1、獲取視頻流,并用video標簽播放。

<video id="video" autoplay></video>        --------------------------------------------------------------        const videoConstraints = { width: 1366, height: 768 };    const videoNode = document.querySelector('#video');    let stream = await navigator.mediaDevices.getUserMedia({ audio: true, video: videoConstraints });    videoNode.srcObject = stream;    videoNode.play();

2、多個攝像頭設備,如何切換?

// enumerateDevices獲取所有媒體設備    const mediaDevices = await navigator.mediaDevices.enumerateDevices();    // 通過設備實例king屬性videoinput,過濾獲取攝像頭設備    const videoDevices = mediaDevices.filter(item => item.kind === 'videoinput') || [];    // 獲取前置攝像頭    const videoDeviceId = videoDevices[0].deviceId;    const videoConstraints = { deviceId: { exact: videoDeviceId }, width: 1366, height: 768 };    let stream = await navigator.mediaDevices.getUserMedia({ audio: true, video: videoConstraints });    // 獲取后置攝像頭    const videoDeviceId = videoDevices[1].deviceId;    const videoConstraints = { deviceId: { exact: videoDeviceId }, width: 1366, height: 768 };    let stream = await navigator.mediaDevices.getUserMedia({ audio: true, video: videoConstraints });        // 依次類推...

3、拍照保存圖片

// 通過canvas捕捉video流,生成base64格式圖片    const canvas = document.createElement('canvas');    const context = canvas.getContext('2d');    canvas.width = 1366;    canvas.height = 768;    context.drawImage(videoNode, 0, 0, canvas.width, canvas.height);    download(canvas.toDataURL('image/jpeg'));    // 下載圖片    function download (src) {        if (!src) return;        const a = document.createElement('a');        a.setAttribute('download', new Date());        a.href = src;        a.click();    }

4、關閉攝像頭設備

let stream = await navigator.mediaDevices.getUserMedia({ audio: true, video: videoConstraints });    // 3s后關閉攝像頭    setTimeout(function () {        stream.getTracks().forEach(track => track.stop());        stream = null;    }, 3000);

到此完成簡單的相機拍照功能

攝像

攝像基本流程,是錄制一段視頻流并保存為音視頻文件。HTML5 MediaRecorder對象提供了多媒體錄音和錄視頻功能。

瀏覽器兼容性如下:

 

 
HTML5,拍照,攝像機

 

從上圖所示,瀏覽器對MediaRecorder兼容性遠不如getUserMedia,目前只有Chrome、Firefox對MediaRecorder支持較好。

==注意:攝像預覽播放器video標簽要設置靜音muted(消除回聲導致的刺耳噪音)==

const videoConstraints = { width: 1366, height: 768 };    let stream = await navigator.mediaDevices.getUserMedia({ audio: true, video: videoConstraints });    let mediaRecorder = new MediaRecorder(stream);    let mediaRecorderChunks = []; // 記錄數據流       mediaRecorder.ondataavailable = (e) => {        mediaRecorderChunks.push(e.data);    };        mediaRecorder.onstop = (e) => {        // 通過Blob對象,創建文件二進制數據實例。        let recorderFile = new Blob(mediaRecorderChunks, { 'type' : mediaRecorder.mimeType });        mediaRecorderChunks = [];        const file = new File([this.recorderFile], (new Date).toISOString().replace(/:|/./g, '-') + '.mp4', {            type: 'video/mp4'        });        download(URL.createObjectURL(file));        // 下載視頻        function download (src) {            if (!src) return;            const a = document.createElement('a');            a.setAttribute('download', new Date());            a.href = src;            a.click();        }    };        mediaRecorder.stop(); // 停止錄制,觸發onstop事件

總結

通過以上實戰,相信讀者已經掌握基礎相機功能,拍照、攝像、保存文件等。由于應用項目非個人項目,源碼不公開,有興趣的朋友,不妨動手一試。


注:相關教程知識閱讀請移步到HTML教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
日韩欧美99| 国产小视频在线| 日韩视频在线一区二区| 亚洲.国产.中文慕字在线| 欧美亚洲视频在线看网址| 中文字幕亚洲一区二区av在线| 91蜜桃婷婷狠狠久久综合9色| 国产专区中文字幕| 午夜一区二区三区| 视频一区三区| 日韩欧美在线视频| 综合图区亚洲白拍在线 | 精品日韩一区二区三区免费视频| 国产黄色网页| 欧美 日韩 国产在线| 亚洲欧美999| 国产欧美日韩在线播放| 日韩中文字幕视频在线观看| 亚洲免费在线视频一区 二区| 亚洲制服一区| 亚洲国产福利视频| 欧美日韩精品欧美日韩精品一| 国产成人中文字幕| 亚洲欧美中文在线视频| 日韩国产成人| 日韩精品视频在线| 欧美日韩在线精品成人综合网| 日韩欧美亚洲国产一区| 日本不卡免费高清视频| 91亚洲国产| 日韩一级中文字幕| 欧美日韩免费精品| 不卡在线视频| www.xxxx精品| 久久婷婷中文字幕| 亚洲福利视频专区| 一区二区日韩av| 亚洲乱码在线观看| 亚洲欧美伊人| 国产欧美日韩中文久久| 国产一区二中文字幕在线看| 日韩国产欧美在线视频| 成人禁用看黄a在线| 国产福利精品导航| 午夜一区二区三区视频| 欧美日韩中文另类| 国产不卡一区| 亚洲影视资源网| 精品国产欧美日韩不卡在线观看| 精品激情国产视频| 久久久精品国产免费观看同学| 日韩欧美中文字幕一区| 久久久91精品| 亚洲一区视频在线观看视频| 精品不卡一区二区| 亚洲女人天堂a在线播放| 国产日韩1区| 亚洲久草视频| 国产欧美日韩三级| 成人无遮挡免费网站视频在线观看| 欧美日韩亚洲一区| 国产绿帽一区二区三区| 日韩 欧美 亚洲| 日韩在线视频中文字幕| 中文字幕国产日韩| 日韩欧美国产免费| 日韩中文首页| 精品中文字幕在线播放| a级在线免费观看| 日韩欧美国产综合| 久久精品不卡| 日韩欧美视频一区二区三区四区| 一区视频在线播放| 欧美1区免费| 中文字幕狠狠干| 欧美日韩国产免费观看| 日韩高清不卡在线| 91精选在线| 不卡在线一区二区| 亚洲国产欧美久久| 天堂中文在线视频| 日韩免费视频| 久久久久久自在自线| 黄色片免费看| 天天综合日日夜夜精品| 亚洲素人一区二区| 欧美日韩国产综合视频在线观看 | 91精品国产91久久久久| 天天综合天天添夜夜添狠狠添| a天堂在线资源| 亚洲三级网站| 欧美日韩成人综合| 在线欧美日韩国产| 国产黄在线看| 亚洲va韩国va欧美va精品| 色综合久久六月婷婷中文字幕| 国产 欧美 日韩 在线| 中文字幕欧美亚洲| 国产中文在线播放| 在线观看精品国产| 91精品久久久久久久91蜜桃| 欧美日韩性视频| 欧美高清视频一区二区三区| 欧美三级网址| 国产69精品久久app免费版| 中文字幕精品一区二| 在线观看区一区二| 亚洲日产av中文字幕| 久久精品网站免费观看| 精品日韩欧美| 被陌生人带去卫生间啪到腿软| 亚洲.国产.中文慕字在线| 日韩欧美中文视频| 精品久久久视频| 国产在线不卡一区| 欧美亚洲天堂网| 91精品国产91久久久久久久久| 成年人黄国产| 影音先锋中文字幕在线观看| 国产福利久久久| 国产欧美综合在线观看第十页| 国产中文在线观看| 国产三级中文字幕| 91精品国产乱码久久蜜臀| 日韩.欧美.亚洲| 日韩亚洲欧美中文在线| 日韩欧美资源站| 日韩欧美综合在线视频| 亚洲大胆人体av| 99精品一级欧美片免费播放| 欧美日韩高清一区二区| 国产欧美日韩视频在线| 在线视频不卡国产V| 国产亚洲视频中文字幕视频| 快she精品国产999| 亚州福利视频| 午夜国产在线视频| 久久99久久久欧美国产| 欧美国产综合在线V| aaa欧美日韩| 91精品国产自产在线观看永久∴ | 亚洲国产无线乱码在线观看 | 欧美亚洲另类制服自拍| 日韩免费视频一区二区视频在线观看 | 伊人网站在线| 亚洲视频中文字幕| 日韩在线视频免费观看| 国产日韩精品在线看| 中文字幕 欧美 日韩| 中文字幕在线看视频国产欧美| 91精品国产色综合久久久蜜香臀| 日韩在线精品视频| 日韩精品一级| 欧美日韩精品区| 日韩欧美在线中字| 欧美日韩在线国产| 日韩在线视频在线观看| 国产激情在线播放| 国产日韩亚洲欧美| 欧美日韩国产页| 91麻豆精品国产91久久久使用方法 | 精品一二三四| 欧美不卡视频一区发布| 久久久精品日韩欧美| 中文av字幕一区| 91精品xxx在线观看| 日本a级黄色| 日韩欧美国产亚洲| 国产视频一区三区| 国产中文伊人| 日韩中文字幕视频在线| 午夜私人影院在线观看| 欧美一级久久久久久久久大| 欧美亚洲天堂网| 欧美wwww| 欧美日韩国产高清视频| 91精品国产综合久久蜜臀| 精品亚洲综合| 日韩欧美国产黄色| 精品福利一区二区三区| 欧美啪啪一区| 国产乱码在线观看| av首页在线| 国产在线拍揄自揄拍| 精品日韩在线观看| 亚洲成年人在线播放| 国产午夜在线观看| 亚洲一二三不卡| 亚洲综合在线小说| 亚洲一区在线视频观看| 九一精品国产| 亚洲日本欧美日韩高观看| 日韩欧美专区在线| 久久视频在线免费观看| 欧美日韩国产综合视频在线观看中文| 国产真实乱子伦精品视频| 婷婷久久综合网| 国产成人一二三区| 中文字幕在线亚洲| 国产字幕中文| 精品国产免费视频| 欧美另类专区| 欧美日韩国产在线观看| 欧美午夜精品在线| 中文字幕一区二区三区精品| 日韩视频在线免费看| 欧美变态tickling挠脚心| 91精品国产91久久久久久久久 | 视频一区二区中文字幕| 一区二区视频在线观看免费的| 国产欧美中文在线| 国产成免费视频| 日韩亚洲欧美中文高清在线| 国产成人精品综合久久久| 欧美日韩国产中文| 欧美日韩国产第一页| 韩国v欧美v日本v亚洲| 欧美一级欧美三级在线观看| 国产在线不卡av| 免费看黄资源大全高清| 日韩精品首页| 欧美日韩激情在线一区二区三区 | 午夜伊人狠狠久久| 欧美日韩国产系列| 亚洲a级在线播放观看| 国产视频一二区| 国产传媒久久久| 中文字幕日韩第一页| 中文字幕精品一区二区三区在线| 国产91久久久久蜜臀青青天草二 | 久草亚洲一区| 亚洲福利视频专区| 欧美日韩午夜在线| 国产高清精品二区| 亚洲国产一区自拍| 欧洲精品二区| 国产在线精品日韩| 久久韩国免费视频| 日韩在线不卡| 欧美日韩国产影片| 日本а中文在线天堂| 免费看黄资源大全高清| 日韩精品首页| 一区二区日韩免费看| 日韩中文字幕在线一区| 日韩久久在线| 最近中文字幕第一页| 国产香蕉免费精品视频| 精品一二线国产| 色猫猫国产区一区二在线视频| 日韩字幕在线观看| 日韩欧美不卡| 亚洲一二三不卡| 亚洲一区视频在线观看视频| 亚洲最大黄色| 午夜国产在线| 91精品国产色综合久久不卡蜜臀| 中文字幕最新精品| 中文字幕在线导航| 久久婷婷综合国产| 内射国产内射夫妻免费频道| 精品乱子伦一区二区| 久久久久久自在自线| 搞黄在线观看| 99精品在线播放| 欧美日韩在线不卡| 日韩亚洲欧美中文三级| 国产三级做爰在线观看| 影音先锋中文字幕在线观看| 一区二区三区免费看视频| 日韩国产在线观看一区| 亚洲人成欧美中文字幕| 亚洲高清中文字幕| 国产91久久久久| 国产婷婷色一区二区三区| 日韩精品一级| 91精品在线观看视频| 不卡福利视频| 999精品网| 欧美日韩国产免费观看视频| 国产一卡二卡3卡4卡四卡在线| 国产日韩中文在线| 欧美高清一级片在线| 日韩三级在线播放| 蜜桃视频中文字幕| 亚洲三级中文字幕| 91麻豆精品国产91久久久使用方法 | 日韩 欧美 综合| 欧美日韩一级片在线观看| 中文字幕在线高清| 欧洲一级精品| 日韩欧美在线综合| 欧洲精品在线一区| 日韩在线高清视频| 精品久久久视频| 一区二区三区在线|网站| 色综合天天综合网国产成人综合天| 精品在线观看一区| 91精品国产综合久久精品app| 在线亚洲免费| 精品国产免费观看一区| 91精品国产丝袜白色高跟鞋| 日韩视频精品| 国产最新在线| 国产永久在线观看| 国产成人精品综合久久久| 欧美久久久精品| 欧美日韩精品不卡| 91精品国产综合久久香蕉的特点 | 精品欧美日韩精品| 日本精品免费观看高清观看| 久久久精品免费免费| 欧美va亚洲va日韩∨a综合色| 亚洲综合在线视频| 国产欧美一级| 中文字幕日韩国产| 中文字幕一区不卡| 亚洲欧美99| 日韩精品视频在线看| 国产一级视频在线播放| 日韩一二三四区| 久久久精品99| 精品国产1区二区| 精品久久人人做人人爽| 中文字幕在线国产| 国产欧美日韩视频在线| 国产视频一区二| 影音先锋中文字幕在线观看| 亚洲国产欧美日韩精品| 欧美日韩成人综合| 日韩视频中文| 亚洲免费婷婷| 亚洲高清精品视频| 中文字幕在线观看国产| 国产不卡一区| 日韩一级免费视频| 日韩视频国产视频| 欧美日韩视频免费| 欧美日韩国产综合视频在线观看中文| 日韩中文字幕| 国产黄色片中文字幕| 欧美日韩在线播放视频| 日韩高清不卡一区二区| 精品在线网站观看| 亚洲影视资源网| 交视频在线观看国产| 成人xxxx| 久久99久久久欧美国产| 国产在线第一页| 国产中文在线视频| 亚洲国产午夜精品| 九色蝌蚪视频在线| 欧美日韩成人一区| 日韩av一区在线| 亚洲深夜福利| 亚洲中文字幕一区| 久草亚洲一区| 日韩三级免费观看| 欧美国产三级| 91精品网站| 搞黄在线观看| 欧美一级搡bbbb搡bbbb| 国产欧美日韩中文字幕在线| www.中文字幕在线| 国产欧美日韩在线观看| 久久久91精品| 欧美日韩综合视频| 国产在线日韩欧美| 日韩欧美中文字幕公布| 亚洲一区在线观看视频| 国产在线观看黄色| 欧美日韩国产在线播放| 美日韩精品免费视频| 中文字幕在线亚洲| 国产一卡2卡3卡免费网站| 日韩欧美国产综合| 日韩在线 中文字幕| 日韩在线二区| 精品国产不卡一区二区| 第一页在线观看| 精品久久九九| 亚洲免费福利视频| 色综合影院在线| 欧美亚洲国产免费| 国产精久久久久| 人成免费在线视频| 搞黄在线观看| 中文字幕国产在线| 欧美日韩国产高清一区| 91精品久久久久久蜜臀| 亚洲欧美久久234| 第一页在线观看| 国产偷国产偷亚洲清高网站| 日韩久久99| 中文字幕精品国产| 国产永久在线观看| 日韩欧美国产亚洲| 999在线视频| 国产欧美综合视频| www.老鸭窝.com|