サポートに連絡する| システムステータス
ページコンテンツ

    Brightcove Playerサンプル:

    キャプションラベルに国旗を追加するこのトピックでは、国のキャプションラベルの前に国旗を追加する方法を学習します。

    プレーヤーの例

    ビデオの再生を開始したら、コントロールバーのクローズドキャプションアイコンをクリックすると、キャプションの国ラベルに関連付けられたフラグが表示されます。

    ペンを見るキャプションラベルに国旗を追加 Brightcove Learning Services( @ rcrooks1969) オンCodePen

    ソースコード

    GitHubで完全なソリューションを表示します

    CodePen を使用する

    上記のCodePenを効果的に使用するためのヒントは次のとおりです。

    • [ 結果]ボタンをクリックして、プレーヤーの実際の表示を切り替えます。
    • HTML/CSS/JSボタンをクリックして、いずれかのコードタイプを表示します。
    • このドキュメントの後半では、アプリケーションで使用されるロジック、フロー、およびスタイル設定については、 Player/HTML設定アプリケーションフロー、およびアプリケーションのスタイル設定で説明されます。セクション。これらのセクションの情報に沿って従う最も良い方法は、次のとおりです。
      1. CodePen の [ EDIT ON CODEPEN]ボタンをクリックし、1 つのブラウザ/ブラウザタブでコードを使用できるようにします。
      2. CodePen で、表示するコードを調整します。CodePen 内の異なるコードセクションの幅を変更できます。
      3. を見るプレーヤー/ HTML構成アプリケーションフローおよび/またはアプリケーションのスタイリング別のブラウザ/ブラウザタブのセクション。これで、コードの説明に従い、同時にコードを表示できるようになります。

    開発シーケンス

    推奨される開発順序は次のとおりです。

    1. インページ埋め込みプレーヤーの実装を使用して、プレーヤー、プラグイン、CSS の機能をテストします (CSS が必要な場合)
    2. ローカルテストのためにプラグインのJavaScriptとCSSを別々のファイルに置く
    3. エラーを解決したら、プラグインコードとCSSをサーバーにデプロイします
    4. Studio を使用してプラグインと CSS をプレイヤーに追加する
    5. iframe の実装が適切であると判断した場合は、インページ埋め込みプレーヤーの実装を置き換えます (次のセクションで詳しく説明します)。

    これらの手順の詳細については、「ステップバイステップ」を参照してください。プラグイン開発ガイド。

    iframe またはページ内埋め込み

    Brightcove Player の拡張機能を開発する際には、コードが iframe 実装またはページ内埋め込み実装に最も適しているかどうかを判断する必要があります。ベストプラクティスの推奨事項は、iframe 実装で使用するプラグインを構築することです。iframe プレーヤーを使用する利点は次のとおりです。

    • 既存のJavaScriptおよび/またはCSSとの衝突はありません
    • 自動応答性
    • iframe は、ソーシャルメディアアプリ(または動画が他のアプリに「移動」する必要があるとき)での使用を容易にします。

    インページ埋め込みプレーヤーの統合はより複雑になりますが、その実装に関するコードを計画する場合もあります。一般化するために、このアプローチは、包含ページがプレイヤーと通信する必要がある場合に最適です。具体的には、いくつかの例を挙げます。

    • 含まれているページのコードは、プレイヤーイベントをリッスンして行動する必要があります
    • プレーヤーは包含ページのスタイルを使用します
    • iframe は、含まれているページからのリダイレクトのように、アプリロジックが失敗します。

    最終実装で iframe コードを使用しない場合でも、JavaScript 用のプラグインと CSS 用の別のファイルを使用して、ページ内埋め込みコードを使用できます。これにより、ロジックがカプセル化され、複数のプレーヤーで簡単に使用できます。

    API/プラグインリソースを使用

    API メソッド API イベント
    オン () ロードされたメタデータ
    Player.controlbar.subscapsButton.menu.Children ()  

    プレーヤー/HTML構成

    このセクションでは、プレーヤーの作成時に必要な特別な設定について詳しく説明します。さらに、ページ内埋め込みプレーヤー実装コード以外に、ページに追加する必要があるその他の HTML 要素についても説明します。

    プレーヤーの設定

    このサンプル用に作成した Brightcove Player には、特別な設定は必要ありません。

    その他のHTML

    他の HTML 要素はページに追加されません。

    アプリケーションフロー

    このアプリケーションの背後にある基本的なロジックは次のとおりです。

    • キャプションメニューオプションを取得します。
    • 特定の言語コードを探して、オプションをループします。
    • 言語コードが見つかったら、ラベルの前にある対応する絵文字フラグを使用してメニューオプションを更新します。

    メニューオプションを取得する

    ラベルが付いたコードを見つけます。

    // ### Retrieve the menu options ###

    キャプションメニューに表示されるすべてのオプションを取得するには、myPlayer.controlBar.subsCapsButton.menu.children()メソッドを使用します。選択する言語を含むオプションの 1 つの例は、次のように表示されます。

    console menu option object

    オブジェクトには、国ラベルと国コードの両方が含まれていることに注意してください。JavaScriptでは、国のラベルがブラウザによって翻訳される可能性があるため、国コードが検索されます。一部のメニュー項目が自動的に作成され、テキストトラックである各キャプションファイルのメニュー項目が追加されます。

    各メニューオプションにフラグを追加

    ラベルが付いたコードを見つけます。

    // ### Add flag to each menu option ###

    最初のステップは、for-eachすべてのメニュー項目をステップオーバーするループを設定することです。適切なメニュー項目が見つかると、が変更されinnerHTML、対応するフラグが国ラベルに追加されています。この場合、国旗の絵文字が使用されます。これらの絵文字は、絵文字Terraを含む多くの場所で見つけることができます。提供されているコードで行われているように、実際の絵文字をコピーできます。たとえば、絵文字コードを使用したい場合は、🇩🇪ドイツの旗のために。

    アプリケーションのスタイリング

    このサンプルでは CSS は必要ありません。

    プラグインコード

    通常、JavaScript を Brightcove Player プラグインに変換する場合は、公称の変更が必要です。必要な変更の 1 つは、ready()メソッドの標準使用をプラグインを定義するコードに置き換えることです。

    ここでは、プレーヤーで動作するJavaScriptコードへの非常に一般的に使用されるスタートです:

    videojs.getPlayer('myPlayerID').ready(function() {
    var myPlayer = this;
    });

    最初の行を変更して、標準の構文を使用して Brightcove Player プラグインを起動します。

    videojs.registerPlugin('pluginName', function(options) {
    var myPlayer = this;
    ...
    });   

    前述のように、このドキュメントの対応する GitHub レポ: country-flag-caption-label.js には、プラグインの JavaScript コードが表示されます

    プレーヤーでプラグインを使用する

    プラグインの CSS ファイルと JavaScript ファイルをインターネットでアクセス可能な場所に保存したら、プレーヤーでプラグインを使用できます。Studio の PLAYERSモジュールでは、プレーヤーを選択し、[ プラグイン ] セクションで CSS ファイルと JavaScript ファイルに URL を追加し、名前を追加することもできます。オプションが必要な場合は、[Options] と [Options]


    ページの最終更新日30 Sep 2021