DAW悪戦苦闘記

DAWやMIDIを通じてちまちまとDTMを楽しむ記録+MIDI検定1級到達記

ディープ・ラーニングによる音楽の生成

昨年夏に自動作曲ツールの調査研究をやった一環で、ニューラルネットを用いた音楽生成モデルの代表例であるMagentaプロジェクトなどの存在を知ることができた。

daw-jones.hatenablog.com

Magentaは自分で実際に動かしてみたりもしたが、その後自主制作上はまったく活用することもなく、AI自動作曲の研究動向などからは遠ざかっていたところ、網羅的なサーベイ記事を最近たまたま発見したので、備忘録がてらここに紹介しようと思う。昨夏の課題学習みたいなものを振り返りつつ、個人的な気づきと雑感を箇条書きにしておく。

medium.com

  • 画像と違って音楽は利用可能な学習データが圧倒的に少ない状況が機械学習上非常に不利である。特にMIDIデータは自分で書き起こしたりする必要もあったりで、ハードルが高過ぎる。そう言う意味では、上記記事でも指摘しているように、オーディオ・データのままで学習させるアプローチの方が将来性があるように思う*1
  • オーディオ・データを機械学習のインプットとして用いる方法論をある程度理解するためには、デジタル信号処理(DSP)の基本を習得する必要はあろう。これについてはまた後日触れたい。
  • とても大切なそもそも論と目的について。上記記事中で "そもそもなんのためにAIで音楽を作るのかという視点です。「バッハのような」あるいは「ビートルズのような」音楽を生成することが目的でよいのでしょうか" という視点は重要だ。単なるモノマネでは少なくとも実用価値はなきに等しい(オリジナルの本物を聴けばよいわけだから)。この点では昨夏に試した WolframTones は非常に単純かつ珍奇ではあるけれど、生成される楽曲はとても斬新で新規性がある。
  • これもそもそも論。コード進行に見られるように、基本的に音楽は心地よいとされる組み合わせに関して(100%厳密ではないものの)ルールが確立しているので、ルールベースのアプローチで相当程度実用価値を出せると考えられる。なので、機械学習をどこに対して何の目的で適用するかは今後シビアに問われるとは思う*2。ユーザとしては、AI/機械学習バズワードに惑わされない素養はあった方がよい。
  • 上記記事によれば、リズムに焦点を当てた研究はかなり少ないようだが、GarageBand(または Logic Pro X)のドラマー機能を重宝している身としては、実用上これで十分ではないかと思ってしまうのだがどうだろう(おそらくルールベースだと想像するが)。

 

*1:代表例がGoogleのWaveNet。その片鱗を覗かせていて面白いと思った記事は「機械学習でギターアンプをモデリングする」。

*2:音楽理論ですでに解明されているルールを、機械学習によって再発明したところで何の価値もない。

Studio One 4 のPrime版がリリースへ

待ちに待った Studio One 4 の無料Prime版が本日よりPreSonusの本家サイトで公開、ダウンロード可能となったようである。前のバージョン3を本家サイトより落としてインストールしていたユーザはメール通知があったかと思う。私も早速アップグレードしたので、以下ちょっとした注意点などをご参考までに。

なお、日本の正規代理店であるMI7のサイトではまだダウンロードの準備が整っていないようであるが、間もなく公開されると思われる。もっとも、本家サイトから直接ダウンロードしてもプロダクト自体に差異はない(はず)。

日本の正規代理店であるMI7では7月13日から遂に公開となった。

www.mi7.co.jp

バージョン4のインストーラーを実行する

アップグレードにあたっては、バージョン3.xのアプリ上から直接更新・上書きを適用することはできないようなので、バージョン4のインストーラーを別途ダウンロードして実行する必要がある。

以下のPreSonusショップからPrime版を選択し、カートに入れてからMy.PreSonusのアカウントにログインした後に所定のインストーラーを落とす。バージョン4からの新規ユーザはまずアカウント登録をする必要がある(製品アクティベーションのため)。

shop.presonus.com

追記 (2018-07-15)

新規ユーザの場合のアカウント登録とインストール方法が下記のSleepFreaks記事で解説されているのでご参考まで。

sleepfreaks-dtm.com

バージョン3からの設定移行は万全

すでにバージョン3.xが入っている場合は、バージョン4のインストール後、自動的にバージョン4をアクティベーションしてくれる。また、ソングファイルの保存場所等諸設定は自動的にバージョン3から引き継がれる。

付属音源の Presence XT およびエフェクトやループ素材もバージョン3のものをそのまま引き継ぐ。したがって、これらおまけのリソース類を改めてダウンロードする必要はない。今回特に新しい素材などは加わっていないようであり、この点は逆に正直言って淋しい。

