我想知道如何在没有用户点击HTML5(视频)的情况下加速YouTube视频2倍,而是修改网址。
例如,我知道如何通过在参数&t=1m1s
附加到URL(1分钟和1秒)来在特定时间开始观看视频。 是否可以使用类似的方法来加速视频2x?
我应该在URL中添加哪些参数以双倍速度观看视频(我使用的是html5)?
答案 0 :(得分:34)
无法通过网址参数更改播放速度。
无论如何,如果您正在使用HTML,则可以使用YouTube播放器iFrame API。
以下是如何使用所有JavaScript配置播放器的方法: https://developers.google.com/youtube/iframe_api_reference#Getting_Started
以下是您正在寻找的设置播放速度的功能: https://developers.google.com/youtube/iframe_api_reference#Playback_rate
所以你可以像这样编辑你的onPlayerReady函数:
function onPlayerReady(event) {
player.setPlaybackRate(2); // This is what you're looking for
event.target.playVideo();
}
您当然可以通过文档的第5步,因为这会在6秒后停止播放您的视频。
如果您在设置时遇到问题,我稍后会编辑JSFiddle(由于我的Flash插件无法启动,因此无法正常工作)。
这里的JSFiddle正好与这段代码完美配合: http://jsfiddle.net/jpreynat/e11oy0eu/
答案 1 :(得分:2)
本周早些时候我试图做同样的事情。
纯粹来自URL参数的解决方案是不可能的。 (如果是, 这不是文档: https://developers.google.com/youtube/player_parameters)
我是来自Johan Preynat的这个JSFiddle:http://jsfiddle.net/jpreynat/e11oy0eu/
为我工作,所以希望它对你也有用
<强> HTML 强>
<!-- 1. The <iframe> (and video player) will replace this <div> tag. -->
<div id="player"></div>
<强>的JavaScript 强>
// 2. This code loads the IFrame Player API code asynchronously.
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
// 3. This function creates an <iframe> (and YouTube player)
// after the API code downloads.
var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player('player', {
height: '390',
width: '640',
videoId: 'M7lc1UVf-VE',
events: {
'onReady': onPlayerReady
}
});
}
// 4. The API will call this function when the video player is ready.
function onPlayerReady(event) {
player.setPlaybackRate(2);
event.target.playVideo();
}
另请参阅YouTube文档: https://developers.google.com/youtube/iframe_api_reference
答案 2 :(得分:1)
您可以从通过url或更简单的javascript输入的用户名中注入shift或<吗?也许更容易从用户端强制按下热键。