アクセシビリティ
デベロッパーリソース

目次

Flashビデオ習得ガイド

ビデオの同期とキャプションの追加

これまでに、Flashビデオの作成と、Webページでの表示について学習しました。次のステップは、Flashの強みを活かしてビデオをコンテンツと同期させ、ムービーの表示にキャプションを付けることになります。Flash CS3 Professionalには、テキスト、アニメーション、グラフィックおよびキャプションをビデオの時間のポイントと同期させることのできる様々な機能が用意されています。

このセクションでは、ビデオキューポイントの操作の基本や、ActionScript 3.0コンポーネントのビデオキャプションのための新機能など、コンテンツの同期とキャプションに関連する主な概念の概要を紹介します。

ビデオの同期の詳細な記事およびサンプルファイルについて詳しくは、「Flash video templates*」ページを参照してください。

ビデオキューポイントについて

キューポイントとは、コンテンツやアクティビティを同期させる時間を指定するためにFLVファイルに配置するマーカーです。キューポイントの基本を理解すれば、ビデオを他のタイプのFlashコンテンツと様々な形で組み合わせて使用できるようになります。

ビデオキューポイントの3つのタイプ

キューポイントには、ナビゲーション、イベントおよびActionScriptの3タイプがあります。ナビゲーションキューポイントとイベントキューポイントは、エンコーディング時に直接FLVファイルに埋め込まれます。ナビゲーションキューポイントは、ビデオ内の正確な位置への移動が必要とされるFlashユーザインターフェイスにうってつけです。エンコーダにより、キューポイントが追加された場所にキーフレーム全体が強制的に配置されるため、そのポイントへの正確な移動が可能になります。イベントキューポイントもエンコーディング時に埋め込まれます。イベントキューポイントを使用すると、ビデオの時間をTimed Textキャプションファイルやその他のイベントと同期させることができます。ActionScriptキューポイントはFLVファイルには埋め込まれず、ActionScriptによって実行時に追加されます。

注意:プログレッシブ配信のビデオの時間を正確にシークするには、直接ビデオに埋め込まれたナビゲーションキューポイントを使用するしかありません。ボタンを使ってビデオの特定の時間にジャンプできるようなインターフェイスを作成する場合は、キューポイントをエンコーディング時に直接ビデオに埋め込むことをお勧めします。

キューポイントの作成

ナビゲーションキューポイントとイベントキューポイントは、Flashビデオの読み込みウィザードまたはFlash CS3 Video Encoderを使用してエンコーディング時に追加します。ActionScriptキューポイントは、ムービーのオーサリング時にプロパティインスペクタでFLVPlaybackコンポーネントのcuePointパラメータを使用して追加するか、実行時にActionScriptを使用して追加します。

注意:キューポイントは、Flashビデオの読み込みウィザードまたはFlash CS3 Video Encoderを使用してエンコーディング時にXMLファイルに書き出すことができます。保存したXMLファイルを読み込んで他のビデオで使用すると、一貫性を確保し、製作時の時間を節約できます。

キューポイントへの応答

キューポイントを作成したら、少量のFlash ActionScriptコードを使用してキューポイントに応答する必要があります。Flashムービーからは、ActionScriptのイベントとしてキューポイントを使用できます。ActionScriptのイベントは、なにか(イベント)が発生したときにそれに応答できるようにするためのタイミングフックです。cuePointイベントに応答するには、コンポーネントのイベントをリスンする標準のコードパターンを適用する必要があります。この手順は、ActionScript 2.0バージョンとActionScript 3.0バージョンのどちらのFLVPlaybackコンポーネントを使用するかによって多少異なります

ActionScript 2.0のビデオイベントとキューポイントパラメータの処理のドキュメンテーションについては、Flash LiveDocsの「cuePointイベントの監視」セクションを参照してください(ActionScript 2.0コンポーネントリファレンスガイド/FLVPlaybackコンポーネント/キューポイントの使用/cuePointイベントの監視)。

ActionScript 3.0のビデオイベントとキューポイントパラメータの処理のドキュメンテーションについては、Flash LiveDocsの「cuePointイベントの監視」セクションを参照してください(ActionScript 3.0コンポーネントガイド/FLVPlayback コンポーネントの使用/FLVPlayback コンポーネントの使用/キューポイントの使用/cuePointイベントの監視)。

キューポイントパラメータ

