2代目 干瓢うぉっち

サウンドエンジニア/クリエータ観点の話を中心にダラダラ覚え書きするブログ

FL Stuidoで外部接続のハードシンセを鳴らす手順

FL Studio上でハードシンセをソフトシンセのように扱うための話。
どこかの質問箱で、表題のような質問に対してFLはハードを動かすことを想定していない、というような回答がベストアンサーに選ばれているのを見て、普通に動かせるけどねえ・・と思いつつ、記事を残しておく。

まず前提として、下記2つが揃っていることが条件となる。
①PCからハードシンセが操作可能な状態になっている(MIDI or USB)
②ハードシンセから出た音をPCで録音可能な状態になっている

Wantで、下記があると良い。
③シンセをエディットするためのエディターソフト

FL Studioでできないことは下記。
x システムエクスクルーシブメッセージ(SysEX)を送受信できない
x シンセ専用の音色表を表示させることはできない

FL StudioMIDI Out先にシンセを登録

【Option】->【MIDI
Output欄に、接続されている「MIDIバイス」の一覧が表示される。使用したいMIDIバイスに任意のPort番号を指定する。

画像では僕が接続している環境の例を示しておく。
USBで認識している場合は、シンセ名を(INTEGRA7 など)。
MIDIインターフェース、またはAudio IFのMIDIコントローラを介して接続している場合は、それぞれを指定(OCTA-CAPTUREなど)。
Port番号はお好みで。僕の場合は、若番のMIDI Port番号は他の用途で多用するため、ハードシンセは100番以降に指定している。

MIDI Outプラグインでハードシンセを鳴らす

Channel trackにMIDI Outプラグインを呼び出す。Portに先程指定したPort番号を指定する。Channelは鳴らしたいMIDIチャンネルの番号を任意に指定しよう。
この状態でピアノロールに何かしら音を置いてみる。問題なければこの時点でハードシンセが反応して音が出る。


ハードシンセの音をFLに入れる(モニターする)

ハードシンセの音は、歌や、生楽器の演奏と同じ。録音可能な状態で音をFLに入れてやる必要がある。

【Option】->【Audio】
ハードシンセの音を入力しているAudio I/Fを指定する。
Playback trackingをMixerに指定する。

ミキサーInputに、ハードシンセの音を入力しているオーディオポートを指定する。この状態で先程と同じようにピアノロールを再生してみれば、ミキサーに音が入る。


あとは普段やってるように、EQやコンプといったポストエフェクトを入れて煮るなり焼くなりどうぞ。

Playback tracking

 外部のハード音源と連携する場合はここは「Mixer」に設定する。

 「Driver」のほうが動作は安定する設定だが、プラグインによる遅延補正がハード音源の音声に対して整合性を取ることができない。使うエフェクタによって都度ハードウェア音源の入力音声の遅延量が変動してしまうので、Driverの設定では外部音源と連携した音声のモニターには使いづらい。

ハードシンセの音を録音してバウンス可能にする

ハードシンセの音は、歌や、生楽器の演奏と同じ(2回目)。つまり波形として存在しないとバウンスしても無音扱いとなる。いろいろやり方があり、僕がやってるやり方を一例として示す。

ミキサーの「Adjust positon of recorded audio」のチェックを外す。
録音時のレイテンシーを補正してくれるものだが、普段は不要なのでチェックを外す。

録音対象のノートをプレイリストにセット、マーカーをちょっと前に設置。

Recボタンを押す。上から2番目の「Audio, into the playlist as an audio clip」を押す。

① Audio into the Edision audio editor/recorder
Edisonで編集してからプレイリストに置きたい場合はこっち。プラグインが新規にアサインされるのと、この段階で編集することなんてほぼないので普段は選ばない。

②Audio, into the playlist as an audio clip
録音波形を直接プレイリストに置く。普段はこっち。


