Flash-only Player API

ここでは、ユーザーに対して表示される動画中心の UI を Web サイトでパワフルに構築するBrightcove プレーヤ フレームワークについて説明します。このフレームワークは、高速パフォーマンス、セキュアな通信、そしてフルスクリーン動画再生を実現するために、Flash Player 9 技術を全面的に使用して構築されています。

アーキテクチャ

このフレームワークは、プレーヤ、コンポーネント、およびウィジェットで構成されており、それぞれに、特定の機能を使用できる API が用意されています。プレーヤ コンポーネントには、広告、動画再生、API インタ-フェイスといった高レベル機能に加え、VideoPlayer、TabBar、Image オブジェクトなどの UI ベースの機能も含まれます。どちらのタイプの要素も機能を実現するために必要ですが、このフレームワークの目的は、これらの要素をさまざまに組み合わせ、ルックアンドフィールのカスタマイズを可能にすることです。

Brightcove プレーヤには、コンポーネントを配置できます。Brightcove Studio Publishing モジュールでは、定義済みのプレーヤ テンプレートに基づき、プレーヤのインスタンスを作成することができます。

この記事では、Video Cloud プレーヤの Flash バージョンのためのソリューションについて説明します。Video Cloud は、プレーヤのカスタマイズおよび動的ソリューションの開発用に 2 つの API をサポートしています。その 1 つが、Video Cloud Flash Player 用ソリューションのための Flash 専用プレーヤ API であり、もう 1 つがスマート プレーヤ用ソリューションのためのスマート プレーヤ API です。スマート プレーヤは、Flash がサポートされている場合には Video Cloud プレーヤの Flash バージョンとして機能し、サポートされていない場合には HTML バージョンとして機能します。Flash Player のみをコーディングするためのメソッドおよびイベントのリファレンスについては、Flash 専用プレーヤ API リファレンスをご覧くだくさい。スマート プレーヤ用の動的ソリューション作成の詳細については、「スマート プレーヤ API を使用する」を参照してください。

ここでは、HTML ページで Video Cloud プレーヤを公開し、Flash 専用プレーヤ API を使用してインタラクションを開始するための手順を説明します。Video Cloud では Flash Player の JavaScript 内で API を使用できるので、必要なのはテキスト エディタと Web ブラウザのみです。

Common questions about the Video Cloud Flash-only Player API.

ここでは、Flash でプレーヤを公開し、Video Cloud Flash 専用プレーヤ API を使用してインタラクションを行うための手順を説明します。

ActionScript 3 の経験がある方が、Flash をプレーヤと統合する場合には、Video Cloud Flash 専用プレーヤ API を使用して行うことができます。

SWFLoader コンポーネントでは、カスタム開発した SWF をプレーヤにロードし、配置とサイズを指定できます。ActionScript 3 および Video Cloud Flash 専用プレーヤ API を使用して、カスタム コンポーネントを開発でき、また、BEML を使用して、カスタム プレーヤ テンプレートにそれを追加できます。ActionScript 2 SWF は、プレーヤと連動できないので注意してください。ロードされた SWF にランタイム API へのハンドルを渡し、イベントを待機したり他のプレーヤと連動したりできるようにするには、SWF が、次のメソッド シグネチャで定義されたインターフェースを実装する必要があります。

function setInterface(obj:Object):void;

例:

このトピックでは、VideoPlayer および VideoDisplay コンポーネントによってディスパッチされるイベントのモデルについて説明します。従来のバージョンで、VideoPlayer および VideoDisplay コンポーネントによってディスパッチされていたイベントは、Video Cloud 3.2 リリースで非推奨になりました(ただし、非推奨となったこれらのイベントは、下位互換性を確保するために使用することはできます)。代わりに、Video Cloud では新しい MediaEvent を提供します。MediaEvent は、プログレッシブ ダウンロードおよびストリーミング コンテンツのイベント動作に一貫性を持たせるために使用されます。非推奨になった VideoEvent と同様、MediaEvent にも、位置および長さのプロパティに加え、イベントがディスパッチされた MediaDTO への参照を保持するメディア プロパティが含まれています。古い VideoEvent を継続して使用せずに、これらの新しいイベントを使用することをお勧めします。

