sameshima_alt-blog

猛烈に意識が高いブログです…

Ubuntuで音楽制作環境を構築するためにN100ミニPCを買った話

この記事はニフクラ等を提供している、富士通クラウドテクノロジーズ Advent Calendar 2023の19日目の記事です。

昨日は@aokumaさんの external-dnsのWebhookを調べて実装してみたでした。
Webhookについて、雰囲気だけで理解していた(してない…)のですが、3割増しくらいの理解になった気がしました。

ところで、私はニフクラエンジニアミートアップの管理人でありながら、エンジニアどころか法学部卒の「完全文系」です!

去年は「作曲」の自動化を目指しましたが、今年はLinuxで音楽制作環境を構築する方向に舵を切ってみましたって唐突ですか?

いらすとやさんは何でもありますね

自宅サーバーで何をやるか問題

Linuxといえば、サーバー用OSです。 私は日頃からLinuxサーバーの管理者を相手にお仕事をしていながら、物理サーバーを扱ったことはりません。
クラウドサーバーやレンタルサーバーは借りたことがあります。

ニフクラエンジニアミートアップで「自宅サーバー」ネタで人集めては「自宅サーバーはいいぞ!」と言い続けているので、そろそろ自分も導入しないとな!とようやく重い腰(テレワークのおかげで本当に重い)を上げました。

で、自宅サーバーで何をやるか?

学習用に自宅サーバー環境を構築する者が、常に自問自答するテーマです。 今回は、Ubuntuで趣味の音楽制作環境の構築・・・
つまり、DAWDigital Audio Workstationを導入します。

そもそもDAWってなんだ?

DAWのことに興味がない皆さんに、軽く解説をしておきます。

たとえば、ボーカル、ギター、ベース、ドラムというバンド編成の曲を制作する場合、最低4トラックを別々に録音可能な環境が必要です。 昔は、それぞれマイクを前にして順番に録音していたわけですが、現在ではボーカルはボカロ、ギターやベースやドラムは、仮想化された楽器(VST:Virtual Studio Technology)を使用するようになりました。DAWの進化によって、(物理的な)スタジオも楽器もプレイヤーも不要になったといえます。

WindowsMacには、市販・無料のVSTが多数流通していますが、Linuxで動かすのはちょっとハードルが高そうな気がしたので、今回はVSTは無視して仮想スタジオ・仮想マルチトラックレコーダー環境を構築することにします。

LinuxDAWについて

LinuxDAWを使っている人の情報を探します。 ちょっとググったらDTM界のカリスマ藤本健氏の記事が出てきました。

av.watch.impress.co.jp

DTMerは、基本的に藤本健氏にすぐ影響を受けます。

もらっておきましょう!(わかる人向け)

そもそもLinuxでわざわざDTMをやる人は多くないと思うので、情報量が少なくかなりの修羅の道が予想されます。

■N100ミニPCを買った!

賞与がでる金曜日の前日にBMAXというメーカーのミニPCをぽちりました。

2万円台前半で買えるみたい

FJCTの自宅サーバー勢がこぞって導入したというN100ミニPC

社内の自宅サーバー勢におすすめを訊いておきながら、なぜかBMAXを買いました。
開封して、とりあえずUSBブートメディアを作って起動できるようにBIOSを・・・

BIOS出ないんだが?

起動時に連打するキーが違っただけでした。
BIOS出たけどブートドライブを変えられないぞ?

たまにノートPCとかのマザボBIOSでブートドライブを変更できないやつがあるけどまさか?

Amazonの説明にも「Windows11Pro+Ubuntu」って書いてあったのに?

諦めるか(早)

※実はbootドライブの順番は変更できていたが、認識していなかった。。

■WLSでUbuntu環境を構築

気を取り直して、安易な道を選ぶことにしました。 WindowsからWLSってのを使うとLinuxをインストールできるらしい?

learn.microsoft.com

インストールできた!できた! さらにDAWもインストール。 とりあえず、藤本健氏の勧めるままに Ardourを選択。

DAW(Ardour)をインストール

多分こんな感じだろうと雑なコマンドで…

$ sudo apt install ardour

インストールは成功しました。

起動!(富山敬の声で)

かなり怖い感じのArdourの起動画面

あれ?なんか画面がおかしいぞ?

だめみたい。
諦めるか(早)

■Virtual BoxでUbuntu環境を構築

気を取り直して、別の安易な道を選ぶことにしました。 いつもお世話になっている日本仮想化技術の皆さんは「Virtual Box」っていうのでUbuntuを仮想環境にインストールしてたような?

