Specification of Typing of the Music (TOM) File Version 0.3 タイピング・オブ・ザ・ミュージック専用歌詞ファイル Version 0.3 仕様書 2009年02月04日 改訂 Ver.0.3 Rev4 §1.ファイルフォーマット  タイピング・オブ・ザ・ミュージック専用歌詞ファイル(以下、TOMファイル) は次のファイルフォーマットで記述されています。 拡張子        : *.tom 文字コード      : Shift_JIS 改行コード      : CR+LF 1行の長さ      : 最大 1,023Bytes 1行の文章の長さ : 最大 255Bytes 1行の読み仮名の長さ : 最大 255Bytes ファイルサイズ    : 最大1,048,576Bytes §2.ファイルの構成  TOMファイルは大きく分けて3つの部分に別れています。  第1部はファイルがTOMファイルであることと、ファイルのバージョンを示し ています。この部分は、この仕様書の通りにかけばどのファイルも一致します。 1字でも一致しなければ本ソフトは異なるファイルだと判断し、エラーを返し ます。第1部は必ず2行です。  第2部はファイルの内容を示すタグ部分です。曲のタイトル、アーティスト、 使用する曲ファイルを記述します。現時点では曲ファイルの情報しか使用して いませんが、将来的に必要になる可能性が高いので、記述するようにしてくだ さい。第2部には、誤動作しないように注意さえすればコメントを埋め込むこ とも出来ます。ただし、第2部は8行以内に収め、曲ファイル情報を一番下に記 述してください。本ソフトは曲ファイル情報から下が第3部(タイムライン)で あると解釈します。  第3部はタイミングごとの歌詞・処理内容を記述する部分でタイムラインと 呼ぶことにします。一行に1処理となっており、上から順番に処理をするため、 タイミングが逆行することのないようにしてください。詳しい説明は§5.をご 覧ください。第3部の行数は決まっていません。ただし、ファイルサイズの制 限を越えないように注意してください。どうしても足りない場合HPの掲示板に その旨書き込んでください。 §3.第1部の記述法 ┌────────────────┐ │>>>Typing of the Music File <<< │ │Version 0.3 │ └────────────────┘  上記のとおりに記述してください。罫線の都合上余分なスペースがついてい ますので、余計なスペースは削除してください。余計なスペースがあると本ソ フトはファイル認識できません。 §4.第2部の記述法 ┌──────────────┐ │title 曲名 │ │artist アーティスト │ │author 作者     │ │volume 音量(0-100) │ │offvocal カラオケ.ogg;offset│ │musicfil 曲ファイル.ogg │ └──────────────┘  現時点で必須なタグはmusicfil(曲ファイル名)のみです。タグの後に記述す る情報は10文字目(先頭を1文字目とする)から記述してください。これ以外の 情報を追加するのはかまいませんが、musicfilは必ず一番下に記述してくださ い。そのほかのタグの順番は記入例のとおりでなくてもかまいません。  volumeタグ(任意タグ)で音量の補正が出来ます。offvocalタグ(任意タグ)を 用いるとカラオケモードでカラオケ音源を使うことが出来ます。offsetはカラ オケ音源の再生開始時間が異なる場合に指定してください(なくても可)。  Version 0.7系までは曲ファイルの再生にはMCIを使用していたため、Window s Media Playerで再生可能なファイルなら何でも登録できました。  Version 0.80からはMCIを使用せず、BASSというオーディオライブラリを使 っているため、WAV/AIF/MP3/OGG/AACなどをコーデックなしで再生できます。 WMAに限り、コーデックがインストールされている必要があります。  互換性、音質、容量の面から、OGG形式、品質ベース0.2でエンコードするこ とをお勧めします。 §5.第3部(タイムライン)の記述法  タイムラインの1行を例に挙げます。 ┌────────┐ │c0000000 文字列 │ └────────┘ c :オペコード(処理内容を示す)半角英小1文字 0000000 :タイミング(処理時間を示す)半角数字7文字(単位:ms) 半角スペース:1文字忘れずにつけるように 文字列 :処理に使う文字列、長さは任意 ┌─────┬───────────┬─────────────┐ │オペコード│ 処理内容 │ 文字列       │ ├─────┼───────────┼─────────────┤ │ z │前奏が始まることを示す│なし           │ ├─────┼───────────┼─────────────┤ │ k │間奏が始まることを示す│なし           │ ├─────┼───────────┼─────────────┤ │ e │後奏が始まることを示す│なし           │ ├─────┼───────────┼─────────────┤ │ t │ 歌詞と読み仮名を示す │歌詞;読み仮名       │ ├─────┼───────────┼─────────────┤ │ i │ 背景画像を切り替える │画像ファイル名      │ ├─────┼───────────┼─────────────┤ │ v │ 背景に動画を読み込む │動画ファイル名;FPS;Offset │ └─────┴───────────┴─────────────┘  オペコードtの行には画面に表示する歌詞と読み仮名を;(セミコロン)で区切 って記述してください。歌詞には表示可能な文字は全て使えますが、読みがな は、ひらがな、半角英数大文字、一部の半角記号のみとなります。  最後の行は必ずオペコードeを記述してください。後奏がない曲の場合も必 ず記述してください。将来的にあってもなくても良いようにする予定です。た だし、オペコードiだけは例外で、オペコードeの後にも記述できます。後奏の 最中に背景画像を切り替えることが出来ます。  背景画像に使用可能な形式はJPGのみです。画像サイズが極端に大きい 場合、読み込めない場合があります。  動画はAVI形式に対応しています。VFWコーデックのみ利用可能です。動画の FPSが正しくなければFPSが指定できます。FPSには小数は指定できません。 整数でない場合、例のように分数で記述してください。Offsetはミリ秒です。 FPSもOffsetも設定する必要がなければ、動画ファイル名のみで動作します。 記述例 ┌─────────────────────────────────┐ │i0000000 背景画像.jpg │ │v0000000 movie.avi;2997/100;100 │ │z0000000 │ │t0015232 ここに歌詞を入力します;ここにかしをにゅうりょくします │ │ (中略) │ │t0231897 サンプルデータも参考にしてみてください;さんぷるでーたも…│ │e0243831 │ └─────────────────────────────────┘ 例では、動画のFPSを強制的に29.97に設定し、音ずれを100msとしています。 §6.TOMファイルの格納方法  ファイルの格納方法は本体のバージョンによって異なります。 LVは10進2桁のレベルで、クリアするのに必要な分速打数を20で割って小数点 以下を切り上げたものです。同梱のレベラーで自動的にレベルを振ることがで きます。  本体バージョン0.70以降   LV 曲名.tom\script.tom   LV 曲名.tom\任意名称.mp3   LV 曲名.tom\任意名称.jpg  本体バージョン0.50-0.63   曲名.tom   曲名.files\任意名称.mp3   曲名.files\任意名称.jpg  本体バージョン0.10-0.40   曲名.tom   任意名称.mp3   任意名称.jpg §7.改版履歴 2009/02/04 Version0.3 Revision4 記述例の歌詞が著作権上不適切であったため、変更。 2008/09/24 Version0.3 Revision3 従来との互換性を残しつつ、カラオケ音源指定タグを追加。 2008/09/22 Version0.3 Revision2 従来との互換性を残しつつ、動画再生用コードを追加。 2007/11/25 Version0.3 Revision1 従来との互換性を残しつつ、音量指定タグを追加。 2007/03/21 Version0.3 Revision0 このドキュメントを作成 暫定版。一通りの機能は備わっている。 2006/06/01 Version0.3 Version0.2に機能追加し、Version0.3で運用開始 §8.あとがき  これでTOMファイルの作り方はわかっていただけたと思います。現在日に日 に曲数が増えています。これは誰でもファイルを作成できるようにTOMファイ ルの形式を決めたからです。  皆さんも実際のファイルを参考にしながら、製作してみてください。