霧中蒼鳥

-The blue bird in the mist-

mBMplay

プレビュー向けの再生専用BMSプレーヤー「mBMplay」特設ページ(兼オンラインマニュアル)。

mBMplay

何これ

BMSエディタからのプレビュー等に向いた再生専用のBMSプレーヤーです。

主な機能

  • BMS/BME/BML/PMSの再生に対応
  • プレイスタイル(鍵盤数)によるプレイスキンの切り替え
  • 再生開始位置の指定及びシーク対応
  • 再生速度変更機能
  • HS-FIX対応
  • 秒間密度計測機能

注意事項(必ず読んで)

このプログラムをダウンロードする前にいくつか注意事項があるので必ずお読みください。

必要環境

  • Windows10 1507以前の場合は.NET Framework 4.6.1以上のインストールが必要です。
  • DirectX9で使用する場合はDirectX End-User Runtimes (June 2010)のインストールが必要です。

ゲージについて

曲の先頭から開始した場合は20%、途中から開始した場合は2%スタートになります。

秒間密度計測機能について

このプレーヤーでは1ノート目の判定が出た瞬間から計測を開始し、1秒経過ごとにリアルタイムで計測しています。
このためシーク等で計測開始位置が変化したり再生速度を変更したりするとそれに伴って秒間密度も変化します。
また、処理落ち等で再生のたびに秒間密度が変化することがあります。

再生速度変更について

再生速度は-12(x0.5)~0(x1.0)~+12(x2.0)の範囲内で変更できます。
実際の倍率は以下のようになります。(小数第4位以下切り捨て、LR2におけるFREQとほぼ同等です)

-12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0
x0.5 x0.529 x0.561 x0.594 x0.629 x0.667 x0.707 x0.749 x0.793 x0.840 x0.890 x0.943 x1.0
0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12
x1.0 x1.059 x1.122 x1.189 x1.259 x1.334 x1.414 x1.498 x1.587 x1.681 x1.781 x1.887 x2.0

なお、動画BGAの再生速度は変更されませんので注意してください。

既知の不具合

  • Windows7環境においてDirectSound使用時、VsyncをOFFにすると譜面スクロールがカクつく

画面の見方

mBMplay
プレイ画面
(上から) ジャンル / タイトル (+サブタイトル) / アーティスト (+サブアーティスト)
HS種別 / HS倍率
(上から) マスターボリューム / キーボリューム / BGMボリューム
BGA
(上段) 現在の再生時間 / 総再生時間
(下段) プログレスバー
曲再生速度
現在の小節 / 総小節数
現在のノーツ (MAXCOMBO) / トータルノーツ
総LN数 (LNが存在する場合のみ表示)
プレイレベル
判定ランク
現在のBPM
(上から) 最小BPM / 最大BPM (いずれもBPM変化が存在する場合のみ表示)
TOTAL値
(上から) ゲージ数値 / ゲージ表示
ゲージ総回復量
現在の秒間密度
(上から) 最高秒間密度 / 平均秒間密度
(上から) FPS / UPS (内部更新処理レート)

操作方法

