Wiki · TJA とシミュレーター
TJA の OFFSET と BPM を調整する:譜面と音楽がずれているときの対処法
TJA のずれを直す方法:OFFSET の意味と正負号、調整する方向、BPM が不正確なときに後ろにいくほどずれていく症状、#BPMCHANGE による変速、そして TaikoForge の自動検出。
TJA の音符と音楽がずれている場合、ほぼ必ず OFFSET か BPM のどちらかが間違っています。このページでは両者の意味、症状からどちらの問題かを見分ける方法、そして調整する方向を説明します。
1. まず OFFSET か BPM かを見分ける
自動演奏をオンにして、自動打撃音と音楽の拍がどう合っているか聴き、ずれ方を確認してください:
| 症状 | 原因 | 調整する箇所 |
|---|---|---|
| 最初から最後まで同じ量だけずれている | 譜面全体の開始点がずれている | OFFSET |
| 最初は合っているが、後ろになるほどずれていく | 小節ごとの長さが違うため、誤差が小節を追うごとに積み重なる | BPM |
| 前半は合っているが、ある箇所から突然ずれ始める | その箇所で曲のテンポが変わっている | #BPMCHANGE |
シミュレーターをインストールしたくない場合は、TJA 譜面をブラウザでプレイで .tja と音源を選ぶと自動演奏が聴けます。確認に最も便利な方法です。
2. OFFSET の意味と正負号
OFFSET は .tja のヘッダーに書く数値で、単位は秒です。音源のどの時刻から最初の小節が始まるかを決めます。第 1 小節は音源の -OFFSET 秒から始まるため、正負号は時間と逆になります。
- OFFSET:-1.601:音楽が始まって 1.601 秒後に第 1 小節が始まります。つまり前奏が 1.601 秒あります。
- OFFSET:0:音源の 0 秒が第 1 小節の頭です。
- OFFSET:0.5:正の値はまれで、第 1 小節より 0.5 秒遅れて音源が始まることを意味します。
多くの曲には前奏があり、音楽が始まってしばらくしてから第 1 拍が来ます。そのため OFFSET は通常負の値になります。
OFFSET はすべての難易度に共通するヘッダーに書くため、変更するとすべての難易度に同時に影響します。
3. OFFSET をどちらに調整するか
最初の小節の最初の数音符を聴いてみてください:自動で打ち出された打撃音は、音楽のビートより遅いですか、早いですか?
| 聞こえる症状 | 意味 | 調整方法 |
|---|---|---|
| 打撃音がビートより遅い | 譜面が遅れている | OFFSET を大きくします(正の方向へ)。例:-1.601 → -1.571。 |
| 打撃音がビートより早い | 譜面が早すぎる | OFFSET を小さくします(負の方向へ)。例:-1.601 → -1.631。 |
覚え方:譜面が遅れている → OFFSET を大きく;譜面が早い → OFFSET を小さく。
1回の調整は 0.02〜0.05 秒にとどめ、保存後にリロードして聴き直してください。0.1 秒程度のズレは通常はっきり分かります。打撃音とビートが同時に鳴れば合っています。
.tja をテキストエディタで開き、先頭の OFFSET 行を変更してください。保存時は元のエンコーディングを維持してください。詳細は TJA フォーマット解説 のエンコーディングの節を参照してください。
ほとんどのシミュレーターには音声や入力ラグを補正する専用の設定がありますが、それはデバイス固有の遅延を補うものであり、.tja の OFFSET とは別物です。譜面全体がずれている場合は、デバイス設定ではなく OFFSET を変更してください。
4. BPM が合っていないときの症状
BPM は各小節の長さを決めます。BPM がわずかにずれていても最初の数小節では気づきにくいですが、誤差は小節ごとに積み重なり、後半になるほどずれが大きくなります。
- 音符がどんどん遅れ、譜面が音楽より遅い:BPM が低すぎます。上げてください。
- 音符がどんどん早まり、譜面が音楽より速い:BPM が高すぎます。下げてください。
- 音符のリズムが音楽とちょうど2倍ずれている:BPM が正しい値の半分または2倍として検出された可能性があります。これは BPM 検出でよくあることです。数値だけを変えると全音符のタイミングが一緒に動くため、通常は正しい BPM を手動で入力してから再作譜が必要です。
修正 BPM の計算方法:t 秒時点で譜面が音楽より d 秒遅れている場合、新 BPM ≈ 旧 BPM × t ÷ (t − d)。譜面が音楽より早い場合は d を負の値にします。
例:BPM が 150 で、60 秒時点で譜面が 0.5 秒遅れている場合:150 × 60 ÷ 59.5 ≈ 151.26。
多くの曲の BPM は整数または小数第1位です。算出結果が整数に非常に近い場合(例:149.98)は、まずその整数を試してください。
BPM を変更した後、OFFSET も再調整が必要な場合があります。まず冒頭が合っているか確認し、次に後半でずれが広がっていないか確認してください。
5. 曲中の変速:#BPMCHANGE
曲の途中でテンポが変わる曲があります。ヘッダーの BPM は冒頭だけを制御します。変速箇所には #BPMCHANGE を新しい行に書いて、そこから新しい速度に切り替えてください:
BPM:150
// …
#START
1010101010101010,
#BPMCHANGE 180
1010101010101010,
#END
#BPMCHANGE は小節の途中にも記述でき、その後の音符にのみ影響します。小節の先頭に書くのが最もシンプルです。
症状は前半は合っているのに途中からずれ始めることです。ずれ始める位置を特定し、その区間の BPM を算出して、対応する小節の前に #BPMCHANGE を追加してください。
音楽が階段式ではなく徐々に加速・減速する場合、追いつくために多くの #BPMCHANGE が必要になり、手動調整には多大な時間がかかります。
その他のコマンドの書き方は TJA フォーマット解説 をご覧ください。
6. TaikoForge による自動検出
TaikoForge は作譜時に BPM と OFFSET を自動検出します。BPM は整数付近にスナップされるため、自分で計測する必要はありません。
- 曲の正確な BPM が分かっている場合は、「詳細パラメーター」に手動で入力してください。自動検出よりも精度が明らかに向上します。
- 曲中にテンポが変わる曲には「曲中の変速を検出(BPMCHANGE)」にチェックを入れてください。これは実験的な機能で、デフォルトでは無効です。
- 同じ曲の正確な TJA をお持ちであれば、「参照 TJA」としてアップロードしてください。TaikoForge はその BPM・OFFSET・変速をそのまま使用します。
譜面エディタ は音符の編集のみで、BPM や OFFSET の変更はできません。BPM または OFFSET が正しくない場合は、正しい値を手動で入力して再作譜するか、テキストエディタで直接 .tja のヘッダーを編集してください。