この書籍を参考にしたら、極めてスムーズにインストールできました。 book.impress.co.jp ただいまKindle unlimitedで無料で読めるみたい。

Ardourもインストールして起動したら…。

老眼じゃなくてもこの画面はキツイと思いました。
画面が小さすぎて目が逝きそう
あと、オーディオインターフェースを認識しない。
諦めるか(早)

■なぜか検証機(MINISFORUM)を導入

その後、1週間経過してそろそろアドベントカレンダーの自分の記事に火が付き始めた頃、じゃん●らで「Windowsのライセンス無し。保証ありません。自分でOSを用意してください」と記載された格安ミニPCを見かけたので、衝動買いしました。

ミニPCは小さいから何台あっても困らないですよね?

今度は、普通にBIOS画面でブートドライブを変更できたので、BMAXで使用したブート用USBメディアを指して起動し・・・

起動しない!

起動問題のトラブルシューティング

冷静にトラブルシューティングをしていくと、ブート用USBメディアがダメってことになったので、ブート用メディアへのISO書き込み方法を見直してみました。

1.USBメモリーをFAT32でフォーマット
アイ・オー・データのフォーマッターソフトを使いました。
2.ISOファイルをダウンロード
3.USBメディアに書き込む
こういう書き込みソフトを使いました。 MiniTool Partition Wizard無料版|Windowsに最適なパーティションマネージャー

もう一回再起動したら、普通にインストールが始まりました。。

試しに、BMAXでもやってみたら普通にインストールが始まりました。。。

USBブートメディアの書き込みをミスっていただけか。。。

オーディオインターフェースの認識問題

DAWとかのソフトウェアをインストールする前にオーディオ周りを確認しておきます。 Linuxの世界では、ALSA(Advanced Linux Sound Architecture)とか言う仕様がオーディオを扱う上ではスタンダードのようでした。
とりあえず、音の入口と出口(要するにオーディオインターフェースが使えるか)を確認します。

$ aplay --list-devices

再生用のデバイスが認識されてい

$ arecord -l

録音用のデバイスが認識されている

見たところ、USBオーディオインターフェース(EVO4)を認識しています。

試しにYouTubeで動画を再生したら普通に聴こえました。

Audacityをインストールしてみた

DAWをインストールする前に、無料のオーディオ編集ソフト「Audacity」がUbuntuのソフトウェアメニューから選択できたので、とりあえず導入してみました。

www.audacityteam.org

環境設定でインターフェイスALSAなのを確認します。

drum

ドラムマシンの音をEVO4経由で録音できた!

Ardourをインストールしてみた

Ardourもコマンドを打つのがめんどくさいのでソフトウェアメニューから検索してインストールしました。

ArdourのEdit画面

Ardourのミキサー画面

ということで、UbuntuDAWを利用できることが判りました。

たぶん、本気で使い始めると遅延の問題が出てきたり、市販のVSTを使えるようにしたり…と課題も出てくるはずです。

■まとめ

Linux用のソフトウェアは未知の世界が広がっているので、いろいろ試してみると面白いかも。
あれこれやっているうちに、Linuxの操作も少しはわかってくるかもしれないですね。

自宅サーバーの用途が無いという人、DAWDTMとかやってみませんか?

明日の記事は @ometora_sateyanさんによる「Python初学者がToDoリストリマインダーbotを作ってみた」だそうです。

ToDoのリマインダーをすべてAlexaの音声に依存している私としては、とても興味があります。 それではお楽しみに!

ChatGPTに歌詞を考えさせてみよう

ChatGPTが爆発的に流行しているような気がしますが、実は盛り上がってるのはIT企業だけじゃないか?と思っています。

AIに任せてしまえば安心ですね!

とりあえず、作詞をさせてみます。 勤務先が川崎にあるので川崎周辺の地名を織り込んだ社歌の歌詞を考えさせました。

「川崎クラウドの歌」

風を切ってやってくる
未来のテクノロジー
川崎の地に降り立ち
未来への扉を開く

夢見る心に 燃える情熱
進化する今日に 向けて羽ばたこう

繋がる世界の 拠点として
クラウドの羽音が 響き渡る

川崎の地は 未来への入り口
時代をリードする テクノロジーの港

働く仲間たち 情熱を胸に
川崎クラウドが 未来を担う

挑戦の日々に 誇りを持って
川崎クラウドが 未来を創る