録音される波形のタイミングもぴったり合った状態で波形が出来上がる。あとは煮るなり焼くなりご自由に。この波形はミキサーでエフェクトを通す前の素の波形(つまりハードシンセ出力そのままの波形)になっている点に注意。モニターしていたMIXER番号に再アサインすれば、モニター時聴いていた音と同じになる。

ハードシンセのエディット方法

コントロールチェンジ

冒頭に記載した通り、SysEXの送受信はできないが、コントロールチェンジ等の基本的なパラメータは送ることができる。
MIDI Outによく使うコントロールチェンジを登録しておくと良い。
たとえば、
・CC64 Hold    ・・・ ピアノのホールドペダル
・CC101 RPN_MSB
・CC100 RPN_LSB
・CC6 Data_Entry ・・・ 上記0・0を指定するとベンドレンジ指定

など、ハードに限らず、MIDI規格に則ったソフトのVSTiにも使えるパラメータもあり、あるとすごく重宝する。これをプリセットとして保存しておけば、毎回下準備する必要もない。機会があればこのへんの解説も残すつもり(ほぼMIDI規格の解説になりそうだけど)。

エディターによる音色の変更

基本的にPatchの部分は(none)から触らず、エディターソフトを併用するとよい。エディタはスタンドアロンで動くもの、VSTiとして動くものなど、様々あるのでそちらを使う。

Patchで音色を指定してしまうと、再生するタイミングでプログラムチェンジがFLから送信され、音色が変わってしまうので注意。


FLではGM音色の128音+バンクセレクトの直打ちしか選べないので、ほぼ音色選択は使えない(時間がかかる)と思っていいです。このご時世MIDIインプリやトーンリストと睨めっこしながらパラメーターを打つのは時代に合ってない。

僕がFLで使っているハードウェアの一例。
Roland INTEGRA7 ・・・ VSTiエディタ(正直使いづらい)、有志のスタンドアロン版エディタ
Roland SonicCell ・・・ VSTiエディタ
Roland SD-80 ・・・ スタンドアロンエディタ


ここでネックになるのが、専用のエディタなど代替案の用意が難しいシンセ。
たとえばYAMAHAのMU2000といったXG音源などは、現状エディタが存在しないため、基本的な機能しか制御できないため使用の敷居が高い。シンセ本体側で制御する必要がある。

好きになったクリエータは夭逝するという話

  • この世を去った、大好きなクリエーターたち
  • もっと知りたかった「G.Bruno / Aqualtra」の世界
  • 「G.Bruno / Aqualtra」との再会
  • リエーターがこの世を去っても、作品は生き続ける

f:id:kanpyo:20210329111149j:plain

この世を去った、大好きなクリエーターたち

 いいなぁと思った作品の作者であるアーティスト、クリエータの訃報のニュースを聞く、という機会がよくある。

 パッと思いつくだけでも、

・梅本竜(コンポーザー)
・モンティ オウム(RWBYの生みの親)
近藤喜文耳をすませば 監督)
・G.Bruno / Aqualtra(アーティスト)
・Scatman John(アーティスト)
・Saki Kaskas(コンポーザー)

 などなど、挙げればいろいろ出てくる。

 根拠など無く「たまたま」なのは明白だが、僕が好きになったら死ぬのか!?とさえ感じてしまうほど、そのような結末に巡り逢ってきた。いいなぁ、今何やってるんだろう、からの検索結果は結構堪えるもので、彼らの新たな「作品」をもう観れない、聴けない、と思うと虚しさを感じてしまったりする。

続きを読む

DAWにおけるSMT(HTT)有効無効の話

  • オーディオを処理するとはどういうことか
  • ブツッと切れたら終わり。シビアなオーディオ処理
  • DAWにおいてSMT(HTT:ハイパースレッディング)は害悪か
  • メーカーの問題意識と取り組み
  • CPUの進化=やれることが増える=重くなる=工夫する

