揭秘(愛奇藝、優酷、騰訊)在線視頻網站視頻2倍速、多倍速快速播放的前端實現方法


一、關於視頻倍速播放

B站,或者騰訊視頻等主流視頻網站視頻現在都支持倍速播放功能。

B站視頻播放速度調節

騰訊視頻倍速播放

這個功能對於當下快節奏的生活而言,是很有用的,說誇張點是延長了我們的生命,哈哈哈。

對於一個靠技術吃飯人,總免不了關注點在技術實現上,究竟是如何實現的呢?且看~

二、HTML5 video視頻倍速播放的實現

當當當當,實現其實很簡單,使用playbackRate屬性控制下就好了。

playbackRate屬性是個可讀寫的控制音視頻播放速率的屬性。

語法如下:

// 視頻獲取速率
var videoSpeed = video.playbackRate;
// 視頻設置播放速率,如正常速度播放
video.playbackRate = 1.0;
// 獲取音頻播放速率
var audioSpeed = audio.playbackRate;
// 音頻設置播放速率,如正常速度播放
audio.playbackRate = 1.0;

倍速播放控制簡易demo

您可以狠狠地點擊這里:HTML5 video視頻playbackRate倍速播放demo

例如,我們下拉選擇2.0倍速,然后點擊下面的播放按鈕:

倍速播demo操作示意

就可以看到土味視頻效果了。

2倍速土味視頻效果實現

相關代碼如下:

var select = document.querySelector('select');
var button = document.querySelector('button');
// 視頻元素
var video = document.querySelector('video');
// 改變播放速率
select.addEventListener('change', function () {
    video.playbackRate = this.value;
});
// 點擊播放按鈕
button.addEventListener('click', function () {
    video.play();
});

其實關鍵代碼就下面這一行:

video.playbackRate = this.value;

是不是簡單得有點超乎想象了呢?

三、結束語

倍速播放是HTML5 video視頻播放天然支持功能,因此,視頻網站通常倍速播放只在HTML5視頻播放器中支持,傳統的flash播放器沒有這個功能,例如愛奇藝視頻:

愛奇藝HTML5視頻倍速播放 愛奇藝flash視頻無倍速播放

 

疫情嚴重,大家注意安全,一個技術小tips,希望能夠讓你有所收獲。

感謝閱讀,歡迎交流!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM