婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > canvas與html5實現視頻截圖功能示例

canvas與html5實現視頻截圖功能示例

熱門標簽:西寧智能外呼系統加盟 聯通400電話申請 百應電銷機器人產業 高德地圖標注賓館位置 飛亞外呼系統 杭州營銷電銷機器人供應商 電話機器人如何 電視購物電銷外呼系統 貸款電銷人工和機器人哪個好

這段時間一直在研究canvas,突發奇想想做一個可以截屏視頻的功能,然后把圖片拉去做表情包,哈哈哈哈哈哈~~

制作方法:

1.在頁面中加載視頻

在使用canvas制作這個截圖功能時,首先必須保證頁面上已經加載完成了這個視頻,這樣才能夠方便的對其操作。如果使用下面直接嵌入<video>標簽的方式:

<video loop controls id="testmp4" width="500" height="400" >    

<source src="test.mp4" type="video/mp4">  

<source src="test.webm" type="video/webm">   

<source src="test.ogg" type="video/ogg">

</video> 

在我的那篇《html5與視頻》中講到,瀏覽器對視頻的預加載progress以及load事件支持不同,會影響video的播放及其他事件的觸發。所以我們在這里使用js構造video的方式來引入視頻。

這種方式引入視頻要注意,不能引入多個source,所以要先判斷瀏覽器對視頻格式的支持。

1.1使用video的canPlayType()方法判斷支持格式

canPlayType()方法需要傳入一個參數,這個參數就是video的格式,

常用值:video/ogg;

    video/mp4;

    video/webm;

或者包括編碼器:

    video/ogg;codecs="theora,vorbis"

    video/mp4;codecs="avc1.4D401E, mp4a.40.2"

    video/webm;codesc="vp8.0, vorbis"

返回值:表示網頁的支持級別:"probably"-最有可能支持(輸入值帶編碼器的時候只返回這個);"maybe" - 可能支持;"" - (空字符串)不支持;

function videoType(video){

    var returnType='';

    if(video.canPlayType('video/mp4')=='probably'||video.canPlayType('video/mp4')=='maybe'){

      returnType= 'mp4';

    }else if(video.canPlayType('video/ogg')=='probably'||video.canPlayType('video/ogg')=='maybe'){<br>     returnType= 'ogg';    <br>   }else if(video.canPlayType('video/webm')=='probably'||video.canPlayType('video/webm')=='maybe'){<br>     returnType= 'webm';    <br>   }<br>   return returnType; 


} 

這個函數可以判斷瀏覽器對video支持的格式。

 1.2使用js動態加載video標簽

這里判斷了瀏覽器的支持格式后,由于我用的是chrome,所以我的瀏覽器支持mp4格式的視頻,然后我們動態創建一個video標簽。

var videoElem;

var videoDiv;

function createVideo(){

     videoElem=document.createElement("video");//創建video

     videoDiv=document.getElementById("videopanel");//獲取video的外層容器

     videoDiv.appendChild(videoElem);

     var vtype=videoType(videoElem);//判斷瀏覽器支持的格式

     if(vtype==""){

        videoDiv.innerHtml('不支持video')

    }else{

        videoElem.setAttribute('src',"text."+vtype);
    }
}         

由于這里我們要制作截圖功能,單純的video不具備截圖的接口,所以我們要把它復制到canvas上,在canvas上播出這個視頻,所以這里我們先把video給隱藏掉(display:none)。

2.使用canvas復制視頻

現在video已經在瀏覽器上播放了,接下來我們把它復制到canvas里,首先建立canvas,然后得到畫布context,這些就不說了。如何把video畫在canvas上,這里我們要使用一個函數。drawImage函數的用法

1.drawImage(img,x,y):在畫布的(x,y)這個位置畫一個img;

2.drawImage(img,x,y,width,height):在畫布的(x,y)這個位置畫一個width寬,height高的img;

3.drawImage(img,sx,sy,swidth,sheight,x,y,width,height):在畫布的(x,y)位置畫一個img的(sx,sy)位置的swidth寬,sheight高的一塊截圖,畫在畫布上要縮放到width寬和height高。

以上就是drawImage的用法了,這個函數非常的強大。

回到做截圖,我們現在已經在瀏覽器上創建好了畫布--contextVideo,接著我們在這里把視頻畫出來:

contextVideo.drawImage(videoElem,0,0);

然后我們可以看到在canvas里畫了一張圖,但是視頻是不斷變化的,所以我們需要使用setInterval函數不斷的吧video作為源來畫圖。

setInterval(function(){<br>    contextVideo,drawImage(videoElem,0,0);<br>},100) 

這里時間間隔的大小會影響到視頻播放是否會卡。  

到這里我們就把video搬到canvas上展示了。接下來制作截圖。

 3.制作截圖展示canvas面板

這里我們需要再在頁面上畫一個canvas畫布--contextImg,然后再次利用drawImage方法,截圖。

contextImg.drawImage(canvasVideo,0,0,canvasVideo.width,canvasVideo.height); 

這段代碼將第一個canvas畫到了第二個canvas上。

4.制作截圖按鈕

制作一個按鈕,然后綁定click事件,點擊后就調用上一步的函數,這樣就可以制作一個截圖了。

當圖截好后可以將圖右鍵保存下來,然后倒入ps制作表情包了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:玉溪 安慶 撫州 邯鄲 煙臺 內蒙古 晉中 牡丹江

巨人網絡通訊聲明:本文標題《canvas與html5實現視頻截圖功能示例》,本文關鍵詞  canvas,與,html5,實現,視頻,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《canvas與html5實現視頻截圖功能示例》相關的同類信息!
  • 本頁收集關于canvas與html5實現視頻截圖功能示例的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    波多野结衣一区二区三区 | 欧美mv日韩mv国产网站app| 91丨九色丨黑人外教| 91福利视频网站| 日韩一区二区三区视频在线观看| 91精品免费在线观看| 欧美一区二区三区视频免费播放| 欧美成人伊人久久综合网| 国产欧美一区二区三区在线看蜜臀 | 91国内精品野花午夜精品| 欧美日韩视频在线第一区| 91精品国产综合久久久久久漫画 | 亚洲一区二区三区视频在线播放 | 亚洲一区二区美女| 极品美女销魂一区二区三区| 成人性生交大片免费看中文| 欧美日韩亚洲综合一区| 国产亚洲1区2区3区| 亚洲一区二区在线免费观看视频| 开心九九激情九九欧美日韩精美视频电影 | 国产精品人妖ts系列视频| 亚洲高清免费一级二级三级| 国产一区二区久久| 91久久精品一区二区三| 精品久久久久99| 亚洲国产成人av| 99久久精品国产精品久久| 欧美va亚洲va| 一区二区三区精品在线观看| 国产精品亚洲午夜一区二区三区| 欧美日韩免费高清一区色橹橹| 国产精品美女久久久久久久 | 欧美一个色资源| 亚洲欧美色图小说| 国产一区二区免费在线| 欧美一区2区视频在线观看| 中文字幕一区二区视频| 国产精品一区专区| 精品国产一区a| 亚洲电影你懂得| 色欧美乱欧美15图片| 国产精品你懂的| 高清国产午夜精品久久久久久| 日韩亚洲欧美在线观看| 一区二区高清免费观看影视大全 | 精品国产乱码久久久久久1区2区| 亚洲欧美日韩在线不卡| 国产精品主播直播| 欧美一级艳片视频免费观看| 亚洲青青青在线视频| 99久久婷婷国产综合精品电影| 欧美大黄免费观看| 久久精品免费看| 亚洲精品一区二区三区福利| 激情综合网最新| 欧美精品第1页| 午夜不卡av在线| 777午夜精品视频在线播放| 亚洲v中文字幕| 欧美年轻男男videosbes| 一区二区三区日韩欧美精品| 91免费看片在线观看| 国产亚洲一区字幕| 成人精品视频一区二区三区| 国产精品每日更新在线播放网址| eeuss鲁片一区二区三区在线观看| 中文字幕欧美日韩一区| 99视频一区二区三区| 亚洲精选视频在线| 欧美日韩精品三区| 男男gaygay亚洲| 久久久久久夜精品精品免费| 国产精品一区免费视频| 精品久久久久久无| 99视频一区二区| 舔着乳尖日韩一区| 精品国精品国产| 不卡区在线中文字幕| 亚洲国产aⅴ天堂久久| 欧美电影免费观看高清完整版在线 | 国产欧美综合在线观看第十页| 国产91高潮流白浆在线麻豆| 亚洲欧洲日本在线| 欧美精品 国产精品| 狠狠色狠狠色综合| 国产肉丝袜一区二区| 99vv1com这只有精品| 日韩一区欧美二区| 亚洲国产精品成人综合色在线婷婷| 色综合中文字幕国产| 亚洲第一精品在线| 久久夜色精品一区| 欧美少妇一区二区| 国产综合色产在线精品| 亚洲精品国产第一综合99久久| 在线播放视频一区| 成人国产电影网| 美女www一区二区| 亚洲伦理在线精品| 久久无码av三级| 欧洲亚洲国产日韩| 国产做a爰片久久毛片 | 欧美在线观看禁18| 国产一区二区三区日韩| 一片黄亚洲嫩模| 国产亚洲欧美中文| 宅男在线国产精品| 色呦呦日韩精品| 国产一区二区成人久久免费影院| 亚洲一区在线电影| 中文字幕精品一区| xnxx国产精品| 日韩一级免费观看| 欧美日韩高清一区二区三区| 99久久久无码国产精品| 精品在线亚洲视频| 午夜av区久久| 亚洲综合999| **欧美大码日韩| 国产色产综合产在线视频| 91精品国产福利在线观看| 97久久超碰国产精品电影| 精品一区二区三区久久久| 亚洲高清免费一级二级三级| 亚洲美女在线国产| 亚洲欧美怡红院| 欧美激情在线看| 久久精品欧美日韩| 欧美系列亚洲系列| 国产自产视频一区二区三区| 日本少妇一区二区| 天天色 色综合| 婷婷六月综合亚洲| 亚欧色一区w666天堂| 亚洲国产精品久久久久婷婷884| 亚洲天堂中文字幕| 久久久久国产精品麻豆| 51久久夜色精品国产麻豆| 7777精品伊人久久久大香线蕉完整版 | 五月综合激情网| 亚洲不卡在线观看| 蜜臀av一区二区| 久久99久久99| 国产一区二区三区久久久| 免费成人在线网站| 久久国内精品自在自线400部| 日产欧产美韩系列久久99| 奇米影视一区二区三区| 老司机免费视频一区二区三区| 日产国产欧美视频一区精品| 日韩高清欧美激情| 美脚の诱脚舐め脚责91| 国产在线国偷精品产拍免费yy| 麻豆国产欧美一区二区三区| 激情综合色丁香一区二区| 国模大尺度一区二区三区| 成人a级免费电影| 色吧成人激情小说| 欧美日韩国产小视频| 日韩一级高清毛片| 亚洲国产高清aⅴ视频| 亚洲欧美日韩电影| 视频一区视频二区在线观看| 九色|91porny| 93久久精品日日躁夜夜躁欧美| 日本久久电影网| 91豆麻精品91久久久久久| 欧美日韩亚州综合| 久久久亚洲欧洲日产国码αv| 国产精品卡一卡二| 五月天激情综合| 国产伦精品一区二区三区免费| 99久久er热在这里只有精品15| 欧美日韩一级二级| 欧美激情综合五月色丁香小说| 亚洲最新视频在线观看| 秋霞国产午夜精品免费视频 | 中文字幕第一区二区| 国产精品久久久久久久久搜平片| 国产精品久久福利| 日本成人在线不卡视频| 成人在线一区二区三区| 欧美日韩一区二区三区视频| 久久天天做天天爱综合色| 亚洲同性gay激情无套| 久久精品国产精品亚洲红杏| 福利电影一区二区三区| 欧美日韩国产片| 国产精品伦理一区二区| 五月天久久比比资源色| 99久久国产免费看| 久久久美女毛片| 亚洲乱码国产乱码精品精98午夜| 天堂va蜜桃一区二区三区| 丁香啪啪综合成人亚洲小说| 欧美一a一片一级一片| 久久久高清一区二区三区| 天天影视网天天综合色在线播放| av成人免费在线观看| 精品国产乱码久久|