PolyphoneでSoundFontを作ろう

Polyphone とは?

PolyphoneVienaのようなサウンドフォント編集アプリの一つで、OSSかつクロスプラットフォームであるアプリであるのが大きな特長です。

今回はこちらのアプリを使用して一つのサウンドフォントを作っていきます。

注意

以前までこの記事はあまりにも内容が不親切な割にアクセス数が多い記事でした。また、アプリのアップデートに従って旧ページのスクリーンショットも古くなってしまって、ひいては募り募る罪悪感に身をさいなまれる事になってしまったので、現在リニューアルを行っています

この記事ではサウンドフォントを作成するという作業の大まかな流れを解説しています。個々の事例や、細かい設定、編集方法などについてはこちらの記事があるので、よろしければご覧ください。

また、本記事作成時のPolyphoneのバージョンは2.2.0です。

手順1. wav ファイルを用意する

.wavファイルを用意します。筆者が確認できたPolyphoneが対応する形式は以下の通りです。

Polyphoneが対応する形式
ビット数 対応
16 bit Integer ⭕ 対応
24 bit Integer ⭕ 対応
32 bit Float ❌ 未対応

手順2. New soundfont を選択

New soundfont をクリックすることで、SoundFontを一から作成することができます。

New soundfont をクリックしてサウンドフォントを作成する作業を始めましょう。

手順3. サウンドフォントに関する情報を入力

左側のメニューにあるGeneralから、サウンドフォントに関する情報を入力しましょう。

ここに入力する値は基本任意ですが、表示するソフトなどもあるので入力しておきます。

ここでは、SoundFontの名前や作者名・作成日・ライセンスなどを入力します。
ここでは、SoundFontの名前や作者名・作成日・ライセンスなどを入力します。

サンプルが 24 bit Integer の場合の時の注意点

サンプルが 24 bit Integer の場合は Samples から 24 bits を選択するようにしてください。

取り込むサンプルが 24 bit Integer の場合はSamples から24 bitsを選択するようにしないと、サンプルの取り込み時に自動的にサンプルが16bitのサンプルに変換されてしまうので注意してください。

手順4. サンプルを追加

追加するサンプルは、複数選択することもできます。
追加するサンプルは、複数選択することもできます。

まずは、音符マークをクリックして、手順1で用意したサンプルを追加します。ファイルウィンドウが出現しますが、サンプルを複数選択することもできます

一通りサンプルの追加が終わると、左側のメニューにサンプルが表示されます
一通りサンプルの追加が終わると、左側のメニューにサンプルが表示されます

一通り追加が終わると、上のスクリーンショットのような状態になります。この画面で表示されている Information には、サウンドフォントの作成に役立つ情報も表示されているので、意味を確認しておきましょう。

Informationで表示される値について
用語 意味 単位、値など
Size 追加したサンプルの長さ サンプル数 – 秒
Loop ループ地点
ループ設定を選択すると入力できるようになります
サンプル(始点) – サンプル(終点)
Sample Rate 追加したサンプルのサンプリング周波数
※1秒間に何個のサンプル地点があるかを示しています
Hz (ヘルツ)
Type 選択しているサンプルの種類 mono, left, right, link の4つ
Link 選択しているサンプルとリンクしているサンプル
ステレオサンプルの場合は、もう1chのサンプルが表示されます
なし

手順5. インストゥルメントを追加

次に、追加したサンプルを利用する楽器を作っていきます。この楽器をPolyphoneでは「Instrument (インストゥルメント)」と呼びます。次に追加したサンプルをその中に挟み込む必要があります。この作業をPolyphoneでは「Bind(バインド)」と呼んでいます。

ポイント

インストゥルメントは、バラバラのサンプルを用途ごとにまとめるような役割がある。

まずは、アイコンをクリックして、インストゥルメントを作成しましょう。クリックするとインストゥルメントの名前を尋ねるダイアログが表示されるので、適当な名前を入力しましょう。

適当なinstrumentの名前を入力します。

