Brightcove Playerサンプル:まだ見てる?
プレーヤーの例
このサンプルでは、一定時間が経過すると、オーバーレイメッセージが表示されます。このサンプルでは、オーバーレイが 6 秒後に表示されますが、時間は設定可能です。視聴者が指定した時間内にメッセージをクリックすると、再生が続行されます。そうでない場合、ビデオは一時停止されます。このテクニックは、長い形式のコンテンツがある場合に便利です。これにより、動画を再生し始めた視聴者の帯域幅を無駄にせず、それを止めることなく何か他のことをするようになります。
このサンプルでは、 https://github.com/TylerZubke/Videojs-AFK-Monitor にあるオープンソース Video.js プラグインを使用しています。このドキュメントのサンプルコードでは、このプラグインを使用します。
ペンを見ていますか? Brightcove ラーニングサービス ( @rcrooks1969 ) による CodePen で。
ソースコード
CodePen を使用する
上記のCodePenを効果的に使用するためのヒントは次のとおりです。
- [ 結果]ボタンをクリックして、プレーヤーの実際の表示を切り替えます。
- HTML/CSS/JSボタンをクリックして、いずれかのコードタイプを表示します。
- このドキュメントの後半では、アプリケーションで使用されるロジック、フロー、およびスタイル設定については、 Player/HTML設定、アプリケーションフロー、およびアプリケーションのスタイル設定で説明されます。セクション。これらのセクションの情報に沿って従う最も良い方法は、次のとおりです。
- CodePen の [ EDIT ON CODEPEN]ボタンをクリックし、1 つのブラウザ/ブラウザタブでコードを使用できるようにします。
- CodePen で、表示するコードを調整します。CodePen 内の異なるコードセクションの幅を変更できます。
- を見るプレーヤー/ HTML構成、アプリケーションフローおよび/またはアプリケーションのスタイリング別のブラウザ/ブラウザタブのセクション。これで、コードの説明に従い、同時にコードを表示できるようになります。
開発シーケンス
推奨される開発順序は次のとおりです。
- インページ埋め込みプレーヤーの実装を使用して、プレーヤー、プラグイン、CSS の機能をテストします (CSS が必要な場合)
- ローカルテストのためにプラグインのJavaScriptとCSSを別々のファイルに置く
- エラーを解決したら、プラグインコードとCSSをサーバーにデプロイします
- Studio を使用してプラグインと CSS をプレイヤーに追加する
- iframe の実装が適切であると判断した場合は、インページ埋め込みプレーヤーの実装を置き換えます (次のセクションで詳しく説明します)。
これらの手順の詳細については、「ステップバイステップ」を参照してください。プラグイン開発ガイド。
iframe またはページ内埋め込み
Brightcove Player の拡張機能を開発する際には、コードが iframe 実装またはページ内埋め込み実装に最も適しているかどうかを判断する必要があります。ベストプラクティスの推奨事項は、iframe 実装で使用するプラグインを構築することです。iframe プレーヤーを使用する利点は次のとおりです。
- 既存のJavaScriptおよび/またはCSSとの衝突はありません
- 自動応答性
- iframe は、ソーシャルメディアアプリ(または動画が他のアプリに「移動」する必要があるとき)での使用を容易にします。
インページ埋め込みプレーヤーの統合はより複雑になりますが、その実装に関するコードを計画する場合もあります。一般化するために、このアプローチは、包含ページがプレイヤーと通信する必要がある場合に最適です。具体的には、いくつかの例を挙げます。
- 含まれているページのコードは、プレイヤーイベントをリッスンして行動する必要があります
- プレーヤーは包含ページのスタイルを使用します
- iframe は、含まれているページからのリダイレクトのように、アプリロジックが失敗します。
最終実装で iframe コードを使用しない場合でも、JavaScript 用のプラグインと CSS 用の別のファイルを使用して、ページ内埋め込みコードを使用できます。これにより、ロジックがカプセル化され、複数のプレーヤーで簡単に使用できます。
API/プラグインリソースを使用
API メソッド | API イベント | Brightcove Playerプラグイン |
---|---|---|
addClass () | ユーザーアクティブ | オーバーレイプラグイン |
removeClass () | ユーザー非アクティブ | |
一時停止 () | ||
CurrentTime () | ||
つ () | ||
オン () | ||
setTimeout () | ||
hasClass () | ||
デュレーション () | ||
一時停止 () | ||
cleartimeOut () | ||
hasスタート () | ||
エル () |
プレーヤー/HTML構成
このセクションでは、プレーヤーの作成時に必要な特別な設定について詳しく説明します。さらに、ページ内埋め込みプレーヤー実装コード以外に、ページに追加する必要があるその他の HTML 要素についても説明します。
プレーヤーの設定
このサンプル用に作成した Brightcove Player には、特別な設定は必要ありません。
その他のHTML
サードパーティプラグインの CSS ファイルと JavaScript ファイルが含まれています。
アプリケーションフロー
このアプリケーションの背後にある基本的なロジックは次のとおりです。
useractive
userinactive
イベントとイベントは、時間を追跡するために監視されます。- オーバーレイは、指定された時間後に表示され、お客様がビデオをまだ視聴しているかどうかを確認します。
- 指定した時間だけオーバーレイが表示され、テキストがクリックされていない場合は、ビデオを一時停止します。
- ボタンがクリックされたとき、または視聴者が一時停止後にビデオを開始すると、値を再初期化し、時間追跡を再開します。
このサンプルでは、プラグイン
ここに示すように、プラグインはベストプラクティスを使用して呼び出されます
<script>
videojs.getPlayer('myPlayerID').ready(function() {
var myPlayer = this;
var options = {'showMessageAfter': 1000, 'pausePlayerAfter': 1000};
myPlayer.AFKMonitor(options);
});
</script>
プラグインの設定
プラグインをカスタマイズするには、多くのオプションを使用できます。いくつかの詳細は次のとおりです。
- 設定オプションの完全なリストは、プラグインの readme ファイルにあります。
- ボタンが表示されるまでの時間は
showMessageAfter
(ミリ秒単位)によって決まります。 pausePlayerAfter
( ミリ秒単位) オプションも便利です。プレイヤーを一時停止する前に、ユーザーがボタンをクリックできるようにする時間です。これにより、ユーザーはビデオの再生を中断することなくボタンをクリックする機会が与えられます。
アプリケーションのスタイリング
CSS はサードパーティプラグインの一部です。
プラグインコード
レポをクローンしてコードにアクセスし、インターネットでアクセス可能な場所に置いて使用することができます。
前述のように、このドキュメントの対応するGitHubリポジトリにプラグインのJavaScriptコードを見ることができます: videojs.afk-monitor.js .
プレーヤーでプラグインを使用する
プラグインの CSS ファイルと JavaScript ファイルをインターネットでアクセス可能な場所に保存したら、プレーヤーでプラグインを使用できます。Studio の PLAYERSモジュールでは、プレーヤーを選択し、[ プラグイン ] セクションで CSS ファイルと JavaScript ファイルに URL を追加し、名前を追加することもできます。オプションが必要な場合は、[Options] と [Options]