なお、アプリ・アイコンが若干変更され、以下のような白地基調のものに変わった。

f:id:daw_jones:20180711220616p:plain

言語設定

バージョン4のインストール直後は、自動的にロケールを判定して日本語に設定されるようだ。

ただし、Studio One に限らずDAWの日本語メニューはカタカナだらけで必ずしもわかりやすい・見やすいとは言えない側面がある。なので、英語に変更したい場合は、メニューバーから Studio One > Preferences を開き、「一般」タブの中の言語から"English"を選んで再起動する。

f:id:daw_jones:20180711215440p:plain

新しい機能は限定的

Prime版は機能限定版であるから、バージョン4新機能のごく一部のみがサポートされる。具体的には、以下の3点となっている:

  1. Instrument and Drum Editor
  2. Drum and Melodic Patterns
  3. MP3 Encoding/Decoding

これらについてはまた後日検証記事を上げることにしたい。1はすぐに確認できたが、リズム系のMIDI編集がピアノロールから進化して格段に入力しやすくなっている。ただ、SMF出力時にどういうゲートタイムで書き出されるのか、そこは少し気になる。

もちろん言うまでもないが、UIや基本編集機能はPro版と同様にしっかりと改善されている。

バージョン3は削除してもよい

バージョン4を入れても、今まで使用していた古いバージョン3.xはアプリケーション・フォルダーに残存したままとなっている。これは完全に削除・アンイストールしてもバージョン4の実行にはまったく差し支えないようである。

私はバージョン4を入れた後にすぐバージョン3.5を削除したため、併用できるかどうかは検証できていない。しかし、バージョン4でMIDIキーボードなど周辺機器との接続に問題がないことを確認したら、バージョン3との併用は必要ないだろう。少なくともPrime版での併用のメリットは特にないと思われる。

当ブログをHTTPS配信に変更

DTMDAWの話から外れてしまうが、今年上半期が終了するタイミングで当ブログもHTTPS配信に切り替えてみたので、移行に関するちょっとした知見などを共有することにしたい。

他ユーザの体験談をいくつか参照する限りでは、意外に煩雑な印象もあって尻込みしていたが、結論から言うと、外部リソースを読み込むような独自カスタマイズがない設定であれば、非常に簡単である。

help.hatenablog.com

はてな提供ドメイン上のブログは本年4月中旬以降にすべてHTTPS移行可能となったのだが、私はいわゆる混在コンテンツ (mixed content) の変換対応やそのノウハウが落ち着くまでしばらく様子見していた。現状では、はてなブログが提供する編集機能だけを用いてデザインしている場合は、ほぼすべての部品がはてな側で自動的にHTTPS化しているため、ユーザが逐一該当URLを修正する必要はなく、まったくの杞憂に終わった。

すなわち、デザイン・テーマに公式テーマを用いて、サイドバー等に外部リソースをべたべた貼り付けていない標準設定であれば、画像に関する以下2点の再設定を済ますとHTTPS化は完了する:

  • ヘッダのタイトル画像を再度アップロードし直す。
  • ブログアイコン画像を再度アップロードし直す。

懸念していたブログ記事中の引用記事埋め込みについては、サーバ側のプログパーツ配信機能によってすでにHTTPS化されている。また、記事中の画像に関しては、デフォルトのはてなフォトライフ経由貼り付けであれば、こちらもすでにHTTPS化が済んでいる。したがって、現状ではいずれも再度貼り付け直すなどのユーザによる修正作業は一切必要ない。当ブログのやや古い2016年に書いた記事でも問題はなかった。

はてなブログの標準機能以外に非常に大掛かりなカスタマイズを施しているのでなければ、案外あっさりと移行できるようなので、まだの方は躊躇することなく早めに移行することをお勧めしたい。

追記 (2018-10-14)

移行後に気づいたのだが、古い記事(投稿時期などは特定できず)を引用している場合、ブログパーツがブランクの状態になって記事リンクだけ表示されることがある。なので、引用先記事はいわゆる mixed content の状態にはならずに安全な接続が確立されはするが、消えてしまったブログパーツを復旧させるためには、引用記事のURLを"http"から"https"に手動でHTML編集する必要がある。

MIDI検定1級演習 2017年課題曲 (6) 総括その他

MIDI検定1級の2017年課題曲演習を終えた締めくくりとして、最後のまとめやその他気づいた点などを書いておく。

daw-jones.hatenablog.com