Brightcove では、プラットフォームを拡張するために大規模な投資を行っています。その一環として、Brightcove 3.2 ではPlayer API に大幅な変更を行いました。変更の主な目的は次のとおりです。

  • Player API の汎用性を高め、新しい種類のプレーヤを作成しやすくする。
  • より一貫性を持ち包括的なイベント モデルを作成する。

Player API の変更により、Player API のいくつかのオブジェクトメソッド、およびイベントは非推奨化されました。しかし、慌てないでください。Brightcove は、既存のプレーヤを長期にわたって利用可能な状態にしておきます。ActionScript 3 プレーヤが現在動作しているのであれば、これらの API の変更後も動作を続けます。ただし、Player API SWC には非推奨化されたメソッドは含まれません。将来の開発には非推奨のオブジェクト、メソッド、およびイベントを使用しないよう強く推奨します。

Flash 専用プレーヤ API 用 ActionScript リファレンス ドキュメントの提供に加えて、Player API の関連部分をすべて ActionScript SWC ライブラリにまとめました。この SWC は、より正式な Flash 専用プレーヤ SDK を明示的に提供するものであり、Flash IDE に統合することができます。Flash IDE(Adobe Flash CS5 や Flex Builder など)にこの SWC をインポートすると、Flash および Flex 開発者は Video Cloud Flash 専用プレーヤ API ライブラリを簡単に統合することができ、カスタム プレーヤ開発がさらに容易になります。プレーヤ API SWC を含む zip ファイルをダウンロードできます(コード ヒンティングは Flex Builder および Flash CS5 IDE では使用できますが、Flash の以前のバージョンでは使用できません。

このトピックでは、適切なストロング タイピングおよびコード ヒントを得るため、さまざまな開発シナリオで Brightcove プレーヤをラッピングするために使用される ActionScript クラスについて説明します。現在、ActionScript API を使用し、Brightcove プレーヤと連動するよう ActionScript でコードを記述するには 4 つの方法があります。

Video Cloud Flash 専用プレーヤ API には、[Video Cloud] メニューの [Info] 画面内に表示するメディアをカスタマイズできるメソッドがいくつかあります。このトピックでは、その機能を活用する方法について説明します。

標準的な Video Cloud プレーヤには、メニュー ボタンで開くことができる [Info] 画面があります。デフォルトでは、[Video Cloud] メニューの [Info] 画面は 3 グループの動画を追加で表示します。これらの動画は、Flash 専用プレーヤ API と同じ検索メソッドを使用し、パブリッシャのアカウントに対して自動的に取得されます。これらは、[Related Videos]、[Most Viewed]、および [Newest] とラベルが付けられたメニュー画面のタブからアクセスできます。

カムタム プレーヤ テンプレートは、Video Cloud Pro 版および Enterprise 版をご購入の方のみがご利用いただけます。Video Cloud アカウントのアップグレードについては、ブライトコーブにお問い合わせください。

このトピックでは、Video Cloud 動画にクローズド キャプションを含めるために使用する、キャプション モジュール API を紹介します。この API は、Video Cloud の Flash 専用プレーヤ API の一部です。

ほとんどの場合、ブライトコーブでは、Flash 専用プレーヤ API ではなく、スマート プレーヤ API の使用を推奨します。スマート プレーヤ API でキャプション モジュールを使用する方法について参照してください。

Brightcove Player API に関するリファレンス ドキュメントについては、ここをクリックしてください。Player API リファレンスでは、Player API のすべてのパッケージ、クラス、メソッド、オブジェクト、およびイベントに関する情報を提供します。生成済みの ASdoc リファレンスなので、Player API の最新の(更新済みの)情報が提供されます。非推奨のメソッドに関する情報は含まれません。

Video Cloud Flash 専用プレーヤ API に関するリファレンス ドキュメントについては、ここをクリックしてください。Video Cloud Flash 専用プレーヤ API リファレンスでは、プレーヤ API のすべてのパッケージ、クラス、メソッド、オブジェクト、およびイベントに関する情報を提供します。生成済みの ASdoc リファレンスなので、プレーヤ API の最新の(更新済みの)情報が提供されます。非推奨のメソッドに関する情報は含まれません。

ここでは、イベント ログ関数の設定に必要な手順について紹介しています。イベント ログ作成は、Player API スクリプトをデバッグする際に非常に役立ちます。ここでは、ログ関数の JavaScript 版を説明しますが、ActionScript の場合でも簡単に応用することができます。

This topic explains how to get real-time video quality information using the Flash-only Player API. API methods for the Video Player module allow you to get the current values of the:

  1. frame rate
  2. bandwidth

プレーヤ API を使用して動画プレーヤのサイズを変更できます。プレーヤ API ではサイズ設定を動的に制御できます。パブリッシング コードや BEML ではできません。

プレーヤ API に慣れていない場合は、先へ進む前に「プレーヤ API の概要」をご覧ください。

プレーヤの各コンポーネントおよびレイアウト コンテナには setSize(width,height) メソッドがあります。ある要素のサイズを変更すると、新しい配置に適合するように、周囲の他の要素のサイズも自動的に変更されます。ただし、そのテンプレートの BEML コードで要素の幅や高さが明示的に設定されている場合を除きます。他の要素は、サイズが BEML コードで明示的に指定されている場合、サイズの変更された要素が収まるように、横または縦に移動します。また、一部またはすべてが隠れてしまう場合もあります。

このトピックでは、プレーヤ公開コードで有効なプレーヤ エラー処理について説明しています。コンテンツがプレーヤで利用できない場合、またはプレーヤ自体がロードできない場合に、このエラー処理によって、追跡およびその対応を行うことができます。また、このことにより、お客様のレポート システムまたは警告システムに通知が送信され、場合によってプレーヤに提示されるはずの内容を他の HTML に置き換えることがあります。

プレーヤ公開コードでのイベント ハンドラを指定する

templateLoadtemplateReady および templateError イベントのプレーヤ公開コードでハンドラ名を指定することができます。JavaScript プレーヤ公開コード等の設定パラメータを使用して、これらのハンドラ名を指定することができます。

このトピックでは、Brightcove Player API を使用し、プレーヤをカスタマイズする方法の例をいくつか示します。これらの例を使用するには、サンプルの zip ファイルをダウンロードし、zip ファイル内の readme.txt ファイルの指示に従ってください。

Flex Search および FlexSearchWithSWC の使用例

サンプル zip ファイルの Flex Search の使用例では、デフォルトの Flex コンポーネントを Brightcove プレーヤおよびプレーヤ ランタイム API の ActionScript 埋め込みスニペットで使用し、アカウントの検索機能を提供する方法を示します。FlexSearchWithSWC の使用例もまったく同様ですが、Player API SWC の使用方法も示します。

Flash ウィジェットと、HTML および JavaScript のインタラクティブ性を組み合わせることにより、プレーヤ アプリケーションをより小さく、より高速な部分に分割すると、エンドユーザーにとってより高い性能を発揮するアプリケーションが作成できます。Video Cloud プレーヤは、高速ロードする動画再生ウィジェットであり、その周りに独自の動画プレーヤ体験をカスタマイズすることができます。

Brightcove 3.1 リリース時点での、以前のバージョンの Brightcove Player API のリファレンスを参照するには、ここをクリックしてください。非推奨になったメソッドやイベントも含まれています。Brightcove 3.2 リリースにおける API の変更や非推奨事項の概要については、Brightcove Player API の変更点を参照してください。現行の Brightcove Player API のリファレンス情報は、現時点の Player API リファレンスを参照してください。

このトピックでは、Brightcove 3.1 リリースで提供されていた Brightcove Player API のオブジェクトへのリファレンスを提供します。これは現行バージョンのPlayer API ではありません。これは、現在のPlayer API リファレンスに含まれていない非推奨のメソッドまたはイベントに関するドキュメントを提供するためのものです。Brightcove 3.2 リリースにおける API の変更や非推奨事項の概要については、Brightcove Player API の変更点を参照してください。メソッド、イベント、およびオブジェクトなど、現行の Brightcove Player API のリファレンス情報は、現時点の Player API リファレンスを参照してください。

Player API では、VideoPlayerModule の setVideoFilter() メソッドを使って、現在ロードされている動画にフィルタを適用できます。以下のフィルタが利用できます。