จะเปลี่ยนความเร็วในการเล่นวิดีโอใน HTML5 ได้อย่างไร?


124

จะเปลี่ยนความเร็วในการเล่นวิดีโอใน HTML5 ได้อย่างไร? ฉันได้ตรวจสอบคุณสมบัติของแท็กวิดีโอใน w3school แล้ว แต่ไม่สามารถเข้าใกล้ได้ขอความช่วยเหลือใด ๆ จะขอบคุณ!

คำตอบ:


201

ตามไซต์นี้สิ่งนี้ได้รับการสนับสนุนในแอตทริบิวต์playbackRateและdefaultPlaybackRateซึ่งเข้าถึงได้ผ่าน DOM ตัวอย่าง:

/* play video twice as fast */
document.querySelector('video').defaultPlaybackRate = 2.0;
document.querySelector('video').play();

/* now play three times as fast just for the heck of it */
document.querySelector('video').playbackRate = 3.0;

ข้างต้นใช้งานได้กับ Chrome 43+, Firefox 20+, IE 9+, Edge 12+


1
ขอบคุณสำหรับแหล่งข้อมูลที่เป็นประโยชน์แม้ว่า Firefox จะไม่รองรับแอตทริบิวต์ที่ฉันได้ทำการสาธิตใน Chrome ซึ่งใช้งานได้ดีฉันเดาว่าเจ้านายของฉันจะชอบสิ่งนั้นขอบคุณ!
Young

4
playbackRate ทำงานใน Firefox ตั้งแต่รุ่น 20 นอกจากนี้ยังทำงานใน Chrome
Janus Troelsen

2
ใช้งานได้เมื่อรันในตอนเริ่มต้น แต่จะไม่ทำงานในภายหลังในกระบวนการเช่น at: window.onload = function () {document.getElementById ("master_video") defaultPlaybackRate = 0.1; document.getElementById ("master_video") .play ();}
Fzs2

มันไม่ทำงานกับ Ionic android ... ฉันใช้โปรแกรมเล่นวิดีโอ HTML% ในเฟรมเวิร์คไอออนิกสำหรับ Android แต่ไม่รองรับอัตราการเล่น .........
Dinesh R Rajput

1
@Sushan .querySelectorส่งคืนการจับคู่แรก คุณสามารถใช้ได้.querySelectorAllแต่คุณต้องทำซ้ำผ่านรหัสเหล่านี้แทนที่จะใช้รหัสโดยตรงในคำตอบเหล่านี้
leewz

52

เพียงพิมพ์

document.querySelector('video').playbackRate = 1.25;

ในคอนโซล JS ของเบราว์เซอร์สมัยใหม่ของคุณ


คุณลักษณะบางอย่างขององค์ประกอบวิดีโอจะป้องกันไม่ให้คำสั่งนี้ทำงาน หากคำสั่งคอนโซลนี้ล้มเหลวให้ตรวจหาแอตทริบิวต์ขององค์ประกอบวิดีโอและองค์ประกอบหลักในตัวตรวจสอบและลบสิ่งที่บล็อกการโต้ตอบของผู้ใช้กับวิดีโอ ลองคำสั่งอีกครั้ง
Christopher Harwood

0

คุณสามารถใช้รหัสนี้:

var vid = document.getElementById("video1");

function slowPlaySpeed() { 
    vid.playbackRate = 0.5;
} 

function normalPlaySpeed() { 
    vid.playbackRate = 1;
} 

function fastPlaySpeed() { 
    vid.playbackRate = 2;
}

สวัสดี @Armel ฉันขอทราบได้ไหมว่าจะใส่รหัสนี้ได้ที่ไหนถ้าฉันใช้ Selenium กับ Python
balandongiv

สวัสดี @balandongiv ฉันขอโทษที่ฉันไม่รู้ :(
Armel

-1
javascript:document.getElementsByClassName("video-stream html5-main-video")[0].playbackRate = 0.1;

คุณสามารถใส่หมายเลขใดก็ได้ที่นี่เพียงแค่อย่าไปไกลเพื่อที่คุณจะได้ไม่ใช้คอมพิวเตอร์มากเกินไป

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.