最近項目中的是個視頻縮略圖好多都不能用了,鄙人調試了一天也沒發現什麼問題,然後就發現是谷歌瀏覽器升級的原因,77.0版本以前的只要加了跨域的代碼就可以支持導出,但是77.0就不可以,原來代碼如下
function getVideoFirstFrame(src, img, width, height) {
var video = document.createElement('video');
video.crossOrigin = "anonymous";
video.addEventListener('loadeddata', function () {
var canvas = document.createElement("canvas"); // 創建一個畫布
canvas.width = width;
canvas.height = height;
canvas.getContext('2d').drawImage(video, 0, 0, width, height); // getContext:設置畫布環境;drawImage:畫畫
img.src = canvas.toDataURL("image/png"); // 獲取圖片的url
});
video.src = src;
}
谷歌瀏覽器升級後canvas.toDataURL()方法返回值都是一樣的,後來偶然間發現升級後第一幀默認是空白的,只要加一個
video.currentTime=1;就可以