頁内目次
- uBMplay 動作環境
- uBMplay の導入 (簡単に済ませたい場合)
- BMSE と uBMplay を別々のフォルダに置く場合
- 『実行ファイルのパス』の補足
- コマンドライン引数
- 必要なら PMS 用テーマを導入する
- ビューワが起動しない、または正常に動作しない場合
uBMplay 動作環境
- [uBMplay 1.5.2 - 1.5.0] 対応 OS:
- Windows 11
/10 /8.1 /8 /7 /Vista /XP - [uBMplay 1.4.6 - 1.4.5] 対応 OS:
- Windows 11
/10 /8.1 /8 /7 /Vista /XP /2000 - [uBMplay 1.4.4 - 1.4.0] 対応 OS:
- Windows 11
/10 /8.1 /8 /7 /Vista /XP /2000 /ME /98 - [uBMplay 1.3.13 - 1.3.6] 対応 OS:
- Windows 11
/10 /8.1 /8 /7 /Vista /XP /2000 /ME /98 /95 - [BMSE 動作環境と共通] 別途必要なファイル:
-
Visual Basic 6.0 SP6 ランタイム (MSVBVM60.DLL)
COMDLG32.OCX
- BMSE が導入済みなら、これら Visual Basic 6.0 ランタイムの導入は不要です。
- [Windows 11
/10 /8.1 /8 /7 /Vista] 別途必要なファイル: - [uBMplay 1.5.2 - 1.5.0] 別途必要なファイル:
-
Visual C++ 2010 ランタイム (x86) (msvcr100.dll)
- これがないと音声が鳴りません。
- [uBMplay 1.5.2 - 1.5.0] 2017年9月18日以前に導入済みの場合:
-
公式サイトから
image.dll
20170913 版を確保し、古いimage.dll
を最新版のそれに差し替えてください。- これが古いと透過 PNG が正しく描画されないうえ、減色された透過 PNG によって uBMplay が強制終了する可能性があります。
- [Windows 98SE
/98 /95] 別途必要なファイル: -
DirectX (7.0 以上) ランタイム
-
【ファイル名を指定して実行】に dxdiag と入力してエンターを押してください。診断結果が「DirectX バージョン: 7.0 (4
.07 .00 .0700)」よりも古い場合は、 DirectX 7.0 以上を別途導入してください。 - Windows 2000
/ME 以降は、古い DirectX の導入は不要です。 Windows 2000 には DirectX 7.0 が、 Windows ME 以降には DirectX 7.1 以上が標準搭載されています。 「自分の環境にインストール済みの DirectX」よりも古いバージョンの DirectX をインストールしないでください。
Windows NT 4.0 には DirectX 7.0 以上をインストールできません。
-
uBMplay の導入 (簡単に済ませたい場合)
UCN-Soft からダウンロードした ubmplay_152.zip を展開し、
- 画像は uBMplay_146b.zip のファイル構成ですが、他のバージョンでも同じ方法が使えます。
- BMSE 側の readme.txt を上書きしたくない場合は、
BMSE /uBMplay のどちらかの readme.txt を適当にリネームしてからファイルを移動してください。
BMSE から uBMplay が呼び出せるかどうか確認しておきましょう。
のどれかを左クリックして uBMplay が起動すれば大丈夫です。
- 呼び出せても、環境によっては正常に再生できないケースもあるようです。動作が思わしくない場合は本頁末尾を参照してみてください。
BMS Viewer
とりあえず使えればいいという方は、この先を読み進む必要はありません。
BMSE と uBMplay を別々のフォルダに置く場合
展開した ubmplay フォルダを任意の場所に置き、
【外部ビューワ → ビューワの設定】を左クリックして設定ウィンドウを開きます。
1) リストから uBMplay を選択します。
2) 実行ファイルのパス の欄に、
- 3) 【OK】を左クリックして、このウィンドウを閉じます。
- 【OK】から閉じたときのみ、変更した設定が bmse_viewer.ini に反映されます。
【引数】は通常は特に変更する必要はありません。
【参照】はパスが分からない、もしくは入力が面倒な場合に左クリックします。
BMS Viewer
『実行ファイルのパス』の補足
【参照】から入力される「コンピュータの先頭からのパス」以外に、
- 下位に置いた実行ファイルを参照する例:
-
この場合、実行ファイルのパスは【
ubmplay
】。\uBMplay.exe - 上位の階層を経由する例:
-
この場合、実行ファイルのパスは【
..
】。\ubmplay \uBMplay.exe 『
..
』(ピリオド 2 個) は「1 階層上位のディレクトリ」を示します。
コマンドライン引数
引数によって uBMplay の起動オプションを指定できます。
BMSE の特殊引数 <measure>
を任意の小節番号に変更すると、現在の小節位置ではなく、指定した小節から譜面を再生します。
BMSE の特殊引数 <filename>
を任意の譜面のパス名に変更すると、現在編集中の譜面ではなく、指定した譜面を再生します。
スペースを含むパスは全体をダブルクオートで括る必要があります。例:
-P -N<measure> ".. \Sound Square \SS_yuki_usagi.bms"
uBMplay の再生引数 -P
を -SP
に変更すると単曲再生モードになり、譜面再生を完了すると同時に uBMplay が終了します。
uBMplay の停止引数 -S
を -Q
に変更すると、
uBMplay の再生引数に -FR
を追加すると、
- BMSE 上で編集中の譜面を「再生」する。
- 「再生を停止」する (引数は
-S
)。 - uBMplay を待機させたまま、編集中の譜面の定義済み音声を別のファイルに差し替える。
- 待機状態の uBMplay に対して再び譜面を「再生」させる。
- 引数が “
-P -N0 <filename>
” の場合: - メモリに読み込み済みの「差し替え前の旧音声」が再生されます。
- 引数が “
-FR -P -N0 <filename>
” の場合: - 「差し替え後の新音声」が新たにメモリに読み込まれ再生されます。
-FR
オプションを付加すると、通常は不必要に読み込み時間がかかります。しかし音周りの調整中など、再読み込みされるほうが便利な状況もあります。心当たりがある方は用途に応じて適宜 -FR
オプションを付け外しするとよいでしょう。
uBMplay への起動オプション設定の一例
-
-SP -N1 <filename>
#000
を無視して#001
から再生-
-SP -N999 <filename>
- 譜面の最終小節のみ再生 ()
-
-Q
-SP
と組み合わせることにより、「再生時以外は必ず閉じる」
- 再生開始位置に指定した小節から以降にオブジェクトが存在しなかった場合、
uBMplay はオブジェクトが存在するうち最後尾の小節のみを再生します。 - ちなみに BMS Viewer に対して同じ引数 “
-SP -N999 <filename>
” を指定すると、「現在位置から再生」時に、譜面を最初から再生します。 - 「停止」の引数を “
-P -N1 <filename>
” などと指定しても、再生時間が変な表示になるだけで他には特に何も起こりません。
uBMplay のコマンドライン引数一覧
コマンド | 内容 |
---|---|
-N[0-999] |
指定した小節から再生開始 |
-P |
再生を開始 (GDAC2 では省略不可能) |
-S |
停止 |
-Q |
終了 |
-SP |
再生終了と同時に uBMplay を終了 (v1.4.3 以降) |
-FR |
常に再読み込みを行う (v1.5.0 以降) |
これら以外 | 無視されます |
uBMplay スイッチング
- uBMplay のショートカットを作成し、そのプロパティを開く
- “リンク先” のパス末尾から、半角スペース区切りで引数を記述 (指定例)
- このショートカットにドロップした譜面には、このオプションが適用される
起動オプションを変更したショートカットを何種類か [送る] やランチャなどに登録しておけば、ドロップ先によって挙動を選ぶことができます。通常モードと単曲再生モードと特定譜面再生モードを使い分ける、などの用途に利用できます。
iBMSC /μBMSC の注意点
iBMSC または μBMSC でビューワを設定する場合、特殊引数 <filename>
は二重引用符で括る必要があります。たとえば uBMplay であれば、以下のように引数が指定されなければなりません。
Items | Arguments |
---|---|
Play from beginning | -P -N0 "<filename>" |
Play from current measure | -P -N<measure> "<filename>" |
Stop | -S |
<filename>
を二重引用符で括らなかった場合、
必要なら PMS 用テーマを導入する
通常版 uBMplay で不可能と思われていた某 Pop’n 型 9 ボタン表示が、以下の手順によって可能になります。
- UCN-Soft から uBMplay 10th Anniversary Special Premium Edition をダウンロードして、通常版とは別の場所に展開します。
- 特別版 uBMplay の image フォルダ内の skin_04
.png をコピーします。 - 通常版 uBMplay の image フォルダ内に skin_04
.png を貼り付けます。 - 【image
\skin_04 .png】 が存在する場合に限り、起動中の uBMplay に対して 【8】 キーを何度か押すことで、外観を切り替えることができます。
- PMS 以外のフォーマットにも、某 Pop’n 型 9 ボタン表示を適用できます。
- 外観の切り替えは自動では行われません。譜面形式に合わせて自動的に切り替わる外観をお望みなら mBMplay をお試しください。
- この外観は初代ナナシグルーヴに由来しています。初代ナナシグルーヴのスキンを担当された方といえば……
ビューワが起動しない、または正常に動作しない場合
主な原因としては以下などが考えられます。
- 必要な動作環境を満たしていない:
-
正しいバージョンの Visual Basic 6 Service Pack 6 ランタイム、
Visual C++ 2010 ランタイム (x86)、 dx7vb.dll が揃っているかどうか確認してください。 CPU、ビデオカード、メモリのスペックもそれなりに必要です。 オーディオドライバが存在しないかもしくは正しく認識されていない状態で uBMplay を起動すると、ランタイムエラーが発生します。
【画面の色】が 4-bit (16 色) またはそれ以下に設定された環境で uBMplay を起動すると、応答しません。
- uBMplay のディレクトリ構成が正しくない:
-
たとえば uBMplay は、実行ファイル単独では正常に動作しません。
uBMplay.exe と付随ファイル群は同じ階層に置く必要があります。
uBMplay 配布時のディレクトリ構成を変えないでください。 - BMS のディレクトリ構成が正しくない:
-
一般的な BMS は、譜面ファイル単独では正常に再生されません。
uBMplay で普通にプレビューできる BMS があるとします。このフォルダから譜面以外のファイルを削除すると、
uBMplay も含むあらゆる BMS 関連ソフトウェアで音声や映像が再生されません。 譜面ファイルをメモ帳で開くと見つかる “
#WAV01 Awav01.wav
” などの記述は、「譜面と同じフォルダにある “Awav01.wav” を、音声として参照する宣言」です。 “ #WAV01 .\Awav01.wav
” と等価です。音声や映像が譜面からの相対的なパスとして定義される例もいくつかあります。
“Brrrreeed Cicadididi” のダウンロードは非公式パッケージから行えます。 - 何らかの原因でファイルが破損している:
-
HDD
/SSD の寿命、ウィルス感染、ダウンロード時の事故、アンチウィルスソフトの誤診によるファイル隔離などが考えられます。疑わしい場合は、各症状を対策してから再度ダウンロードしてみてください。 uBMplay 1.3.7 から 1.5.0 までは実行ファイルが UPX 圧縮されており、これが原因で一部のアンチウィルスソフトに誤検出される事例もあったようです。可能なら uBMplay 1.5.1 以降をお使いください。
- DLL hell に陥っている:
-
「バージョンもリリース時期もまちまち」な「Visual Basic ランタイムパッケージ」を「複数」導入すると、競合して不具合が発生しがちです。疑わしい場合は、導入したランタイムパッケージをいったんすべてアンインストールし、必要最小限のなるべく新しいランタイムのみを入れ直してみてください。
-
readme.txt に記載されていたランタイムパッケージをすべて同時にインストールし、挙句「ウィンドウに何も描画されない!!」などと喚いても、それは自業自得というものです。
(ヘルプ筆者の体験談)
-
- 実行ファイルのパスを正しく指定していない:
-
パスを設定した後で、
BMSE やビューワの置き場所・フォルダ名・ファイル名を変更しませんでしたか? ディレクトリ構成を変更した場合は、
【外部ビューワ → ビューワの設定】から『実行ファイルのパス』を確認し、必要なら再度指定し直してください。 誰かにひねくれたパスを設定された可能性もありうるので、一応ご確認を。
- ビューワの引数を正しく指定していない:
-
通常は引数を初期設定から変更する必要はありません。
初期設定値を忘れて元に戻せなくなった場合は、
BMSE をいったん閉じ、 bmse_viewer.ini を削除してください。ビューワ設定が初期化されます。 引数の詳細は各ビューワのドキュメントなどを参照してください。
-
iBMSC または μBMSC の場合、
<filename>
は二重引用符で括って"<filename>"
と指定しなければなりません。
-
- 【Internet Explorer 8】 “制限付きサイト” に登録アイテムが多すぎる:
-
IE8 RC 版から IE8 正式版に更新されたタイミングで、
BMSE からのビューワ呼び出し速度が極端に低下する事例が報告されるようになりました。 BMSE に限らず、 Windows の API を利用するアプリケーション全般で呼び出し速度が低下します (エクスプローラ、 Windows Media Player 等)。 IE8 のメニュー【ツール → インターネット オプション → “セキュリティ” タブ → 制限付きサイト】に膨大な登録がある場合に、この現象が発生するようです。
Spybot、
SpywareBlaster、 ZonedOut & IE-SPYADなどの免疫ソフトを利用している場合、登録が数万から数十万件に達することもあるので、IE8 の使用者はこれらの設定を見直してください。 免疫を正しい手順で解除するなり、レジストリをいじるなりして再設定すれば解決できます (参考)。
- uBMplay 上では音割れしない BMS が、
LR2 などで再生すると割れる: -
BMS の音量が大きすぎる可能性があります。
(ただし、 BMS における音割れの良し悪しはまた別の問題です) uBMplay が DirectX によって音声を再生する一方で、
LR2 は ASIO という「Windows のソフトウェアミキサーを経由しない発音方式」を選択できます。これにより聴こえ方が変わる場合があります。 Windows Vista 以降の uBMplay には、
Windows のソフトウェアミキサーを介してピークリミッターが適用されます。 LR2 の WASAPI は共有モードなので、
Windows Vista 以降の DirectSound と同様に、 Windows のリミッターが適用されます。 これらの場合、たとえ BMS がもともと音割れするように組まれていたとしても、
「割れないように Windows によって加工された音」が出力される可能性があります。 uBMplay や non-ASIO LR2 を音声のモニターとして信頼しないでください。 おそらくこの問題を抑制するために、
uBMplay は v1.5.0 において「デフォルトボリュームを 50% に変更」しました。 ubm.ini 内 Volume
キーがそれです (1.4.6 以前の既定値は100
でした)。charatbeatHDX VIOLET (v1.00 以降) や BMIIDXView2015 (v3.00 以降) では、
「Windows のソフトウェアミキサーを経由しない発音方式」である WASAPI 排他モードを選択できます。ただし、いくつかのエフェクトも適用されます。 ASIO や WASAPI 排他モードで波形が破綻しないように音量調整された BMS は、一般的な BMS に比べるとかなり控えめに鳴るでしょう。
BMS の音量問題に関する素晴らしい研究があります。 - 音声の解像度が高すぎる:
-
全音声を 192000 Hz・
16-bit・ 2 ch の Ogg Vorbis 形式で揃えた BMS 作品が2019年末に公開されました。これはいわゆるハイレゾリューションオーディオの一形式で、通常の BMS の 4 倍以上の解像度で音声が標本化されています。この音質には議論の余地があります。参考までに: - この BMS を uBMplay が演奏すると、再生速度 (Real HS) を
0.50
以上に設定することができません。 - 48000 Hz・
16-bit・ 2 ch を超える音声を、 LR2 はダウンサンプリングするそうです。 - 44100 Hz・
16-bit でない音声を、 beatoraja は 44100 Hz・ 16-bit にデコードします。
将来的にはハイレゾリューション BMS もありうるのかもしれません。
- この BMS を uBMplay が演奏すると、再生速度 (Real HS) を
- 音声の量子化ビット数が大きすぎる:
-
uBMplay が鳴らせる WAV 形式の音声ファイルの量子化ビット数は PCM 8-bit および 16-bit です。
PCM 24-bit や 16-bit float や 32-bit float の WAV が使われた BMS の作例はありますし、作曲界隈では 64-bit float の音声も普通に使われているようですが、それらを uBMplay は正しく鳴らせないでしょう。
というより前述のハイレゾリューション音声に関しても同じことがいえますが、これらを正しく鳴らせる BMS 関連ソフトウェアはほとんど存在しないのが現状です。
- charatbeatHDX は v1.16 で「24-bit、
32-bit (int /float)、 64-bit (double) の PCM に暫定対応」しました。これらは 16-bit に変換して再生されます。
- charatbeatHDX は v1.16 で「24-bit、
- 音声のサイズが大きすぎる:
-
uBMplay が読み込める WAV 形式の音声ファイルの最大サイズは、
1 ファイルにつき 65500 KiB 前後であるようです。 - 【Windows 11
/10 /8.1 /8】 スクリーンセーバーが発動した: -
もしかするとこれは OS 側ではなくグラフィックス・ドライバやグラフィックボードとの相性の問題かもしれませんが、
uBMplay 実行中にスクリーンセーバーが発動すると uBMplay の描画が一切更新されなくなります。 uBMplay を再起動すれば直ります。 ヘルプ著者は暫定的にマウスふるふるなどの使用を検討してはいますが、根本的な解決はできていません。