新しくインストゥルメント(くどくてすみません)を作成したら、そのインストゥルメント内で使用する予定のあるサンプルを選択し、右クリック+Bind to ...をクリックします。

インストゥルメント内で使用する予定のあるサンプルを選択し、右クリック+Bind to ...を選択します。
インストゥルメント内で使用する予定のあるサンプルを選択し、右クリック+Bind to …を選択します。

すると、バインド先を尋ねるウィンドウが出現するので、ここでは Instrument Name にバインドしていきます。

Bind先を尋ねるウィンドウが出現するので、設定します(ここでは Instrument Name にバインドします)。
バインド先を尋ねるウィンドウが出現するので、設定します。

手順6. インストゥルメントを編集

インストゥルメント内のパラメータを入力できる画面に遷移します
インストゥルメント内のパラメータを入力できる画面に遷移します

すると、このような編集画面に移行します。ここでも右側画面の用語がややこしいので私が必須であると思った値のみ説明を入れることにしました。これらの値さえあれば完璧に動くというわけではありません

ここで取り扱っていない数値については他のサウンドフォントでどのように音に関与するかをある程度確かめることができるので、自分で調べてみてください。

インストゥルメント編集画面の解説
用語 意味 範囲 設定例
Key Range 選択したサンプルを使う鍵盤の範囲を数字で指定する。 (C5は60に相当する)
※これは既定の値で、この値はPolyphoneの設定で C5がC5として表示されるような設定にも変更することができます。
音程表示の方法、また中央の「ド」の音程は適宜設定を変更することができます。
0 ~ 127 64-67
Velocity Range 選択したサンプルを使うベロシティの範囲を数字で指定する。
ここで強弱によってサンプルを使い分けたりすることも可能です。
0 ~ 127 0-127
Pan パンの数値をパーセントで指定する。
ステレオサンプルを読み込んでいる場合は-50%(L) と 50% (R) のそれぞれ2つに割り振られています。
-50 ~ 50 0-127
Root 元サンプルの音程を数字で指定する。
真面目に設定しないと完全に音がずれることになって面倒なことになります。
0 ~ 127 64
Vol env release サンプルのリリース値を秒単位で入力する。小数点の入力可能。
※0に設定するか、何も設定しないとリリースが完全に切れます。
? 1.2

手順7. プリセットを作成

手順6で作ったインストゥルメントを基に、プリセットを作っていきます。このプリセットは複数のインストゥルメントを含めて音を同時に鳴らすこともできるし、ベロシティやMIDIノートの設定次第で特定のインストゥルメントを鳴らすということもできます。

ポイント

プリセットでは、複数のインストゥルメントをまとめることができる。

アイコンをクリックして、プリセットを作成します。クリックすると手順5で出てきたものと同じような方法でプリセットの名前を尋ねるダイアログが表示されるので、適当な名前を入力しましょう。

また、ここでもインストゥルメントをプリセットにバインドするという作業があります。手順についても手順5で扱ったものとほとんど差異がないのでここでは省きます。

注意

インストゥルメントを設定する画面と違って、ここでの設定する値は倍率指定となっているものがあります。

さて、プリセット設定画面とインストゥルメント設定画面との間で共通項目である値が、一方では倍率指定で、もう一方が数値指定であるとしましょう。

この場合、インストゥルメント設定画面ですでに3と入力している値があり、さらにもう一方のプリセット設定画面で2と入力している場合、この項目で実際に適用される値は 6となります。

これが気を付けなければならない点であると同時に、同じインストゥルメントを多くのプリセットで上手に使いまわせるという利点でもあります。上手に活用していきたいですね。

手順7. サウンドフォントを書き出す

すべての作業が終わったら、アイコンをクリックしてサウンドフォントを保存しましょう。

終わり

以上のようにして作成したサウンドフォントは、BassMidiVSTiなどのオーディオプラグイン上で使用したり、OmniMIDIなどの仮想MIDIドライバの音源などにするほか、様々な方法で使用することができます。よきDTMライフを。