その整理、8000倍速くなる。BMS Part Tuner:アプリが音を聴いてファイルを削減、最速の選択。

BmsPartTuner-Logo
BmsPartTuner-Screenshot

こんにちは、楽曲・PV・サイト・ツールetc色々作成担当の🔵おちあPです。

BMS制作における「定義の整理」という、地味ながらも非常に負荷の高い作業を自動化するツール「BMS Part Tuner v1.0.0.0」をリリースしました。波形解析を用いて重複する音ファイルを安全かつ確実に集約し、作品のクオリティ維持とファイルサイズの軽量化を両立させます。

ダウンロード

ソースコード

導入・起動方法

GitHubのReleasesページから最新のZIPファイルをダウンロードし、任意のフォルダに展開してください。実行には .NET 10 以上のランタイムが必要ですが、多くの環境ではそのまま動作します。

BmsPartTuner.exeをダブルクリックすることで起動できます。

※最適化されたBMSは別ファイルとして出力されるため、元のファイルが直接変更されることはありません。ただし、念のため事前にバックアップを取ることを推奨します。

なぜこのツールを作ったのか

BMSONから変換したBMSにおいて、同じ音が別々の定義番号で乱立してしまうことが多々あります。これを手作業で整理するのは苦行であり、また「ファイル名が違うだけで実は中身が同じ音」を見つけ出すのは至難の業です。既存の整理ツールでは対応しきれない「波形レベルでの一致」を判定し、制作者が本来のクリエイティビティに集中できる環境を作りたいと考えたのが開発のきっかけです。

主な機能と特徴

1. 「1時間から0.3秒へ」8000倍の高速化を達成

独自の並列比較エンジンを搭載することで、従来の単純な波形比較処理と比較して当グループ比で約8000倍の高速化に成功しました。数千個の定義を持つ大規模なBMSであっても、解析から最適化までわずか0.3秒ほどで完了します。制作の手を止めることなく、瞬時に結果を確認できます。

2. 62進数・36進数BMSフォーマットを完全サポート

従来の36進数形式はもちろん、拡張フォーマットである62進数BMSにも対応しました。定義数が膨大になりがちな現代のBMS制作において、どのようなフォーマットでも制限なく最適化を実行できます。また、音声データそのものを解析するため、ファイル名が異なっていても中身が同じであれば自動的に一つの定義へ集約します。

3. 処理の安全性を担保するアトミック書き換え

BMSファイルは制作者にとって大切な資産です。本ツールは書き換えの際、まず一時ファイルを生成し、すべての処理が成功した瞬間にのみ元のファイルを置き換える設計を採用しています。万が一処理中にトラブルが発生しても、元のBMSファイルが壊れる心配はありません。

4. mBMplay連携による音の整合性確認

設定画面で mBMplay のパスを指定しておけば、集約前後の音をプレイヤー上で即座に試聴できます。解析のしきい値を調整した際や、意図しないノイズの混入を検証したい場合に、使い慣れた環境で最終確認を行えるため、より確信を持って最適化を進められます。

設定画面から「波形の許容誤差(しきい値)」を調整することで、微細なノイズを無視して集約するか、厳密な完全一致を狙うかを選択できます。おすすめは40%程度ですが、楽曲に合わせて調整してください。数値入力の代わりにバーチャルスライダーで直感的に操作でき、ShiftまたはCtrlを押しながらスライドすることで、高速調整や微細な調整が可能です。

5. リクエストとバグ報告

不具合報告や要望は[GitHubのIssues]までお寄せいただけると幸いです。

システム仕様

  • 対応フォーマット: .bms / .bme / .bml / .pms (36進数・62進数)
  • 対応音源ファイル: .flac / .ogg / .wav
  • 音声エンジン: NAudio による高精度デコードおよび解析
  • UIスタック: WPF (.NET 10)

コメント