循環車線 > Bve Trainsim Add-on > 車両の作り方 > 1. 音 > 1.3. モーター音を組む

1.3. モーター音を組む

モーター音が各楽器の音だとすると、どのタイミングでどの音程でどの音を鳴らすかの「楽譜」を作るのが今回の作業です。

今回は説明しやすいように非VVVFの車両を作ってみます。

大原則:音程(周波数)は、速度と正比例する

この大原則がもっとも重要です。ここを誤ると音程が迷子になります。
すべてのグラフは原点(0,0)から始まり、速度と周波数が正比例の関係になります。

これは221系のモーター音のグラフを BVE Workshop さんの Motornoise Audition で表示したグラフですが、点線を重ねてみると、音程のグラフはすべて原点(0,0)からの正比例となっていることがおわかりいただけると思います。

なお、これはVVVF制御の車両でも同様です。非同期音以外は速度と比例します。

Run音とモーター音の音程を合わせる

前のページで、「Run音=時速90kmの音程」というお話をしました。
つまり時速90kmの音程がわかっているので、モーター音もそこから合わせていきます。

今回は14種類のモーター音を用意しました(Motor0は発車時のガコッという衝動音です)。


ここでは再生速度を自由に変えながら再生できるソフトを使います。私は GoldWave の無料版を使っています。

まず、Run音(時速90kmの音)を再生します。
次に、用意したモーター音の中で最も高い速度域の音を、この時速90kmの音に合わせていきます。
今回は低速域から高速域に小さい順に番号を振りましたので、Motor14.wavが一番高速域の音です。
Motor14の再生速度を変えながらRun音と同時に再生すると、Motor14を0.965倍のスピードで再生したときに音程が一致しました。ということは、Motor14は 90 ÷ 0.965 ≒ 93.26(km/h) のときに再生速度が100%となる計算になります。
powerfreq.csv の記述方法ですが、Motor14は速度が0のときに再生速度が0になり、速度が90÷0.965のときに再生速度が1になるので、以下画像のような表になります。

モーター音の音程を、高い速度域から順番に合わせていく

つづいてMotor14の音程と、1つ下の速度域であるMotor13の音程を合わせます。
Motor14の再生速度を1倍にして、Motor13の再生速度を変えながら同時に再生したところ、Motor13を1.25倍のスピードで再生したときに音程が一致しました。ということは、Motor13は 93.26 ÷ 1.25 ≒ 74.61(km/h) のときに再生速度が100%となる計算になります。
powerfreq.csv の記述方法ですが、Motor13は速度が0のときに再生速度が0になり、速度が93.26÷1.25のときに再生速度が1になるので、以下画像のような表になります。


同じ作業をMotor1まで繰り返したところ、このようになりました。

小数の桁数が多すぎてもあまり意味がないため、A列は小数第三位を四捨五入しています。
また、Motor0(B列)は衝撃音で常に再生速度が1倍となるため、時速0kmでの再生速度も1にしてありますが、それ以外はすべて0で統一しています。
先ほど述べたように、音程は速度と正比例し、グラフがすべて原点(時速0kmで再生速度0)から始まることを踏まると、かなり簡単にpowerfreq.csvを作ることができます。

音量を合わせる

音程の次に、音量のグラフを作ります。
音量の調整も、音程に負けないくらいかなり重要です。

まず、powerfreq.csvを、そのままpowervol.csvにコピーします。

再生速度が1倍になる速度が、それぞれのmotor**.wavの一番おいしい速度・おいしい音程であり、そこで音量が最大になるとちょうどいいため、「1」を活かします。
つづいて、前後のmotor**の音量が「1」になるところで、他のmotor**は「0」になるように、「0」で挟みます。
ことばで説明すると難しいのですが、つまりこういうことです。