[*]の付いた項目は設定が保存されます。

  • 画面内へBMSファイルをドロップ - そのBMSを読み込み
  • ↑/↓ - シーク(小節送り/戻し)
    • (単体) 1小節
    • (+Shift) 4小節
  • スペースバー - 曲の先頭に戻す
    • (+Shift) 曲の再読み込み(#RANDOM再抽選)
    • (+Ctrl+Shift) LNモードを変更して曲の再読み込み(#RANDOM再抽選)[*]
  • 1/2 - HS減少/増加 (最小: x0.25)[*]
    • (単体) +-0.25
    • (+Shift) +-1.00
    • (+Ctrl) +-0.05
    • (1+2同時押し) x1.00に設定
  • 3/4 - マスターボリューム減少/増加 (0-100)[*]
    • (単体) +-5
    • (+Shift) +-10
    • (+Ctrl) +-1
    • (Ctrl+Shift+3) 0に設定
    • (Ctrl+Shift+4) 100に設定
  • Q/W - キーボリューム減少/増加 (0-100)[*]
  • E/R - BGMボリューム減少/増加 (0-100)[*]
    • 増減量やCtrl/Shiftの組み合わせはマスターボリュームと同様
  • 5/6 - HS-FIX変更[*]
    • HI-SPEED(HS-FIX無効)
    • HS-MAXFIX(最大BPM合わせ)
    • HS-MINFIX(最小BPM合わせ)
    • HS-MAINNOTE(ノート数が最も多いBPM合わせ)
    • HS-MAINTIME(時間が最も長いBPM合わせ)
    • REG-SPEED(ソフラン無視)
  • 7/8 - 曲スピード減少/増加 (-12 - +12)
    • (単体) +-1
    • (7+8同時押し) +0に設定
  • 0 - プレイサイド変更[*]
    • 1P
    • 2P
    • 両方(バトル)
  • F7 - FPS/UPS表示
  • Esc - 終了

コマンドライン引数

[*]の付いた項目は設定が保存されます。

mBMplay.exe {-s [開始小節]} {-l [0 | 1]} {-t} {-nobga} {-vsync [on | off]} {-ups [内部更新レート]} {-gr [グラフィック種別]} {-au [オーディオ種別]} [<ファイルのパス>]

-s [開始小節]

開始小節を指定します。

-l [0 | 1]

LNモードを指定します。[*]
(0 = 標準モード (LN1本につき2ノーツ)、 1 = 従来モード (LN1本につき1ノーツ))

-t

すでに起動しているmBMplayを終了させます。(エディタの停止用)

-nobga

BGAの再生を無効にします。(読み込みもしません)

-vsync [on | off]

垂直同期の有効/無効を設定します。[*]

-ups [内部更新レート]

内部更新処理のレートを設定します。[*]
0を指定すると描画スレッドとの同期処理になります。
OpenGLの場合は強制的に0になります。

-gr [グラフィック種別]

使用するグラフィックAPIの種類を設定します。[*]

  • dx9 - DirectX9を使用します。(デフォルト)
  • dx12 - DirectX12を使用します。(実験用)
  • gl - OpenGLを使用します。(実験用、一部機能に制限あり)
  • vk - Vulkanを使用します。(実験用)
-au [オーディオ種別]

使用するオーディオAPIの種類を設定します。[*]

  • xa - XAudio2を使用します。(デフォルト)
  • ds - DirectSoundを使用します。
  • al - OpenALを使用します。(実験用)

使用例

iBMSC:最初から再生

mBMplay.exe "<filename>"

iBMSC:現在位置から再生

mBMplay.exe -s <measure> "<filename>"

iBMSC:停止

mBMplay.exe -t

垂直同期有効、更新レート1000に設定

mBMplay.exe -vsync on -ups 1000

グラフィック種別をDirectX9、オーディオ種別をDirectSoundに設定

mBMplay.exe -gr dx9 -au ds

Download

ダウンロードする前に以下のライセンスをよく読んで同意した上でダウンロードして下さい。

ライセンス(必ず読んで)

mBMplay Licence v1.0

Copyright (c) 2019 misty.ls04

以下の制限に従う限り、本ソフトウェアを使用、改変および再頒布することを許可します。

  • 商用利用、および本ソフトウェアを利用して金銭的対価を得る行為の禁止。
  • 不正な手段を用いて生成されたBMS(派生フォーマット含む)を再生することの禁止。
  • 不正な手段を用いて生成された画像等のデータを使用した本ソフトウェアの改変、スキンの制作および使用の禁止。
  • ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、および下記免責条項を含めること。
  • バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の資料に、上記の著作権表示、本条件一覧、および下記免責条項を含めること。
  • 本ソフトウェアを変更を加えずに再頒布する場合は本ライセンス上でのみ可能とする。
  • 本ソフトウェアを改変した派生物を頒布する場合は本ライセンスもしくはそれに準じたより制限の強いライセンス上でのみ可能とする。

本ソフトウェアは「現状のまま」で、明示であるか暗黙であるかを問わず、何らの保証もなく提供されます。
本ソフトウェアの使用によって生じるいかなる損害についても、作者は一切の責任を負わないものとします。


いろいろゴチャゴチャ書いてますが最低限使用に関わる上から3つの条件には特に注意してください。

※このソフトウェアで使用しているライブラリのライセンスについては同梱のlicense_library.txtをご覧ください。
※skinフォルダ以下のファイル群についてはライセンス適用外とします。これらの改変・再配布等は本体のライセンスに抵触しない範囲でご自由にどうぞ。

Download

mBMplay 本体

最新Ver: v1.19.1107.0

Download(このサーバーから)(32bit版)

Download(このサーバーから)(64bit版)

v1.19.0707.0~v1.19.0728.0→v1.19.1107.0 更新パッチ

既にv1.19.0707.0~v1.19.0728.0を使用している場合はこちらのパッチを適用して下さい。
※v1.19.0707.0~v1.19.0728.0専用です。それ以外のバージョンには絶対に適用しないで下さい。

Download(このサーバーから)(32bit版)

Download(このサーバーから)(64bit版)


デフォルトスキンの一部パーツにLR2用スキン「Light Pop EX」及び.RED氏制作の「OVER ACTiVE DX+」(せな氏制作のボム含む)のパーツを使用しています。

更新履歴

2019/11/7 v1.19.1107.0
  • 環境によって更新レートを0以外にすると再生開始後しばらくするとエラーが出たりフリーズするバグを修正
  • BGA用テクスチャ更新タイミングを更新処理中から描画処理中に変更
  • 連番BMP使用のBGAを再生中にメモリを大量に消費したりガベージコレクションで処理落ちする現象を大幅に軽減
  • 動画BGAの内部仕様の一部変更
  • BMS読み込み開始時に一瞬画面が黒くなる現象を軽減
2019/7/28 v1.19.0728.0
  • ゲージ数値等で小数を表示する際に整数部と小数点以下で丸め方が異なり値がおかしくなっていたのを修正
  • OpenGL使用時以外でAltキーを押すと描画が止まるバグを修正
  • 内部更新レートが0のときに-tで終了しようとするとエラーが出て落ちるバグを修正
  • BMP定義の代替ファイル検索に対応
    (BMP定義に画像が指定されている場合は画像優先、動画が指定されている場合は動画優先で検索)
  • BPMやTOTAL値等の数値で小数の指数表記に対応
  • スペースやタブでインデントされたBMSに対応
  • Escキーで終了するようにした
  • ロード前/ロード中の画面にバージョンを表示するようにした
2019/7/14 v1.19.0707.1
  • BPMやTOTAL値等で2147483647を超える(-2147483648を下回る)数値を表示しようとした際にオーバーフローで落ちるバグを修正
    (超える場合は表示上9桁の範囲に収まるように上位から切り捨てます)
  • STOP定義の時間経過直後に譜面の表示がおかしくなるバグを修正
  • ムービーの読み込みに失敗した場合に無限ロードになることがあるバグを修正
  • ムービー再生終了後に停止状態にならず無駄な書き換えが発生していたバグを修正
  • ムービー再生終了後の小節にシークするとBGAが真っ黒になるバグを修正
  • 5keys/10keysスキンを使用可能にするための下準備
    (settings.xmlに5keys/10keysスキンのための項目を新設。空欄の場合はそれぞれ7keys/14keysスキンを使用)
  • スキンの些細な定義ミスの修正
2019/7/7 v1.19.0707.0
  • 初版