オーディオを処理するとはどういうことか

 今回の話に「だからこうだ」というように結論づけるものはないのだけど、言及している記事が見つからなかったので書きなぐっておく。


 オーディオのリアルタイム処理というのは、いわゆるベンチマークソフトでスコアの大小を競う、というような時間制約のない処理とは事情が異なる。

 動画のエンコードや3Dレンダリングのような時間制約のない処理は、8スレッド16スレッド32スレッドと処理を並列化(複数人で分担作業する)することで、プロセッサ全体における時間単位のスループットが上がり、結果的に処理能力が向上するというのは直観的でわかりやすい話だ。

f:id:kanpyo:20210227002347p:plain
AIDA64のCPUベンチマークの例。並列で処理するユニット数、スレッド数が多いほど(クロックも高いほど)スループットは上がりスコアが上昇する。


 対して、DAWやオーディオ機器のCPU、DSPといったデジタルオーディオのリアルタイム処理においては、入力されたデジタル信号を1sampleごとに加工して出力するという処理を連続的かつ、リアルタイムに行う都合上、いわば制限時間のようなものがある。

 どういうことかというと、サンプリング周波数(FS)が48kHzのばあいは単純に1sampleを1/48000秒以内に処理する。0.2msecの処理を1秒間に48000回繰り返してバッファに出力している。遅延しうる要因はいろいろあれど、これが遅延してしまうと0.2msという枠から溢れ、出す音声がなくなってしまって、「ブツッ」とディップが発生して音が切れることになる。フィルタ処理やらリバーブなどの畳み込みやら処理が増えるとさらに計算に要する時間が増え、この枠内での処理時間のマージンは減っていく。

f:id:kanpyo:20210227002434p:plain
▲ 音の時間波形をSampleレベルに拡大したもの


 CPUにはオーディオ処理以外にリソースを食う様々な割り込み処理(OSのカーネルだったり、Chromeでネットを見るだったり未知の割り込み)が発生するから、処理した音声をそのまま出力するようなことはせず、一旦サンプルバッファにためた音声をストリーミング出力するわけだけど、バッファサイズが大きければ当然レイテンシは増え、バッファサイズが小さければ空になるリスクが高くなる。入力に対する遅延を軽減したければバッファサンプル数を減らすことになるが、そうなれば音はブツブツと切れてしまうリスクが高まることになる。リアルタイムオーディオ処理は「いかに途切れさせないか」という細かい制限時間の連続と、バッファのバランスで動いている。

続きを読む

インパルスってなんだ?サウンドクリエータから見たインパルス応答(IR)

  • インパルス信号とは
  • インパルスは全帯域に成分を含む信号のこと
  • TSP信号(SS信号)とインパルス信号
  • インパルス応答(IR)でわかる「環境の特性・性格」
  • インパルス応答で得た特性を畳み込む(Convolute)
  • インパルス応答のIRデータは、「状況の再現」であることに注意

インパルス信号とは

 電磁気学音響工学などの教科書によく書かれている「インパルス信号」。時間幅が0で高さ無限大のパルス信号のことを言う。

f:id:kanpyo:20210222165601p:plain

▲ 理想的なインパルス信号


 ただ、僕らが扱っているデジタルオーディオは必ず信号をサンプリング周波数に基づいて時間サンプリングしていて、信号の大小を記録しているので、「時間幅0で周波数的な情報を持つ」はありえない。レベルも16bit 24bitのように表現可能なレベル幅に上限がある。

 デジタルオーディオにおけるインパルス信号では、1サンプル目で最小→最大、2サンプル目で最大→最小に遷移する2sampleの信号のことを便宜的に言う。

f:id:kanpyo:20210222165933p:plain

▲ 行って帰ってくるまでがインパルス


 つまり、Fs=48kHzのインパルスと、Fs=96kHzのインパルスでは、後者の方が秒間2倍サンプリングされているので幅が1/2になる。アナログの場合このサンプリングという考えがない(常に連続)ので幅が0に近似する。インパルス信号はサンプリング周波数(fs)に依存する。