翔ける未来へ 羽ばたけ川崎クラウド
夢と希望の空へ 羽ばたけ川崎クラウド

ちょw川崎クラウドってなんだよ。
会社名とか無視か!
まあ、いい(よくないけど)。

続いて、川崎周辺の地名を織り込んでシティポップ風にしてくれと依頼

「川崎デルタ・シティ」
(イントロ)
デルタの陽射し 煌めくビル街
ここは誰もが憧れる川崎

(サビ)
川崎デルタ・シティ 光り輝く街
メロウな風が吹く 過ぎゆく時間に

(ヴァース1)
横浜からも近くて アクセスは抜群
川崎に来たら 寄らずにはいられない

(プレコーラス1)
南部でショッピング 東口で食べ歩き
東急ハンズもある 憩いのスポット

(サビ)
川崎デルタ・シティ 光り輝く街
メロウな風が吹く 過ぎゆく時間に

(ヴァース2)
幾つものビル群 光り輝く夜景
新しいビルが 次々に建ち並ぶ

(プレコーラス2)
川崎駅周辺には 名店が溢れ
イルミネーションも綺麗 デートにも最適

(サビ)
川崎デルタ・シティ 光り輝く街
メロウな風が吹く 過ぎゆく時間に

(ブリッジ)
このままずっと このまま歩きたい
ここには居心地が良くて どこか懐かしい気がする

(サビ)
川崎デルタ・シティ 光り輝く街
メロウな風が吹く 過ぎゆく時間に

(アウトロ)
デルタの陽射し 煌めくビル街
ここは誰もが憧れる川崎

いきなり途中で作詞の精度がガタ落ちするのは一体?
このへんとか

(ヴァース1)
横浜からも近くて アクセスは抜群
川崎に来たら 寄らずにはいられない

(プレコーラス1)
南部でショッピング 東口で食べ歩き
東急ハンズもある 憩いのスポット

このへんとか・・・

(プレコーラス2)
川崎駅周辺には 名店が溢れ
イルミネーションも綺麗 デートにも最適

韻を踏んでくださいと言ってみましたが・・・

「川崎デルタ・シティ」

(サビ)
川崎デルタ・シティ 光り輝く街
メロウな風が吹く 過ぎゆく時間に

ビルの陰で 秘密のスポット
誰にも教えたくない 特別な場所

(サビ)
川崎デルタ・シティ 輝きはじめる
想い出のシーンが 今も心に響く

夕暮れ時に 響くビルの音
あの頃のあの夢が 今も胸に残る

(サビ)
川崎デルタ・シティ 光り輝く街
メロウな風が吹く 過ぎゆく時間に

夜空には 星のキラメキ
思い出の場所が いつも私を待っている

(サビ)
川崎デルタ・シティ 輝きはじめる
想い出のシーンが 今も心に響く

全然韻を踏んでないYO!
歌詞そのものはまともになってきた気がします。

ライムっぽく韻を踏んでくれと念押ししたら・・・

申し訳ありませんが、ライム(ラップ用語で韻を踏むこと)は、単語の韻を踏ませるためには、特定のテンポやビート感を持つ音楽に合わせて歌詞を作成する必要があります。テキスト上での韻を踏んだ歌詞作成には限界があるため、お手伝いすることはできません。もし何か他にお力になれることがあれば、お知らせください。

マジか。

ChatGPTがラッパーを駆逐することは難しいってことか?

ChatGPTの苦手分野・・・それはライム

ITエンジニアっぽい手法で作曲を自動化してみた

この記事はニフクラ等を提供している、富士通クラウドテクノロジーズ Advent Calendar 2022の5日目の記事です。

 

昨日は@o108minminさんの 友誼食府 池袋店で買えるナイスな中華食材でした。
同氏が社内のSlackチャンネルに頻繁に投稿する「家にあるもので作った系中華レシピ」は、一見簡単そうに見えて「いや、その調味料(食材)、普通の家には無いから」と思っていましたが、友誼食府にいけば自炊が上手くなる可能性を少し感じました。 

ところで、私はニフクラエンジニアミートアップの管理人でありながら、エンジニアではない法学部卒の「完全文系」です!
ど素人の「やってみた」記事とか読まないですよね?

今回は、皆さんがきっと日常的に役立つ技術である「作曲」について書いてみました!
って唐突ですか?

対象読者

・楽譜が読む気がない人
・楽器の練習をする気がない人
・数値化できない感性センスという言葉が苦手な人
・商用利用可能なBGMを動画に使いたい人(いきなり具体的)

