╋━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋        LightAudio 1.2 Document          2010/10/11                             作者:りゅん ╋━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋ ┌───────────────────────────────────── │◆ 概要   LightAudio は主にゲーム用のオーディオを管理するプラグインです。   wav、mp3、ogg、mid 形式の音声ファイルの再生をサポートしています。   各音声ごとに切れ目のないループ再生や複数のサウンドの重ね合わせ再生を   行うことができます。 ┌───────────────────────────────────── │◆ 動作環境   ・OS    Windows XP, Vista, 7   ・DirectX  DirectX 9.0c 以上    ┌───────────────────────────────────── │◆ 著作権とライセンス   このプラグイン ( LightAudio ) の著作権は作者、りゅんにあります。   すべての環境での動作を保証するものではありません。   また、本ソフトウェア及びデータを使用して発生したいかなる不利益も、   作者は一切責任を負いません。必ず自己責任で使用してください。   このプラグインはOggVorvis形式のファイルデコードにXiph.org Foundation   のライブラリを使用しています。   配布規定に従って以下の表記をする必要があります。   【 libvorbis : Copyright (c) 2002-2004 Xiph.org Foundation 】   ( 作品の説明書のどこかにこの1行を書いていただければOKです。 )   以上の条件の元、ユーザーがこのプラグインを使用して作成した作品   ( 実行ファイル ) を有償・無償を問わず添付、複製、改編、再配布   することができます。   このプラグインの使用報告や著作権表明などの必要はありません。   ( でも説明書とかに「このプラグインつかったよ」って書いていただければ    作者の心が温まります。) ┌───────────────────────────────────── │◆ 入っているファイル   「HSP」フォルダには、Hot Soup Processor 3.0 以降 で使うために必要な   ファイルが入っています。      「C++」フォルダには、C++ 使用するための dll ファイルと lib ファイルが   入っています。 ┌───────────────────────────────────── │◆ 再生について   ゲームオーディオユーティリティに分類されている命令を使うときや、   la_load、la_memload の一番後ろのパラメータに 0 を指定、または省略したとき   WAVE、MP3、OGG 形式の音声は、実際に使用される PCM データの大きさ   ( MP3、OGG のデコード後の大きさ ) によって、オンメモリでの再生か   ストリーミングでの再生かをプラグインが自動的に決定します。   ( 現在は、50000 バイトを超えるものはストリーミングで再生 ) ┌───────────────────────────────────── │◆ MIDI 形式の音声について   DirectMusic Synthesizer で演奏されます。   ループ再生の場合、MIDI データ中にコントロールチェンジの 111 番があると、   曲を最後まで演奏したあとのリピート位置として、そこから演奏が再開されます。   現在、MIDI 形式の音声は一度にひとつしか演奏できません。   ( DirectMusic のセカンダリバッファがものすごく重くて… >_< )      MIDI に関しては、la_play ではなく、la_play_bgm での演奏をお勧めします。 ┌───────────────────────────────────── │◆ ゲームオーディオユーティリティに分類されている命令について   ゲームを作るにあたって、あったら便利だな〜 という機能をまとめた命令です。   RPG ツクールの仕様にもとづいて ( というかパクr ) 作成しました。   ● BGM ( BackGroundMusic )     複数同時再生せずに無限ループで演奏されるサウンドです。       la_play_bgm "test1.mp3"     という命令が実行されると、すぐに "test1.mp3" の音声の演奏を開始します。     続けて       la_play_bgm "test2.mid"     という命令が実行されると、現在再生中の BGM ( "test.mp3" )の     演奏を停止し、"test2.mid" の音声の演奏を開始します。     BGM はストリーミングで再生されます。   ● BGS ( BackGroundSound )     風の音や波の音などの環境音です。     仕様は BGM と同じで、複数同時再生せずに無限ループで演奏されます。     BGM と BGS は同時に演奏することができます。     BGS はストリーミングで再生されます。   ● ME ( MusicEffect )     ファンファーレなどの短く演奏される効果音楽です。     複数同時再生はできず、ループ演奏もしません。( 一度だけ再生 )     演奏開始と同時に BGM を一時停止します。     ME の演奏終了後、自動的に BGM をフェードインで復帰させます。     ME はオンメモリで再生されます。   ● SE ( SoundEffect )     打撃音や爆発音などの効果音です。     複数同時再生し、ループせずに一度だけ演奏されます。       la_play_se "test4.wav"       la_play_se "test4.wav"       la_play_se "test4.wav"       la_play_se "test4.wav"     連続で演奏を開始しても、前に la_play_se で再生したサウンドは     途切れず、重ねて再生されます。     ( アクションゲームとかで、自分と敵が同じ音を使う攻撃をするとき etc..      ほかにも、↑みたく連続で呼ぶと厚みのある音が表現できるかも… )     SE はオンメモリで再生されます。   ● まとめ         ┏━━━━━┳━━━━━┳━━━━━┓         ┃ループ再生┃重ね合わせ┃メモリ管理┃     ┏━━━╋━━━━━╋━━━━━╋━━━━━┫     ┃ BGM ┃  ○  ┃  ×  ┃ ストリーミング ┃     ┣━━━╋━━━━━╋━━━━━╋━━━━━┫     ┃ BGS ┃  ○  ┃  ×  ┃ ストリーミング ┃     ┣━━━╋━━━━━╋━━━━━╋━━━━━┫     ┃ ME ┃  ×  ┃  ×  ┃ オンメモリ ┃     ┣━━━╋━━━━━╋━━━━━╋━━━━━┫     ┃ SE ┃  ×  ┃  ○  ┃ オンメモリ ┃     ┗━━━┻━━━━━┻━━━━━┻━━━━━┛   これらを演奏する命令 ( la_play_bgm、la_play_bgs、la_play_me、la_play_se ) は、   音声ファイルの読み込み時に #pack、#epack で実行ファイルにパックされた   ファイルも自動で探して読み込みます。   ※ 実行ファイルにパックされた音声ファイルの演奏は、すべてオンメモリでの     再生になります。MP3 や OGG 形式の音声はデコード後のサイズ分の     メモリを使うため、大きいサイズのファイルの再生は避けてください。     ( だいたい、MP3 ではファイルサイズの 10 倍、OGG では 20 倍      のメモリを使います ) ┌───────────────────────────────────── │◆ 履歴   [ 2010/10/08 1.2 ]     ・C++ 用 Lib ファイルも公開しました。現在 VS2008 でのみ動作を確認しています。     ・ファイルが見つからないときのエラーメッセージをちゃんと出すようにしました。   [ 2010/09/05 1.1 ]     ・la_load、la_memload にオンメモリ、ストリーミングを選択できるパラメータを追加。     ・フェードアウト後の再生で音量が元に戻らないバグを修正。     ・一部の mp3 ファイルが読み込めなかったバグを修正。     ・再生終了後にもう一度再生したとき、すぐに停止するバグを修正。   [ 2010/09/04 1.0 ]     ・とりあえず完成。 ┌───────────────────────────────────── │◆ 連絡先    感想、不具合、要望、バグ報告などの連絡は、こちらへお願いします。    ・メール      lighty_leafnote@hotmail.co.jp    ・ホームページ      http://leafnote.sakura.ne.jp/  ─────────────────────────────────────                Copyright (c)りゅん. 2010 all rights reserved.