自動再生に関する考慮事項
概要
使い方 Brightcove Player ページが読み込まれたときにビデオを自動再生することは簡単な問題ではありません。 これは、動画を自動再生させたくないというユーザーの要望に応えるブラウザベンダーが原因です。 このドキュメントでは、さまざまなブラウザでの自動再生動画の現在の状態と、 Brightcove Player 自動再生に影響する構成。
のセットがあります 利用可能なテストケース.
ボトムライン
詳細なしで最高のアドバイスが必要な場合:
-
クライアント側の広告なしの自動再生
-
これらの手順により、自動再生が成功する可能性が最も高くなります。 playersクライアント側広告なし、またはSSAIあり:
- 作成セッションプロセスで
autoplay
〜へ"any"
- 作成セッションプロセスで
playsinline
〜へtrue
(iPhone用)
- 作成セッションプロセスで
-
クライアント側広告での自動再生
-
これらの手順により、自動再生が成功する可能性が最も高くなります。 player■クライアント側の広告(IMA3またはFreeWheel)を使用する場合:
- 作成セッションプロセスで
autoplay
〜へtrue
- 作成セッションプロセスで
playsinline
〜へtrue
(iPhone用) - を介して広告プラグインを設定します playerのJSON設定、 Studio上ではサポートされていません。 サイドローディングまたはカスタムバンドルを介して
- 作成セッションプロセスで
自動再生の構成
Brightcove Player 自動再生の5つの可能な値をサポートしています。 HTMLXNUMX仕様では、自動再生はブール属性です。true
)またはオフ(false
)。 の中に Brightcove Player、XNUMXつの特別な値を使用できます。
play
:これにより Brightcove Player 電話するplay()
ソースが設定されたとき。muted
:これにより Brightcove Player ミュートする player 呼び出しplay()
.any
:これにより Brightcove Player 電話するplay()
。 それが失敗した場合、それはミュートします player 呼び出しplay()
再び。
これらのXNUMXつの値はタグ属性ではサポートされていません!
優先
次のリストでは、自動再生を構成するすべての方法と、それらがどのように優先順位付けされるかについて説明します Brightcove Playerの初期化プロセス。
-
ビデオ要素属性
HTML5標準に従って、これは
true
(属性が存在する)またはfalse
(属性は存在しません)。クエリパラメータ値(他の場合にのみiframe)が勝つ他のプロパティとは異なり、Video.jsで勝つため、ここで属性が勝ちます。
<video-js autoplay controls></video-js>
-
URLハッシュまたはクエリ文字列
ほとんどの場合とは異なり、自動再生クエリ文字列パラメーターまたはURLハッシュパラメーターは、下位互換性の理由から、すべての種類の埋め込みで尊重されます。
これは、今後のメジャーリリースでページはめ込み埋め込み用に削除する必要があります。
パラメータの存在は次と同等です
true
すなわち、?autoplay&foo=bar
、ただし文字列値はサポートされています。例:?autoplay=muted&foo=bar
自動再生を設定できません
false
クエリ/ハッシュパラメータ経由! -
videojs()
/bc()
オプション自動再生オプションは、
bc()
機能。 -
JSON設定
オプションで自動再生が利用できない場合は、 playerのJSON設定。
-
デフォルト
最後に、上記のいずれにも当てはまらない場合は、デフォルトで
false
.
ブラウザの設定とポリシー
ブラウザーは近年一貫性が高まっていますが、以下のセクションでは、主要なブラウザーで利用可能な設定やポリシーをまとめています。
サファリ(macOS)
macOSのSafariには次の設定があります。
- すべての自動再生を許可
- 音声でメディアを停止 (デフォルト)
- 自動再生しない
さらに、これらの設定はサイトごとに変更できます。
Safari(iOSおよびiPadOS)
iOSおよびiPadOSのSafariには、ユーザー向けの自動再生設定はありませんが、次のポリシーを実装しています。
- ミュートされた自動再生は常に機能します
- 音声付きの自動再生にはユーザーのジェスチャーが必要
- iPhoneでは、
playsinline
すべての場合に属性が必要です。
読む このWebKitブログ投稿 詳細については。
クロム
Chromeにはユーザー向けの自動再生設定はありませんが、次のポリシーを実装しています。
- ミュートされた自動再生は常に機能します
- 音声付きの自動再生には、ユーザーのジェスチャーまたは十分な高さのMEI(デスクトップ上)が必要です
読む このChromeブログの投稿 詳細については。
Firefoxの
Firefoxには、グローバルおよびWebサイトごとに次の設定があります。
- オーディオとビデオを許可する
- オーディオをブロック (デフォルト)
- オーディオとビデオをブロックする
エッジ
Edgeにはデフォルトで次の設定があります。
- 許可する (デフォルト)
- リミット
ただし、 edge://flags/#edge-autoplay-user-setting-block-option
、エッジ(レガシー)で利用可能だった自動再生をブロックするオプションを復元できます。
エッジ(レガシー)
Edge(レガシー)には次の設定がありました:
- 許可する
- リミット
- ブロック
[制限]オプションは、自動再生またはユーザージェスチャーをミュートにする必要があるという点で他のブラウザーと同様です。
IE11
IE11には自動再生の設定やポリシーはありません。 自動再生はすべてのケースで機能するはずです。
既知の問題点
ページはめ込みソースとプログラムによる自動再生
ページはめ込みソース(例: <source>
要素)と呼び出し play()
または文字列ベースの自動再生値を使用- "play"
, "muted"
および "any"
.
これはFirefoxで確認されていますが、他のブラウザにも存在する可能性があります。
これは一般的なユースケースではありません Brightcove 顧客。 なぜなら Video Cloud ソースは後に読み込まれます player 作成、この問題は発生しません。
代わりに、あなたは待つ必要があります canplay
呼び出す前に発生するイベント play()
。 または、構成 autoplay: true
ユーザー設定/設定に応じて、期待どおりに動作します。
IMA3 / FreeWheel
自動再生文字列値
特別な文字列ベースの自動再生値- "play"
, "muted"
および "any"
- あります 現在サポートされていません IMA3およびFreeWheelプラグインと組み合わせて。
ただし、これらのプラグインには独自の自動再生処理があり、 autoplay: true
構成されている場合は、次のように動作します autoplay: "any"
構成されました。
プレロールの欠落または欠陥
電話しようとした場合 play()
これらのプラグインを使用すると、自動再生が失敗し、再生ボタンをクリックしたときにプリロールが再生されない場合があります。
FreeWheelを使用すると、プレロールが再生されるという報告もあります。 背後に 大きな再生ボタン。
おすすめ
これらのプラグインを使用する場合、自動再生を有効にする推奨方法は次のとおりです。
- プラグインを player (例えば Studio). サイドローディング(ページはめ込み)は推奨されません.
- 特殊な自動再生値を使用しないでください。 自動再生を
true
そして、広告プラグインが可能な限り再生を試みることを許可します。