サウンドアーキテクチャについて

Flash Player 9 以降、Adobe AIR 1.0 以降

アプリケーションでは、次の 5 つのメインソースからサウンドデータをロードすることができます。

  • 実行時に読み込む外部サウンドファイル

  • アプリケーションの SWF ファイル内に埋め込まれたサウンドリソース

  • ユーザーのシステムに接続されたマイクロフォンから入力されるサウンドデータ

  • Flash Media Server などのリモートメディアサーバーからストリーミングされるサウンドデータ

  • sampleData イベントハンドラーを使用して動的に生成されるサウンドデータ

サウンドデータは、完全に読み込んでから再生することも、ストリーミングすることも、つまりまだ読み込みの途中で再生することもできます。

ActionScript 3.0 のサウンドクラスは、MP3 形式で保存されているサウンドファイルをサポートします。WAV や AIFF といった、他の形式のサウンドファイルを直接ロードまたは再生することはできません。 ただし、Flash Player 9.0.115.0 以降では、NetStream クラスを使用して AAC オーディオファイルをロードおよび再生できます。これは、ビデオコンテンツのロードと再生に使用されるものと同じ技法です。この技法について詳しくは、ビデオの操作を参照してください。

Adobe Flash Professional を使用すると、WAV または AIFF サウンドファイルを読み込んで、アプリケーションの SWF ファイルに MP3 形式で埋め込むことができます。Flash オーサリングツールを使用すると、埋め込まれたサウンドファイルを圧縮してファイルサイズを小さくすることができます。ただし、サイズが減少する代わりにサウンドの品質は低下します。 詳しくは、『Flash ユーザーガイド』の「サウンドの読み込み」を参照してください。

ActionScript 3.0 サウンドアーキテクチャは、flash.media パッケージの次のクラスを利用します。

クラス

説明

flash.media.Sound

Sound クラスは、サウンドの読み込みを処理し、サウンドの基本的なプロパティを管理し、サウンドの再生を開始します。

flash.media.SoundChannel

アプリケーションが Sound オブジェクトを再生するときは、再生を制御するために新しい SoundChannel オブジェクトが作成されます。SoundChannel オブジェクトは、サウンドの左右の再生チャンネルの音量を制御します。再生するサウンドはそれぞれ、専用の SoundChannel オブジェクトを使用します。

flash.media.SoundLoaderContext

SoundLoaderContext クラスは、サウンドのロード中に何秒間バッファリングするか、また、ファイルのロード中に Flash Player または AIR がサーバーのポリシーファイルを検索するかどうかを指定します。SoundLoaderContext オブジェクトは、Sound.load() メソッドに対するパラメーターとして使用されます。

flash.media.SoundMixer

SoundMixer クラスは、アプリケーション内のすべてのサウンドに関係する再生とセキュリティのプロパティを制御します。実際、共通の SoundMixer オブジェクトを通じて複数のサウンドチャンネルが合成されるので、SoundMixer オブジェクトのプロパティ値は、再生中のすべての SoundChannel オブジェクトに影響を与えます。

flash.media.SoundTransform

SoundTransform クラスには、サウンドの音量とバランスを制御する値が含まれます。SoundTransform オブジェクトは、数あるオブジェクトの中で、個々の SoundChannel オブジェクト、グローバル SoundMixer オブジェクト、または Microphone オブジェクトに適用できます。

flash.media.ID3Info

ID3Info オブジェクトには、通常は MP3 サウンドファイルに格納される ID3 メタデータ情報を表すプロパティが含まれています。

flash.media.Microphone

Microphone クラスは、ユーザーのコンピューターに接続されたマイクロフォンまたはその他のサウンド入力デバイスを表します。マイクロフォンからのオーディオ入力は、ローカルスピーカに渡したり、リモートサーバーに送信したりできます。Microphone オブジェクトは、ゲイン、サンプリングレート、および固有のサウンドストリームの他の特性を制御します。

flash.media.AudioPlaybackMode

AudioPlaybackMode クラスは、SoundMixer クラスの audioPlaybackMode プロパティの定数を定義します。

読み込まれて再生される各サウンドには、Sound クラスと SoundChannel クラスについて、専用のインスタンスが必要です。複数の SoundChannel インスタンスからの出力は、再生中にグローバルな SoundMixer クラスによって合成されます。

Sound、SoundChannel、および SoundMixer クラスは、マイクロフォンから取得したサウンドデータ、または Flash Media Server などのストリーミングメディアサーバーからのサウンドデータには使用されません。