どうも。
キャラいじってていろいろと発見したことがあるんで
報告記事を書くこととします。
俗に言うWinMUGENにおけるバグの話も含まれています。
記事タイトルの通り、
MUGENキャラクターの音声のボリューム調整についてのお話です。
1.キャラ音声の音量調整のしかたMUGENの音量調整の方法は4つほどあります。
・mugen.cfgにてWavVolumeとMidiVolumeを変更する
・SNDファイルに収められている音声データの音圧を変更する
・キャラクターCNSの [Data] のVolumeを変更する
・キャラクターの各PlaySndのVolumeパラメーターを変更する
この4つのうち、キャラクター個別の音量を調整できるのは最初のひとつを除く3つ。
そして、音声編集加工用のソフトウェアを動かせる環境や知識が無くても可能なものは
うしろ2つとなるでしょう。
この記事ではその2つの挙動について書いていきます。
2.キャラCNSの [Data] のVolumeまず重要な話として、
キャラクターのCNSの先頭部分、
[Data] で調整できるVolumeは
【
MUGEN CNS WIKI CHAOS】
でも確認できるように、-255~+255の間で調整が可能です。
結論から言うと、これがそれぞれのキャラクターが持つ
音量に対する限度値の幅となります。
音屋さん的な視点から見れば、
ここのVolumeの値は基本的に 0 にしておくのが安定だと思われます。
……が、それはまた別の話。
限度……つまり、この範囲内に収まるようにしか音量調整はできません。
3.ステートコントローラー 【PlaySnd】 のVolume前述したように、DataのVolumeを変更する以外にも
PlaySndのステートコントローラーのVolumeを変更することでも
キャラの音量の調整は可能です。
可能なんですが、この両者の限度値は完全に共有されています。
たとえば、 [Data] のVolumeが +255 のときは、
PlaySndのVolumeの0より上は機能しなくなります。
(
0から +255まですべて同じ音量に揃えられる)
逆に、 [Data] のVolumeが -255 のときも、
PlaySndのVolumeの0より下は機能しなくなります。
(無音となるため)数字の見方を変えれば、
MUGENの
キャラ音声の音量は完全な
無音をゼロとして、510段階で調整が可能ということになります。
4. 【PlaySnd】 のあきらかなバグさて、MUGENがつつがなく動作さえしていれば、
ここまでの話で完了できるんですけれども……
少なくともWinMUGENのPlaySndにはバグがあります。
簡単に言えば、
Loop = 1 になっていると
全てのVolumeパラメーターが無視されるようになります。
つまり、 [Data] のVolumeが -255、PlaySndのVolumeも -255となっていても、
そのPlaySndにLoop = 1がついていると音が鳴ってしまいます。
もちろん、そのLoop = 1のついた音は音量を上げることもできません。
これのせいでMUGENの音量の変わりかたを理解するのに
無駄に時間を取られてしまいました……
Loop機能は非常に便利なんですが、
このバグの存在ゆえに、Loopさせたい音については
SNDファイルの時点でちょうどいい音量にしておく必要が生じてしまっています。
5.Volumeの基準値が 0 であるべきだと思う理由私はいちおう音の扱いについて
専門の勉強をした人間の端くれに相当するんですが、
その私の見地からすると、キャラCNSの [Data] のVolumeの値は、
手持ちのキャラのなかで特別そのキャラだけ音量が小さいなどの理由が無い限り、
0 にしておくようにするのが基本だと思います。
これはこの記事で言ってきたように、
MUGENキャラの音量の最大値は +255であり、
最低値が -255であることが理由になります。
最低値については無音になってしまうのでわかりやすいとして、
最大値についてなんですが……
これはよく 『音割れ』 『クリップノイズ』
などと言われる現象の回避のために設けられている数値になっています。
ミキシングコンソールのボリュームインジケーターにて赤色で示される数値です。
デジタル音声機器の場合、
このラインを飛び越えた音が通過すると機器の保護のために自動的に
不快なノイズが付与されます。
(クリップノイズといいます)
アナログ機器の場合は自動的な機器の保護機能がないので
ノイズは付与されませんが、どっちみち限界値を超えた音圧は
処理しきれず、超過部分の音波形が削り取られ、
結果的に音が変形します。
(これをわざとやるのがオーバードライブ、ディストーション、ファズなどのエフェクター)
当然、限界以上の音量(電気信号)を流し込まれているので
機器は傷みます。
そういう感じなんで、MUGENにも 『音量の最大値』 が
用意されているんでしょう。
音量には最低値と最大値があるわけですが、
MUGENのPlaySndのVolumeは
-255 ~ 0 ~ +255
という仕様なので、
たとえばDataのほうのVolumeが255に設定されていると、
上でも述べたように0から上のパラメータが無駄になってしまいます。
無駄があるというのはじつに勿体ないことなので、
個人的にはDataのほうのVolumeは基本的に0にしておいて、
各PlaySndのVolumeパラメータも極力0付近にしておいて
ちょうどいいようにSNDファイルは作るべきだと言いたい。
まあ、バグがある以外の部分はMUGENのPlaySndは優秀なので、
例えばDataのVolumeが -255、PlaySndのVolumeが +510なら、
ちゃんとDataのVolumeが0、PlaySndのVolumeが +255のときと
同じように鳴ってくれます。
なのでべつに細かい考え方する必要もないとは思うんですけどねー。
長くなりましたが、とくにLoop機能のバグについてはわりと面倒くさいんで、
キャラ作る人なら知っておいて損はないんじゃないかな!