私はこれまで2011年(ポップ・ロック)、2013年(ビッグバンド・ジャズ)、2016年(クラシック)と来て2017年課題曲(ラテン)を含めて合計4曲取り組んだことになるが、出題ジャンルのバリエーションやその傾向と対策としてはもう十分だろうと思う。

何度か書いたように一般論としては、ポピュラーとジャズ、クラシックを各1曲ずつ、計3曲の課題曲を実践演習すれば大体のコツは把握できる。ただし、装飾音符の取り扱いなど細かいところで制作規定書のルールが改訂されているようなので、なるべく直近年度の課題曲を選んだ方がよいと思われる。

楽曲の印象など

2017年課題曲は弦楽器セクションが入っているせいもあってか、実は思ったほどラテン臭くなく、むしろどちらかと言えばクラシック寄りの印象が強い。他年度課題曲とも比較すると、この辺はどうしても作曲出題者の好みとか手癖みたいなものを感じる*1。ベートーベンの第5交響曲をモチーフにしているのだからそういう結果は当然と言えば当然か。

概観でも触れた通り、全体的に8分音符の羅列で音数自体はさほど多くはなく、本曲特有の珍しい、または難しい表現があるわけでもないので、ちょうど中ぐらいの難易度だと思う。ポピュラー・ジャンル入門用の課題曲として相応しいかもしれない。ただし、本曲のリズムはラテン打楽器だけなので、ドラム譜演習用に別途他年度のポピュラー課題曲に取り組む必要はある。たとえば私がやってみた2011年課題曲など。

打ち込みの省力化について

トランペットやトロンボーンなどの管楽器が典型例であるが、複数プレイヤーで一つのセクションを構成するような楽器パートでは、強弱表現含めてフレーズの重複が非常に多いため、トラック丸ごと複写することでMIDI打ち込みの手間を大幅に省くことができる。

すなわち、どれか一つ代表的なパート(トラック)を最後まで打ち込んだら、そのトラックを丸ごと複写し、異なる細部のみ微修正すれば、セクションを構成する別パートを直ちに仕上げることが可能となる。たとえば、"Trumpet 1" を作ったら、それを丸ごと複写して "Trumpet 2" のトラックを起こし、あとはフレーズなど異なる部分のみを編集する。

1番の利点は、ノート自体よりもむしろベロシティやモジュレーション、あるいはボリュームのオートメーションといったセクション共通の付加表現データをほぼそのまま流用できるため、これらを一から再度入力し直す必要がない点である。

変則的なMIDIチャネルの割り当て

本曲ではやや変則的なMIDIチャネル番号の割り当てになっている点は注意を要する。

例年と異なり、トラック順とチャネル番号が必ずしも一致しない。またリズム系8トラックはすべてチャネル10(MIDIのドラム用標準チャネル)に割り当てる必要がある。

f:id:daw_jones:20180626213240p:plain

再生時のフリーズ処理

2017年課題曲はリズム系のトラック数が例年にも増して多いせいもあり、環境によっては再生時のCPU負荷がかなり高くなる可能性がある。

こういう場合、リズムセクションなど再生負荷の高いトラックは、一旦フリーズしてオーディオ変換しておく方がよい。詳細については以下の過去記事を参照されたい。

daw-jones.hatenablog.com

 

*1:一言で極論するとイージー・リスニングみたいな楽曲が多い。なので、音色やMIDIによる表現技法では管弦楽器系統のシミュレーションが例年必須となっている。

MIDI検定1級の出願受付が開始

本日25日より、来たる第10回MIDI検定1級試験の出願受付が始まった。申し込み締め切りは8月3日なのでまだ十分余裕はあるが、受験予定者は7月中には受験料振込みまで済ませておいた方がよいだろう。私も当然そのつもりでいる。

MIDI検定試験1級案内

試験・制作期間は当初発表通り8月10日から20日までの実質10日間である。丸々10日間の夏季休暇は無理だとしても、土日を2回挟むので、休暇を1日追加するだけで最低限度と想定する丸5日間の制作日数は間違いなく確保はできると思う。

今年は1級試験発足10周年ということで、例年と大きく異なるモチーフで攻めてくる可能性もあって内心ヒヤヒヤしているのだが、蓋を開けてみればクラシックだった、という楽勝パターンだと大変ありがたい。

同一トラックで途中の音色変更を伴う場合のSMF作成 (Studio One)

以下記事の続きになるが、Studio One の重要な仕様を指摘しておきたいので、別出しの一般記事として書くことにする(ちょっとマニアックです)。

daw-jones.hatenablog.com

途中の音色変更とMIDIデータ