Motor1は再生速度が1倍になる時速16.45kmで音量が最大になり、そこから次のMotor2の音量が上がり始め、Motor1の音量は逆に下がり始めます。そしてMotor2の音量が最大になるとき(時速21.55km)にはMotor1の音量が0になり、つづいてMotor3の音量が上がり始めます。こんどはMotor2の音量が下がり始め、Motor3の音量が最大になるとMotor2の音量は0になり、次にMotor4の音量が上がり始め、Motor3の音量は下がり始めます。
このように、音量の大小を交互に繰り返す「クロスフェード」を行うことで、音の切り替わりを自然にします。

BVE Workshop さんの Motornoise Audition で表示するとこのようなグラフになります。


実際に再生してみます。

いかがでしょうか。
モーター音の変わり目で音量が小さくなり、頼りない感じになってしまっていることに気づきますでしょうか。
先ほどの「クロスフェード」を行うと、本来はMotor1が音量1のときにMotor2が音量0、Motor1が音量0.8のときにMotor2が音量0.2、Motor1が音量0.5のときにMotor2が音量0.5…といった具合で、2つの音の音量の合計は常に変わらないはずなのですが、実際は足した音量は小さくなってしまいます。

クロスフェードの盲点:音量0.5と音量0.5の合計は音量1.0にならない

以下のnoteの記事に詳しく書かれていますが、音量0.5と音量0.5の合計は音量1.0になりません。
サウンドをクロスフェードする際の音量トラップについて|株式会社グリモア
実際に聞こえる音量は、2乗の関係になるため、音量0.7と音量0.7にするとちょうどよくなります(0.7×0.7=0.49で0.49+0.49)。
なので、各モーター音の音量を 0 → 0.7 → 1 → 0.7 → 0 と変化するように設定し、0.7と0.7が重なるようにすればちょうどよくなるはずです。これを反映させてみます。

まず、このように1行ずつ空行を挿入します。


つづいて、音量0と音量1の間に0.7を入力します。そして、A列(速度)の空行には、上の行と下の行を足して2で割った値が入るように式を入力します。

これで音量が0.7と0.7のところで互いの音が重なるようになりました。
こちらも実際に Motornoise Audition で再生してみます。

いかがでしょうか。音が小さくなったり大きくなったりせず、安定して音が出せていると思います。
あとは Motornoise Audition で繰り返しながら powervol.csv の値を調整し、実車のイメージに近づけていく作業を繰り返します。
ここでどれだけ実車の音をよく観察し、比較し、調整できるかによって車両データの出来栄えが大きく変わります。できたできたと早まらずに、時間をかけて調整します。
また、自分が録音した編成の音だけでなく、YouTubeや走行音サイトに上がっている他の編成・他の時代の録音とも聞き比べてみることをおすすめします。自分の中でのイメージと、実際の電車の音には乖離があることも往々にしてあるからです。

加速と減速の音程は原則同じ

加速時と減速時の音程は、基本的に同じです。
抵抗制御やチョッパ制御などの電車であれば、加速時も減速時もpowerfreqは共用で問題ないと思います。
VVVF車であっても、変調のタイミング(BVEで言えば音量)や音色が異なるだけのお話で、音程に関しては基本的に同じです。
加速と減速で音程がまったく異なる場合、どちらの組み方が間違っていると考えていいと思います。

引き算の美学

モーター音を作っていると、あの音もこの音もとどんどん音を重ねていきたくなるのですが、忘れないでいただきたいのが「引き算の美学」です。
音を重ねすぎるとぼてっとしたものができあがります。どの音を強調したかったのか自分でもよくわからない作品に仕上がります。
実車の音とよく聞き比べてみると、思い浮かんでいる「あの音」はそんなに始終鳴っているものではなく、あくまでアクセントであることに気がつきます。
全体の音量バランスも大事です。モーター音があまり大きくなりすぎるとボーカルばかりが目立ったカラオケみたいになります。実車のモーター音は意外に小さかったりします。バランスをしっかり整えます。


戻る

Copyright © 2001-2025 shallow-field