続きを読む

2代目「干瓢うぉっち」

ごあいさつ

 新ブログの記念すべき第一回目。

 今回は特に話題は用意しておらず、簡単な挨拶と言うことで。

 どうぞよろしくお願いします。

前身の「初代 干瓢ニッキ」

kanpyo.hatenadiary.org

 前身である「干瓢ニッキ」にて最後にブログ記事を書いたのが3Dアニメーションの「RWBY」に感銘を受けた時の話で、もう4年も前の話になる。随分と間が開いてしまった。

 「干瓢ニッキ」自体は大学生のころ、それまでWebサイトのトップページにHTML直で書いていた日記の管理がめんどくさくなったのがきっかけで、ブログに移行したのが始まり。14年前だ。名前も当時てきとうに決めたものだ。

f:id:kanpyo:20200830232257p:plain
▲ 前ブログの初稿。やる気ないけど文豪だなんだぜ・・・みたいな斜に構え感はやっちゃう


 特に何か目的を持って書き綴っていたわけではなく、1週間に1回程度の頻度で思うことを主観多めでダラダラ書く、まさに日記的立ち位置から始まった。14年以上経った今、改めて見ると奇声を発したくなるような痛い記事も多めである。やんちゃって怖い。

 記事投稿が激減したのは2010年ごろにTwitterを始めたタイミングだろうか。手軽さゆえ、即時的な雑談話はTwitterが肩代わりし、そのような記事は殆どなくなった。ニコニコ動画に楽曲をアップした時や、イベントに参加した際の告知など、何かイベントごとがあった時の告知のついで、というような記事が半数を占めていたわけだが、その機会も次第に減って、いつしか「干瓢ニッキを維持する」という半義務的なノルマ感のみが残った。

 そしてモチベーションも自然消滅し、結局書かなくなって今に至る。

本ブログ 立ち上げの目的

 仕事の報告書や説明資料などで長文を書くことはあっても、自分の思うがままに長文を書く機会というのは殆ど無くなってしまった。長文を書けない状況に「まぁしゃーねぇか」と思いつつもどこか燻るようなもやもやした気持ちがずっと続いており、目的を持ったログとして長文を書くという行為をまたやりたいと思ったのが切っ掛けである。

 他の発信の場としてはTwitterがあるが、Twitterでは140字という文字数制限がある。僕の場合下書きの段階で140字を超えることが多く、その都度添削して文字数を減らしてからツイートをするわけだけど、結局長文を書きたいのだなと思う。しかし僕には長文を書く場というのは「干瓢ニッキ」しかない。

 とはいえ、荒廃してよくわかんなくなってしまった「干瓢ニッキ」の延長として仕切りなおしで書くのもなんだかぶれていて書きづらいし、かといって数百日というエントリーを整理するのも気が遠くなる。

 ということもあって、今度は自分なりの「目的」をもって新しく始めようと思い立ち、この有様だ。

 社会人になって、10数年余。ハードウェアエンジニア、サウンドエンジニア、サウンドリエータ(現職)と様々な経験をして、今でも元気に音屋をやってる。と、学生時代に夢想していた自分に報告しておく。

今後について

 今後は特にノルマを設けることはせず、自分の音楽の話、レビュー、エンジニア/クリエータ観点での技術的な話を中心にログを残していくつもりだ。身の内にまつわる甘口話から、ググってもあまり出てこないような音響技術や信号処理など突っ込んだ話まで、浅い話を深く掘り下げたいと思っている。

 仕事や趣味で都度思うことも沸いては(Twitterで話すことじゃないななどと思いながら)発散することなく霧散する、を繰り返してきたわけだけど、それら情報資産が誰かの役に立てばいいなと思いつつ。