通過(guò)這個(gè)項(xiàng)目將 CHIP 變成一個(gè)隨時(shí)可用的簡(jiǎn)單合成器,能夠創(chuàng)建各種各樣的聲音。用 MIDI 鍵盤(pán)甚至 OSC 控制它!
作為一名長(zhǎng)期的電子音樂(lè)愛(ài)好者和愛(ài)好者,我能夠?qū)⑷魏渭夹g(shù)視為聲音的來(lái)源。由于芯片具有內(nèi)置音頻、電池供電功能和方便的 USB 插孔,我知道它可以作為一款出色的小型便攜式交互式噪音盒,并且發(fā)出各種出色的聲音。
實(shí)現(xiàn) CHIP-MAS 的第一步是找到一個(gè)用于編程合成器的好平臺(tái)。有幾種不同的路徑可供選擇:C++ 和音頻框架,如asoundlib 或Jamoma 、python 和Pyo ,一種專業(yè)語(yǔ)言,如Faust ,或者,如果你想用樣本做一些簡(jiǎn)單的事情,Pygame或Pysound 。我選擇了Pure Data (又名 Pd),這是一個(gè)開(kāi)源、可擴(kuò)展的圖形編程環(huán)境。Pure Data 旨在生成和處理聲音,是快速原型化和創(chuàng)建音樂(lè)制作新方式的好方法。
一旦我決定了一個(gè)編程環(huán)境,就該開(kāi)發(fā)合成器了。我使用了 Pure Data 示例 ( C08.analog.sequencer.pd ) 中一個(gè)更有趣但 CPU 使用率較低的示例,因?yàn)樗幸粋€(gè)有趣的波表合成器和一個(gè)音序器。我做了很多工作以使合成器具有更多的聲音多樣性,并集成了一個(gè) MIDI 鍵盤(pán)來(lái)創(chuàng)建琶音序列。
概述
基本步驟是
啟動(dòng)芯片
安裝純數(shù)據(jù)
獲取 Git (repo)
設(shè)置合成器以在啟動(dòng)時(shí)啟動(dòng)
安裝純數(shù)據(jù)
第一步是安裝 Pure Data 程序。Pure Data 有“extended”和“vanilla”版本。如您所料,“extended”提供了更多功能,但是,我不需要這些附加功能,因此我安裝了“vanilla”。從 CHIP 上的命令行安裝很容易:
sudo apt-get update
s
人類是非常敏感的傾聽(tīng)者。音樂(lè)編程的挑戰(zhàn)之一是從“執(zhí)行動(dòng)作”(按下鋼琴鍵盤(pán)上的一個(gè)鍵)到“聽(tīng)到聲音”的時(shí)間盡可能短。一般這被稱為“延遲”,對(duì)于電子音樂(lè)制作人和程序員來(lái)說(shuō),這是一個(gè)巨大的妥協(xié)話題。
Pure Data 最好為操作系統(tǒng)提供高優(yōu)先級(jí),并且可以通過(guò)一些配置來(lái)完成。在 nano 編輯器中編輯配置文檔:
sudo nano /etc/security/limits.conf
添加行的位置:
@audio - rtprio 99
@audio - memlock unlimited
到文件的末尾。現(xiàn)在您可以重新啟動(dòng) CHIP 以確保它生效
sudo reboot
為了讓這些東西真正起作用,Pure Data 需要從帶有“實(shí)時(shí)”標(biāo)志的 CHIP 終端啟動(dòng),如下所示:
pd -rt
如果您想制作自己的合成器或修改我制作的合成器,您可能還想在您的“日常”計(jì)算機(jī)上安裝 Pure Data應(yīng)用程序。CHIP 是一臺(tái)很棒的計(jì)算機(jī),但如果你有一臺(tái)速度更快、顯示器分辨率更高的計(jì)算機(jī),你可能會(huì)發(fā)現(xiàn)使用 Pure Data 編程更容易,因?yàn)樗鶗?huì)占用大量屏幕空間。
獲取軟件合成器
轉(zhuǎn)到您的 Documents 文件夾,然后提取 git repo:
cd ~/Documents
git clone https://github.com/nyboer/CHIPMAS.git
一些合成器細(xì)節(jié)
如果您對(duì)合成器的工作原理感興趣,這里有幾件事值得一提。在制作合成器時(shí),我希望能夠創(chuàng)造出各種各樣的聲音:打擊樂(lè)、噪音、明亮、簡(jiǎn)單、干凈、激進(jìn)等等。但是,我不想占用過(guò)多量的 CPU。所以我選擇了一個(gè)波表合成器設(shè)計(jì),它可以掃描不同大小的表,從一個(gè)波中產(chǎn)生幾個(gè)復(fù)雜的波形。之后我創(chuàng)建了一些可以混合的表,產(chǎn)生了很多可能的音色。添加同步低通濾波器、幅度和表掃描包絡(luò),我們就有了一個(gè)非常通用的合成器。
所有參數(shù)都可以通過(guò)Open Sound Control (OSC) 進(jìn)行控制,這也意味著這款微型合成器是可聯(lián)網(wǎng)的。但是針對(duì)于這個(gè)比較簡(jiǎn)單的案例,我準(zhǔn)備圍繞一個(gè)便宜的 Akai Synth Station 25 鍵盤(pán)設(shè)計(jì)了它。我通過(guò)這種方式,可以插入 USB MIDI 控制器,啟動(dòng) CHIP,并擁有一個(gè)復(fù)雜的合成器聲音。
您會(huì)注意到本文下方的跳轉(zhuǎn) git 存儲(chǔ)庫(kù)還有一個(gè)名為“graintable.touchosc”的文件,它是適用于 Android 和 iOS的Touch OSC應(yīng)用程序的文件。它使你可以控制 CHIP-MAS 中的多個(gè)參數(shù),以及使用手機(jī)運(yùn)動(dòng)傳感器控制聲音的選項(xiàng)。
連接控制器
我用 MIDI 鍵盤(pán)設(shè)計(jì)了這個(gè)作品。您只需按下一個(gè)和弦,音符就會(huì)按照您按下琴鍵的順序播放。使用調(diào)制和彎音輪更改濾波器截止頻率和波表之間的交叉漸變。如果您使用 Akai Synth Station 25 鍵盤(pán),您可以使用八個(gè)按鈕中的六個(gè)來(lái)更改預(yù)設(shè)(頂部的按鈕行)或更改速度(向上或向下,以 4 BPM 為增量)。
在啟動(dòng) CHIP 之前,您需要連接鍵盤(pán),以便程序可以找到鍵盤(pán)。
發(fā)出聲音
只需按下鍵盤(pán)上的鍵,移動(dòng)彎音輪和調(diào)制輪,能夠發(fā)出一些奇怪的聲音。
最終成品
最后,我想把它變成一個(gè)完整的項(xiàng)目成果,可以通過(guò)一系列步驟使用:插上鍵盤(pán),打開(kāi)芯片,插上耳機(jī),然后退出。
不過(guò)這還挺容易做到的,必要的服務(wù)文件包含在 git 存儲(chǔ)庫(kù)中。該服務(wù)腳本只是告訴 Linux 在特定服務(wù)可用后打開(kāi)我們的合成器補(bǔ)丁。您應(yīng)該仔細(xì)檢查該行:systemd
ExecStart=/usr/bin/pd -nogui -rt /home/chip/Documents/CHIPMAS/CHIPMASsynth.pd
確保 pd 和 CHIP-MASsynth.pd 的絕對(duì)路徑是正確的。
將您的目錄更改為您擁有 git 存儲(chǔ)庫(kù)的任何位置,然后將存儲(chǔ)庫(kù)中的服務(wù)文件復(fù)制到正確的位置:
sudo cp chipmassynth.service /etc/systemd/system/chipmassynth.service
現(xiàn)在我們需要讓我們systemd知道這項(xiàng)新服務(wù):
sudo systemctl daemon-reload
sudo systemctl enable chipmassynth.service
您可以使用以下命令測(cè)試服務(wù):
sudo systemctl start chipmassynth
和
systemctl status chipmassynth
和
sudo systemctl stop chipmassynth
Pure Data 補(bǔ)丁在“pd init”子補(bǔ)丁中有一些特殊信息,確保它可以抓取第一個(gè) MIDI 設(shè)備,關(guān)閉音頻輸入,并打開(kāi)第一個(gè)音頻輸入(CHIP 的內(nèi)置音頻)以保證合成芯片啟動(dòng)后即可播放。
讓 CHIP 獨(dú)一無(wú)二
CHIP 通過(guò) `avahi` 啟用了“零配置網(wǎng)絡(luò)”,但我想充分利用這一點(diǎn)。我周圍有幾個(gè) CHIP,所以如果它們有唯一的名稱會(huì)更好。
簡(jiǎn)而言之,您需要編輯幾個(gè)文件并將“chip”更改為“synth”(或您想要的任何名稱)
sudo nano /etc/hostname
sudo nano /etc/hosts
另外,我在 Mac 上,所以我喜歡添加蘋(píng)果服務(wù):
sudo nano /etc/avahi/services/afpd.service
并添加以下內(nèi)容:
重啟avah:
sudo /etc/init.d/avahi-daemon restart
免密碼登錄
能夠使用 `ssh` 和 `scp` 來(lái)控制和復(fù)制文件到 CHIP 也很不錯(cuò),而無(wú)需每次都輸入密碼。
在您的計(jì)算機(jī)上生成 SSH 密鑰對(duì)
ssh-keygen -t rsa
并將其保存到
~/.ssh/id_rsa.pub
將其復(fù)制到 CHIP:
scp ~/.ssh/id_rsa.pub chip@:~/
在 CHIP 上,您需要安裝rsync,為 ssh 設(shè)置它,然后將公鑰復(fù)制到它的授權(quán)密鑰文件中:
cd ~/
sudo apt-get install rsync
mkdir .ssh
cat id_rsa.pub 》》 .ssh/authorized_keys
rm id_rsa.pub
chmod go-w ~
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
現(xiàn)在,在您的主機(jī)上,可以輕松移動(dòng)所有 PureData 補(bǔ)丁,而無(wú)需登錄:
rsync -avzu CHIPMAS/ chip@boer04.local:~/Documents/CHIPMAS
可能的擴(kuò)展
我很高興在 CHIP 上以如此便宜的價(jià)格完成了一個(gè)簡(jiǎn)單的合成器即使我開(kāi)始構(gòu)建一些非常簡(jiǎn)單的東西,實(shí)際上這個(gè)合成器中正在進(jìn)行相當(dāng)多的信號(hào)計(jì)算,因?yàn)樗瑫r(shí)掃描 4 個(gè)波表并混合它們以及噪聲信號(hào),并用包絡(luò)對(duì)它們進(jìn)行調(diào)制。
即使它沒(méi)有經(jīng)過(guò)優(yōu)化,它仍然只需要大約 25% 的 CHIP 的 cpu。我認(rèn)為合成器可以被簡(jiǎn)化和修復(fù),以關(guān)閉那些不被使用的東西。它還可以使用一些過(guò)采樣來(lái)改善音質(zhì),并且可以刪除 CPU 密集度更高但聽(tīng)起來(lái)更好的 Moog 模擬“bob~”濾波器來(lái)代替 Pure Data 的“vcf~”。
最后,需要利用 CHIP 的內(nèi)置網(wǎng)絡(luò)。CHIP 非常便宜,在單獨(dú)的 CHIP 上運(yùn)行 6 到 8 個(gè)這樣的合成器并通過(guò)網(wǎng)絡(luò)同步和控制并不是不合理的。
-
合成器
+關(guān)注
關(guān)注
0文章
267瀏覽量
25316 -
Chip
+關(guān)注
關(guān)注
1文章
59瀏覽量
26384 -
MIDI
+關(guān)注
關(guān)注
0文章
75瀏覽量
15606
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論