なぜ作曲アプリを作らないのか?
「適当なパラメーターを入れたら曲ができるアプリとか作る話だよね?」
と思われた方もいらっしゃると思います。

仮に、素人が作曲アプリを作ったとしても、きっとゴミ曲が生成されるだけです。

私が目指すのは「作曲技術のコード化」です。

文系的な感性とかセンスに依存しない作曲技術ならば、冪等性が高いと考えたからです。


準備
Macbook(ミュージシャンっぽいから)
・StudioOne(VSTプラグインが使える有償のArtist以上)
・EVAbeat Melody Sauce 2(メロディ自動生成プラグイン
・モニターヘッドホン(SONY MDR-CD900ST
・ミックスプラグインやマスタリング用プラグイン(できれば)

最低これだけの投資が必要です。
余計な選択肢は与えません。とにかく、これを揃えましょう。
ユーザーが少なくてネットに情報が少ない物を選択すると苦労します。
クラウドサービスでも同じことが言えるので、がんばるます(流行の語尾)。

 

要件定義
作曲を行うには、下記のような要件が必要です。

1.曲の長さ
2.曲の速度(BPM)
3.曲の構成(編成・何パート使うか)
4.曲の雰囲気(楽しい・悲しい・クール・怖いとか)
5.曲の移行性(PCやDAWの環境依存を極力少なくする)

今回は、「ニフクラのデモ動画に無難なフリー素材のBGMを入れたい!」という社内のニーズがあったため、そういった用途にあったものにします。

1.曲の長さ(20秒くらいのフレーズを呼び込み君のようにループ再生)
2.曲の速度(BPM=120BPM)
3.曲の構成(ドラムとベースとピアノの3パート)
4.曲の雰囲気(楽しいとクールの中間)

曲の速度(テンポとかBPMとか)は、基準はよくわかりませんが、たいていのDAWは立ち上げるとBPMが120になっていることが多いので、無難なBPM=120と判断。

曲の構成というか編成ですが、BGMとか昔のゲーム音楽では概ねドラム、ベース、メロディパートがあれば成立するので、最低3パートあれば良いような気がします。

さまざまなDAWのプリセット音源やVSTによって、極端に再現性が変わらないようにする意味もあり、ドラムとベースとピアノという編成を選択します。

曲の雰囲気は、クラウドサービスのデモ動画が過剰に楽しい必要はないと思うので、クールさも加味します。

環境構築
要件定義に基づいて環境構築をします。
StudioOneでは、インストゥルメントトラックという、いわゆるMIDIシーケンサー機能で使用するピアノロールでMIDIノートを入力するためのトラックを用意します。

トラック1=Dance Kit(ドラム)
トラック2=Dance Bass(ベース)
トラック3=Electric Piano(エレピ)
トラック4=Melody Sauce 2(フレーズ自動生成用のトラック)

各パートの音源(仮想楽器)は、どのDAWでも標準搭載していそうなものを選択します。
これによって、DAW移行時やデータ流用時の再現性が高まります。

そして、下記の設定を行います。 
1.メトロノームをオンにする 
2.ループ再生をオンにする 
3.16秒(8小節)でループ再生するように設定  

何も考えずにそうしてください。幸せになれます。


DAWの環境設定メニューで、ヘッドホン出力を選択するのを忘れないように。

「おいお前!オーディオインターフェースは使わないんですか?」

というツッコミを入れてくる人がいると思いますが、Macbookのヘッドホン出力回路は優秀なので、そのまま本体にヘッドホンを差しても差し支えないと思います。

各パートの入力
ここまでは、StudioOneの操作さえ間違わなければ誰でも再現できる操作です。

ドラムの入力
ドラムパートは、たくさんの太鼓とかシンバルがワンセットになっているものですが、基本はバスドラム(大太鼓)とスネアドラム(小太鼓)とハイハット(シンバル)の3つです。

この3つだけ鳴っていれば何とかなります。

ドラムセットには、基本的には「音階は無い」という割り切りのもと、通常の楽器と異なり、音階にドラムキットが割り振られています。

バスドラムから、入力します。バスドラムは、だいたいC1に割り振られています。
メトロノームの「カッ、カッ」という音と同時にバスドラムが鳴るようにノート(音のこと)を打ち込みます。

StudioOneのトラックの1小節目をダブルクリックすると、編集画面が現れるのでマウスでダブルクリックするとノート(青い横棒)が入力されます。   
ノートを4回打ち込んだらハイハットD#2と、スネアD1は好みで適当に等間隔で打ち込んでおけば、間違いにはならない気がします。

わざとずらしてグルーヴ感を出すような小細工は苦労の割に効果が少ないぞ!

 

あえて機械的にすることでクールさが演出できる副次的メリットもあります。

on.soundcloud.com



1小節入力できたら、次の小節の先頭にカーソルを合わせて7回コピペしてください。
8小節(16秒)の入力は完了です。
あっ、ドラムはStudioOne付属のループ素材で良かったのかもしれません。

ベースを入力
次にベースですが、なかなか難しいです。
音楽理論を理解していない人は苦労する部分です。私も全くわかりません。

ここで活躍するのがEVAbeat Melody Sauce 2(メロディ自動生成プラグイン)という、今流行りの、AI系自動生成ツールです。
このプラグインは、VST上で動作してとにかく気に入るメロディが出てくるまで何度でもリテイクができるという優れもの。
コレだ!というメロディが出てきたらトラックにコピペするだけで完成。

まず、Melody sause 2のトラックから、インストゥルメントエディターをクリックして設定画面を起動します。

トラック画面で「インストゥルメントエディター」をクリックします

下記の画面が出てきますので、とりあえず「STYLE」からそれっぽいのを選んでください。

設定はこれだけです。

そして、言われるがままに真ん中のボタンを押すだけ。

楽しいので12回も押しましたが、5〜6回で良いのが生成されます・・・

コピペするだけで、トラックにノートが入力されてしまいます!マジか。

on.soundcloud.com勝手に、AIがそれっぽいフレーズを作ってくれたみたいですね。

ピアノを入力
ピアノはベースより難易度が高いですね。
どうすればいいんでしょうね。弾いたことないし。

ここで活躍するのがEVAbeat Melody Sauce 2(メロディ自動生成プラグイン)という、今流行りの、AI系自動生成ツールです(以下省略)

on.soundcloud.comベースと同じように、AIがいい感じのメロディを生成してくれます。

実際の手順は、YouTubeで「EVAbeat Melody Sauce 2」で検索すると、たくさん出てくるので、参考にしてください。

実際にこういう仕上がりになった。
ドラムを手動で入力した以外、ほとんど音楽的独自性を発揮していません。
最終的にミックスダウンとかマスタリングという作業を経て曲が完成しますが、すべてAIとかで解決してしまえる気にさせるのが、ブラックフライデーです。

ミックスダウンもAIに任せます。安心はお金で買えると思います。

音圧を上げればいいというものではないですが、上げたくなりますね!

ドラム以外、感性とかセンス的なものは全く使わずにBGMが出来ました。

on.soundcloud.com
さらにエディットすれば何十倍もいいものができますが、何も考えずにやってここまでになるのは、AIの進化はすごいと言わざるを得ません。

「ちょw待って!最初に作曲技術のコード化って言ってなかった?」

と、鋭いツッコミが入ると思います。
はい、ただのMelody Sauce 2アフィリエイトブログ手順書です。

技術とか不要で、AIがいい感じにしてくれるから・・・
ローコードで作曲ツールとか作る話じゃなくてごめんな。 

おまけですが、AI搭載のVOCALOID6も試してみました。今日の昼休みだけでこの仕上がりです。  歌詞は今日の寒さをそのまま垂れ流しただけです。

on.soundcloud.com


DAWのプロジェクトファイル管理問題
最後にDTMあるある話&エンジニアっぽい話です。
DAWのプロジェクトファイルが大量に存在して、バージョン管理ができていないDTMerは多いようですが、私もその一人です。

Gitを使ってプロジェクトファイルやMIDIファイルの管理をすること自体は、可能と思いますが、DAWから直接操作できるわけでないので、それほど便利ではないです。

以前、社内のHIPHOP好きで知られる@tilyさんが、テキストでMIDIデータを作成しているのをみて、「普通にDAWで入力すればよくね?」と聞いたところ「エンジニア的にはテキストで管理したい。差分管理もできるし、再利用とか修正もやりやすい」と言っていたのを思い出しました。

この分野は、課題が大ありなのでいつか研究してみたいですね。

この記事は富士通クラウドテクノロジーズ Advent Calendar 2022の5日目の記事でした。
明日は、 @herietさんがtrivy+conftestについて書いてくださるようです。コンテナイメージの脆弱性スキャンツールとかのお話ニフクラエンジニアミートアップでも聞いてみたいです。
それでは明日もお楽しみに!

気が向いたら…こちらも…

groups.google.com