プレーヤーの例
ビデオの再生を開始し、コントロールバーの音量ボタンの上にマウスを移動します。デフォルトの水平スライダの代わりに、垂直方向のボリュームスライダーが表示されるはずです。
ペンを見る垂直ボリューム Brightcove Learning Services( @ bcls1969) オン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 メソッド |
---|
bc () メソッド |
プレーヤー/HTML構成
このセクションでは、プレーヤーの作成時に必要な特別な設定について詳しく説明します。さらに、ページ内埋め込みプレーヤー実装コード以外に、ページに追加する必要があるその他の HTML 要素についても説明します。
プレーヤーの設定
プレーヤーが作成される前にコントロールバーを変更するため、<video>
タグから属性をいくつか削除して Brightcove Player のインスタンス化を遅らせます。詳細については、Player のインスタンス化の遅延に関するドキュメントを参照してください。
プレイヤーの埋め込みコードを次のように変更します。
id
video
プレーヤーの埋め込みコードのタグに属性を追加するvideo
次の属性をタグから削除します。data-account
data-player
data-video-id
プレーヤーの埋め込みコードは次のようになります。
<video-js id="myPlayerID"
data-embed="default"
data-application-id
class="video-js"
width="640" height="360"
controls></video-js>
<script src="https://players.brightcove.net/1752604059001/default_default/index.min.js"></script>
アプリケーションフロー
このアプリケーションの背後にある基本的なロジックは次のとおりです。
- プレーヤーのオプションを定義する
- プレーヤーの属性を追加する
- プレーヤーを作成する
プレーヤーのオプションを定義する
ラベルが付いたコードを見つけます。
// +++ Define the player options +++
垂直で、volumePanel
コントロールバーとインラインにならないようにを定義します。
プレーヤーの属性を追加する
ラベルが付いたコードを見つけます。
// +++ Add the player attributes +++
<video>
タグに、次のプレイヤー属性と値を追加します。
data-account
data-player
data-video-id
プレーヤーを作成する
ラベルが付いたコードを見つけます。
// +++ Create the player +++
アプリケーションのスタイリング
このサンプルには追加のスタイルはありません。
複数のプレーヤーを更新する
HTML ページ上のすべてのプレイヤーを更新するには、videojs.hook()
関数を使用できます。
フック関数
フックを使用すると、特定の Video.js ライフサイクルの瞬間に機能を追加したり、プレーヤーの外観を変更することができます。フック関数を使用すると、HTML ページ上のすべてのプレーヤーは、videojs.hook()
関数にプレーヤーオプションを渡すことによって更新されます。
詳細については、 Video.js フックのドキュメントを参照してください。
プレーヤーの例
このサンプルでは、ボリュームコントロールボタンを変更して、ページ上のすべてのプレーヤーの垂直ボリュームスライダーを表示します。
ビデオの再生を開始し、コントロールバーの音量ボタンの上にマウスを移動します。両方のプレーヤーには、既定の水平スライダの代わりに、垂直方向のボリュームスライダーが表示されます。
ペンを見るフックを使用した垂直ボリューム Brightcove Learning Services( @ bcls1969) オンCodePen。
プレーヤーの設定
この文書の最初の例で行ったように、HTML ページでのプレーヤーの作成を遅らせます。
アプリケーションフロー
このアプリケーションの背後にある基本的なロジックは次のとおりです。
- プレーヤーオプションでフック関数を定義する
- プレーヤーの属性を追加する
- フック関数を実行する
- プレイヤーを作成する
プレーヤーオプションでフック関数を定義する
ラベルが付いたコードを見つけます。
// +++ Define the hook function with player options +++
beforeSetup
プレイヤーオプションを含むライフサイクルモーメントのフック関数を定義します。プレーヤーオプションの場合、volumePanel
を垂直に表示し、コントロールバーにはインライン表示しないように設定します。
プレーヤーの属性を追加する
ラベルが付いたコードを見つけます。
// +++ Add the player attributes +++
<video>
各プレイヤーのタグに、次のプレイヤー属性を自分の値とともに追加します。
data-account
data-player
data-video-id
フック関数を実行する
ラベルが付いたコードを見つけます。
// +++ Execute the hook function +++
を使用して、プレーヤーに渡されるオプションを変更しますbeforeSetup
とのライフサイクルの瞬間Video.jsフック関数。
プレイヤーを作成する
ラベルが付いたコードを見つけます。
// +++ Create the players +++