標題: | 以 Raspberry Pi、Python和Pure Data為基礎建造開源模組化合成器 Building an Open Source Modular Synthesizer Based on the Integration of Raspberry Pi, Python and Pure Data |
作者: | 曾奎紋 曾毓忠 林桂如 Tseng, Kwei-Wen Tseng, Yu-Chung Lin, Kuei-Ju 工學院聲音與音樂創意科技碩士學位學程 |
關鍵字: | 模組化合成器;自造;開放源碼;Feedback Delay Network;Github;Linux;Modular Synthesizer;Open Source;Pitch-shifting Delay;Pure Data;Python;Raspberry Pi |
公開日期: | 2016 |
摘要: | 模組化合成器可以藉由調控手段產生多元的音色、具有獨特的操控思維,自1960年代開始普及,至今在表演或是在錄音室中仍然廣為被運用,近年來可以看到許多廠商重新生產模組合成器,也可以見到許多進階使用者對於現成的產品進行軟體和硬體上的「改造」,並在網路上販售套件與成品,使用者可以透過動手做自行組裝合成器來節省成本取得更高的性價比,本研究目的為透過數位的技術降低「改造」的工程技術門檻,以期建造開源的環境、可以重複編輯音色以及自定義聲音架構的模組化合成器以滿足使用者的需求,使大多數的使用者都擁有自行編寫模組合成器設定的能力。
本研究以Linux作業系統的Raspberry Pi做為核心建構模組化合成器,並在Raspberry Pi中整合Python程式碼、電腦音樂開源軟體Pure Data與硬體電路,使外部的模組化合成器所產生的控制電壓能被Pure Data接收。本研究成果將在Github中進行資料的分享,透過開放源碼的資料,使用者可以使用Pure Data進行編程,進而自定義模組的功能或利用Python的編程來更深入的改造、擴充硬體,以降低行列式程式碼的聲音編程門檻以及燒錄程序,進而達到使用者轉換成開發者的角色。除此之外也可以透過開放源碼的資料自行打樣一塊電路板,更進階的使用者可以修改、擴充電路的功能…等等,來達到改造與自造模組化合成器。
本論文架構在第一章節以研究動機為開頭,說明模組化合成器廠商與使用者之間單向的關係,以及為了突破此現象,本研究預期建立之開源模組化合成器。第二章節介紹模組合成器的工作原理、專有名詞、格式種類,第三章節中說明科技的變化如何影響合成器的發展,在四章後將進入實作階段,說明如何運用Python程式碼連結外部電路與Pure Data,並於第五章節進行電路板的電路設計、打樣與測試,第六章節說明如何在此合成器上自定聲音架構,範例為在Pure Data實際執行含有Pitch-shifting Delay與 Feedback Delay Network為演算法的空間效果器,最後於第七章節進行檢討與未來計劃的討論。 Modular synthesizers can generate diversity of sound with a unique control of various modulations; it's has been widely used since the 1960s in the recording studios and in live performance. Beside many manufacturers restart their module productions in recent years, there are advanced users "alter" the ready-made products whether on the software or hardware parts and sell the kits and finished products on the Internet. On the other hand, the user of modular synthesizers could achieve a higher cost-performance ratio by self-assembly modules. The research of this thesis is attempted to reduce "alteration" threshold of engineering and technical barriers in order to build an open source environment with reproductive sound editing and customizing to satisfy the requirements from the users, so the most users have the ability to change the setting of the modules. The research is based on Raspberry Pi with Linux operation system as the core to build an open source modular synthesizer, which integrates Python, Pure Data and hardware circuit. It allows Pure Data to receive the control voltage generated by the external modular synthesizers. The results and the information of this research will be submitted to Github for wider distribution. As the result, users can program Pure Data to customize their sound structures on their own or program Python to more in-depth reform through the open source information. By reducing the programming threshold and flash procedure, I hope to encourage the users to become developers. Additionally, advanced users could edit and modify circuit by the open source data to achieve the transformation of the self-made modular synthesizers. The first section of this thesis starts with the motivation of the research, explaining the unidirectional relationship between modular synthesizer manufacturers and users. This research will build an open source modular synthesizer for the purpose of diminishing this phenomenon. The second section introduces fundamental operating principles, proper nouns and format types of modular synthesizers. The third section describes how technology has affected the development of the modular synthesizers. The fourth section will enter the stage of implementation, explaining how to connect Python to Pure Data with external circuit on Raspberry Pi. The fifth section introduces the PCB design, proofing and testing. The sixth section will explain how to edit sound structure and perform spatial effects on Pure Data, which, in the example, contains effects of pitch-shifting delay and reverb that is based on the algorithm of feedback delay network. Finally, there will be a review and discussion in the seventh section. |
URI: | http://etd.lib.nctu.edu.tw/cdrfb3/record/nctu/#GT070251914 http://hdl.handle.net/11536/143395 |
Appears in Collections: | Thesis |