web-dev-qa-db-ja.com

HTML5は、URLからYouTubeの速度を2倍にしますか?

ユーザーが(ビデオの)HTML5をクリックせずに、URLを変更することで、YouTubeビデオを2倍高速化する方法を知りたいのですが。

たとえば、URLにパラメータ&t=1m1s(1分1秒)を追加することで、特定の時間からビデオを見る方法を知っています。 ビデオを2倍高速化するために同様の方法を使用することは可能ですか?

倍速でビデオを視聴するには、どのパラメーターをURLに追加する必要がありますか(html5を使用しています)?

28
tonni

URL引数によって再生速度を変更する方法はありません。

とにかく、HTMLを使用している場合は、YouTube Player 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();
}

もちろん、6秒後に動画の再生が停止するため、ドキュメントのステップ5に進むことができます。

設定に問題がある場合は、後でJSFiddleを編集します(Flashプラグインが起動しないため、職場では編集できません)。

更新:

このコードで正確に動作するJSFiddleは次のとおりです。 http://jsfiddle.net/jpreynat/e11oy0eu/

36
jpreynat

私は今週初めにまったく同じことをしようとしていました。

純粋に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
Alicia

URLまたはより簡単なjavascriptを介して入力されたユーザーからシフト>または<を挿入できますか?たぶん、ユーザー側からホットキーを押すのを強制する方が簡単です。