30

私が構築している Web サイトには、vimeo ビデオが埋め込まれています。クライアントは、vimeo で見つけた人のために、ビデオの音声を維持する必要があります。しかし、彼女のウェブサイトの場合、音は単純にうっとうしいものです。そのため、埋め込み用のコード内でオーディオをミュートする方法を見つける必要があります。私はそれをグーグルで検索しましたが、判読できるものを見つけることができないようです。以下のコードからわかるように、リンク内で自動再生コマンドを使用しました。同様のことを行ってサウンドをミュートできることを望んでいました。

    <iframe src="http://player.vimeo.com/video/4415083?  title=0&amp;byline=0&amp;portrait=0&amp;color=d01e2f&amp;autoplay=1" width="500" height="281"  frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>

ありがとう

4

12 に答える 12

13

答えの例を試してみましたが、うまくいきませんでした。ドキュメントを調べたところ、パラメーターが欠落していることに気付きました&player_id=IFRAME_ID。Vimeo API で何かが変更された可能性がありますが、次の例は私にとってはうまくいきます。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="https://f.vimeocdn.com/js/froogaloop2.min.js"></script>
<iframe id="vimeo_player" src="//player.vimeo.com/video/4415083?api=1&player_id=vimeo_player&autoplay=1&loop=1&color=ffffff" width="1920" height="1080" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

<script>
$(function() {
    var vimeo_iframe = $('#vimeo_player')[0];
    var player = $f(vimeo_iframe);

    player.addEvent('ready', function() {
        player.api('setVolume', 0);
    });
});
</script>

于 2015-10-23T07:52:00.007 に答える
2

@Gadssの回答はうまく機能しますが、iframe srcを更新してVimeo APIのアクティベーションを含める必要があることがわかりました。vimeo ID の後に api=1 を含めるだけです。

また、これが何らかの理由で Safari で機能しない場合があることもわかりました。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    <script src="//f.vimeocdn.com/js/froogaloop2.min.js"></script>
    <iframe id="vimeo_player" src="http://player.vimeo.com/video/4415083?api=1&title=0&amp;byline=0&amp;portrait=0&amp;color=d01e2f&amp;autoplay=1" width="500" height="281"  frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
    <script>
    var iframe = $('#vimeo_player')[0],
        player = $f(iframe),
        status = $('.status');

        player.addEvent('ready', function() {
            player.api('setVolume', 0);
        });
    </script>
于 2015-09-23T18:07:36.230 に答える
2

**これが私の解決策です: http://jsfiddle.net/jakeoblivion/phytdt9L/5/

(独自の再生/一時停止ミュート/ミュート解除アイコンが必要になります)

  //load video muted
  var video = $("#myvideo");
  video.vimeo("play");
  video.vimeo("setVolume", 0);

    //toggle play/pause
  $('#play-pause').click(function() {
    $(this).toggleClass('play');
    if ($(this).hasClass('play')) {
      //pause video
      video.vimeo("pause");
      $(this).css('background', 'pink');
    } else {
      //unpause video
      video.vimeo("play");
      $(this).css('background', 'blue');
    }
  });

  //toggle mute/unmute
  $('#mute-unmute').click(function() {
    $(this).toggleClass('mute');
    if ($(this).hasClass('mute')) {
      //unmute video
  video.vimeo("setVolume", 1);
      $(this).css('background', 'green');

    } else {
      //mute video
  video.vimeo("setVolume", 0);
      $(this).css('background', 'red');
    }
  });

何年もかけて試してみましたが、何もうまくいかないようでした。

デフォルトのものではなく、単純な再生/一時停止のミュート/ミュート解除コントロールを使用して、Vimeo の自動再生をミュート (ボリューム 0) にしたかっただけです。(私が入れた一時的な色の代わりにアイコンを自由に使用してください)。

(デフォルトのコントロールを追加してミュートしたままにする場合は、「?background=1」を削除します。デフォルトでは、background=1 は video.vimeo("setVolume", 0) を設定し、コントロールを非表示にするため、ミュート on も追加しましたbackground=1 を設定せずにロードします)。

また、「ブラウザでファイルを直接開くのではなく、Web サーバーで実行する必要があります。JS のセキュリティ制限により、ローカルで実行すると API が機能しなくなります。」

于 2016-02-28T11:20:14.430 に答える
2

?muted=1リンクの後に挿入してみてくださいattribute src

例えば

<iframe id="vimeo_player" src="https://player.vimeo.com/video/257992348?muted=1">
于 2019-08-16T08:48:34.570 に答える