同一楽器パート(トラック)において途中の音色変更を伴う場合、Studio One (Prime版) ではプログラム・チェンジや音源音色の途中切り替えに対応していないため、異なる音色の別トラックを追加して再現することになる。

再生音のWAVファイル書き出しや自主制作ではこれで何ら問題はないわけだが、MIDI検定提出用のSMF (Standard MIDI File) を作成する際には、これら追加音色のトラックは余分な不要データであるから、できれば最初からSMFには吐き出されないようにしたい。

フリーズとオートメーションによる対処法

Studio One では、フリーズしてオーディオ化したトラックのMIDIイベントはSMF保存時に書き出されないという仕様を活用する。

メイン・トラックの用意とミュート制御

音色変更部分も含めてすべてのMIDIイベントを格納するメインのトラックを用意する。SMFにはこれらのMIDIイベントを書き出す。

MIDI検定1級2017年課題曲のエレキ・パート (Electric Guitar 2) を例に取れば、Distorted > Muted > Ordinary (Clean) と音色が3種変化するうち、たとえば最初のディストーション・ギターのトラックに3音色分のMIDIイベントすべてを格納する。ただし、再生時は残り2音色にかかわるMIDIイベントだけはミュートするように自動制御する。すなわち、途中から音色変更を伴う部分をオートメーションでMuteする。Muteパラメータは、0: Mute Off / 1: Mute On の2つのみである。

f:id:daw_jones:20180624180310p:plain

音色追加トラックをフリーズ

冒頭でも少し述べたように Studio One では、MIDIイベントを伴うインストゥルメント・トラックであっても、フリーズ (Transform to Audio) したトラックについてはSMF保存時*1にデータが書き出されない。したがって、音色変更に伴う追加トラックは、SMF作成時にフリーズしておけば余計なMIDIデータは書き出さずに済むのである。

上例で言えば、"EG Muted" と "EG Clean" は音色追加トラックなので、2つともフリーズしてオーディオ変換しておけばMIDIデータは吐き出されない。

f:id:daw_jones:20180624184310p:plain

なお、該当トラックをフリーズせずにミュートだけしてもMIDIイベントが存在する場合は書き出される。この辺りの仕様はDAWによって異なり、ミュートするだけでMIDIデータが書き出されないものもあるようだ。

プログラム・チェンジの挿入

Prime版の Studio One ではプログラム・チェンジのメッセージ挿入ができないため、これについては別途 Domino を使って該当トラックの適当なタイミング箇所でデータを追加する(メニューバーから 挿入 > プログラム・チェンジ)。

*1:File > Save As 保存の際に、.midファイル形式で保存する場合。

MIDI検定1級演習 2017年課題曲 (5) エレキとピッチベンド

MIDI検定1級2017年課題曲の要所ポイントを書き記すシリーズの最後として、今回はエレキのパートに注目してみたい。

daw-jones.hatenablog.com

本曲のエレキに関しては、大きく分けて2種類の勘所がある:

  • ピッチベンド・コントロールを使ったベンディング(チョーキング)の表現
  • 音色切り替えとSMF作成上の対応策

このうち後者の音色問題については、汎用テクニックとして切り出し別個の記事で改めて書くことにし、今回は表現手法について触れる。

ベンディングの指定とピッチベンド・コントロール

本曲におけるディストーション・ギターのパート(Electric Guitar 1)では、しゃくり上げなどのベンディング奏法が譜面上で斜線明記されており、いずれもピッチベンド・コントロールを駆使することになる(下記の譜例参照)。

f:id:daw_jones:20180623193047p:plain

この辺は2級合格者にとってはすっかりお馴染みの技法であって、特に難しく感じるところではないと思う。なお、ベンドレンジは"2"で問題ないはずである。Studio One での入力方法としては、例えば以下のようになろう*1

f:id:daw_jones:20180623200249p:plain

1次審査上の扱いがどうなるかだが、ここは譜面でベンディングの指定があるわけだから、ノート入力せずに正しくピッチベンド・コントロールのデータが入っておれば問題なかろう。逆にピッチベンドのデータがないと減点対象になると想定される。

モジュレーションも忘れずに

1級課題曲の譜面ではどのパートも通常はヴィブラートが明記されていないことが多いのだが、エレキは譜面に指定はなくとも音が長く伸びる箇所では適度にモジュレーションを掛けた方がよい(音源音色で対応している場合は除く)。さもないと平板で機械的に聴こえ、ややもすると滑稽な印象を受けるからである。

f:id:daw_jones:20180623201832p:plain

 

*1:トラック・インスペクターの設定で再生時に1オクターブ下げているので、譜面照合の都合上MIDIデータは敢えて記譜通りに打ち込んでいる。