ActionScriptでキューポイントイベントをキャッチすると、そのキューポイントに関する情報を含むイベントオブジェクトがイベントハンドラ関数に渡されます。この情報を使用して、イベントに応答して実行する操作を決定するため、これは重要です。

キューポイントイベントオブジェクトのinfoプロパティには以下のプロパティが含まれています。

  • name:キューポイントの名前。
  • time:キューポイントに関連付けられている時間。
  • type:キューポイントのタイプ(ナビゲーション、イベントまたはActionScript)。
  • parameters:キューポイントに関連付けられている変数を含むオブジェクト。

FlashビデオをFlashコンテンツに同期させるための一般的な方法

キューポイントイベントの通知に応答するコードを記述し、キューポイントパラメータにアクセスできるようになったら、正しいタイミングでオーサリングできるので、なんらかの処理を実行する必要があります。ビデオをFlashコンテンツに同期させる方法としては、キューポイントの名前と同じフレームラベルを含むフレームに移動する方法(タイムラインベースのファイルの場合)と、キューポイントの名前と同じ名前のスライドに移動する方法(スクリーンベースのファイルの場合)の2つの方法が最も一般的です。ここでポイントとなるのは、ビデオの対応する時間に表示するコンテンツを含むFlash内の場所に移動するための手段として、キューポイントの名前を使用することです。

Flashコンテンツと同期するビデオを作成するためのチェックリスト

以下のリストは、Flashタイムラインに沿ってテキストやグラフィックと同期するビデオを含むFlashファイルを作成する際の一般的な手順を示しています。

同期ビデオプレゼンテーションを作成するには:

  1. ソースビデオを用意し、コンテンツを同期させるポイントを決定します。
  2. ビデオをFLV形式にエンコードし、目的の場所にナビゲーションキューポイントを埋め込みます。
  3. Flashファイルを作成し、メインタイムラインに沿って任意の間隔でキーフレームを追加します。ビデオの各キューポイントのためのキーフレームを追加し、関連するキューポイントの名前に対応するフレームラベルを各キーフレームに追加します。
  4. コンテンツが正しいキューポイント名(フレームラベル)に対応するようにコンテンツをキーフレームに配置します。
  5. Flashビデオの読み込みウィザードまたはFLVPlaybackコンポーネントのパラメータを使用してFLVファイルを読み込みます。
  6. cuePointイベントリスナーをFLVPlaybackコンポーネントに追加し、イベントリスナーのコードパターンをメインタイムラインのフレーム1に追加します。
  7. イベントハンドラのコードで、キューポイントパラメータの名前と同じ名前のフレームラベルをターゲットとするgotoAndStopアクションを追加します。

ActionScript 3.0のビデオキャプション機能の使用

ActionScript 3.0バージョンのFLVPlaybackコンポーネントには、新しいFLVPlaybackCaptioningコンポーネントが含まれています。FLVPlaybackCaptioningコンポーネントを使用すると、アクセシビリティや標準のテキストキャプションのためのキャプションコンテンツを簡単に追加できます。

ActionScript 3.0コンポーネントでは、次の2つの方法でキャプションテキストを追加できます。

  1. Timed Textファイルと呼ばれるW3C標準のキャプションXMLファイルを使用します。
  2. parametersフィールドにキャプションが関連付けられたイベントキューポイントを含むXMLファイルを使用します。

どちらの方法を使用しても、キャプションをビデオの再生中のタイミングの特定のポイントに連動させることができます。この場合、FLVPlaybackCaptioningコンポーネントは、FLVPlaybackコンポーネントと同じタイムラインに配置されると、キューポイントイベントと時間を自動的にリスンするため、同期の処理が自動的に行われます。キャプションを作成する場合は、ActionScriptコードを記述する必要はありません(コンポーネントによって自動的に処理されます)。

FLVPlaybackCaptioningコンポーネントには次のような機能があります。

  • キャプションのタイミングを指定できます(Timed Textファイルを使用する場合は継続時間も指定できます)。
  • XMLファイル定義でキャプションテキストの書式を設定できます。
  • キャプションボタンを使用してキャプションのオン/オフを切り替えることができます。
  • キャプションで多言語トラックがサポートされます。
  • キャプションを複数のFLVPlaybackインスタンスに割り当てることができます。

ActionScript 3.0 FLVPlaybackのキャプションの操作のドキュメンテーションについては、Flash LiveDocsの「FLVPlaybackCaptioningコンポーネントの使用」セクションを参照してください(ActionScript 3.0コンポーネントガイド/FLVPlaybackCaptioningコンポーネントの使用)。