Isi kandungan:

Modul Sintesis Raspberry Pi Stompbox: 6 Langkah (dengan Gambar)
Modul Sintesis Raspberry Pi Stompbox: 6 Langkah (dengan Gambar)

Video: Modul Sintesis Raspberry Pi Stompbox: 6 Langkah (dengan Gambar)

Video: Modul Sintesis Raspberry Pi Stompbox: 6 Langkah (dengan Gambar)
Video: Max Or Pure Data? Choosing An Audio Programming Language 2024, Julai
Anonim
Modul Sintesis Raspberry Pi Stompbox
Modul Sintesis Raspberry Pi Stompbox
Modul Sintesis Raspberry Pi Stompbox
Modul Sintesis Raspberry Pi Stompbox

Matlamat projek ini adalah memasukkan modul suara berasaskan Fluidsynth ke stompbox. Istilah berbunyi teknikal "modul suara" dalam kes ini bermaksud peranti yang menerima mesej MIDI (iaitu nilai nota, kelantangan, nada suara, dll.) Dan mensintesis bunyi muzik sebenar. Gabungkan ini dengan pengawal MIDI - yang legiun, murah, dan sering sangat keren (seperti keytars!) - dan anda mempunyai synthesizer yang boleh anda mod dan tweak tanpa henti, dan reka bentuk dengan cara yang sesuai dengan gaya permainan anda.

Gambaran keseluruhan projek ini adalah bahawa kita menggunakan komputer linux papan tunggal kecil (Raspberry Pi 3 dalam hal ini), melampirkan LCD watak, beberapa tombol tekan, dan kad suara USB (kerana suara onboard Pi tidak begitu baik), dan masukkan semuanya ke stompbox Hammond 1590bb (seperti yang digunakan untuk kesan gitar) dengan beberapa sambungan luaran untuk USB MIDI, kuasa, dan audio. Kemudian kami mengkonfigurasi perisian dalaman untuk menjalankan program pada permulaan yang menjalankan FluidSynth (synthesizer perisian percuma, multi-platform, yang sangat baik), mengendalikan LCD, dan membolehkan kami mengubah tambalan dan tetapan menggunakan tombol tekan.

Saya tidak akan membahas perincian langkah demi langkah pada binaan ini (terdapat banyak tutorial hey-i-made-a-cool-raspberry-pi-case di luar sana), tetapi sebaliknya akan cuba memberi tumpuan kepada mengapa saya membuat pelbagai pilihan dalam pembinaan dan reka bentuk semasa saya pergi. Dengan cara ini semoga anda dapat melakukan pengubahsuaian agar sesuai dengan tujuan anda sendiri tanpa terjebak melakukan perkara-perkara yang kemudiannya tidak berfungsi.

KEMASKINI (Mei 2020): Walaupun instruksional ini masih merupakan tempat yang baik untuk memulakan projek seperti ini, saya telah membuat banyak peningkatan dari segi perkakasan dan perisian. Perisian terbaru adalah FluidPatcher, tersedia di GitHub - lihat wiki untuk banyak perincian mengenai cara mengatur Raspberry Pi. Lihat laman web saya Geek Funk Labs untuk berita dan kemas kini berterusan di SquishBox!

Bekalan

Ini adalah senarai pendek (dan penjelasan) komponen yang lebih penting:

  • Komputer Raspberry Pi 3 - Mana-mana komputer linux papan tunggal boleh berfungsi, tetapi Pi 3 mempunyai daya pemprosesan yang cukup untuk menjalankan Fluidsynth tanpa sebarang latensi, dan memori yang cukup untuk memuat fon suara yang besar. Kekurangannya adalah kerana bunyi onboardnya buruk, jadi anda memerlukan kad suara USB. CHIP adalah alternatif yang saya terokai (jejak yang lebih kecil, suara yang lebih baik, tetapi kurang memori / pemproses)
  • Kandang Hammond 1590BB - Saya cadangkan membeli yang dilapisi pra-serbuk jika anda mahukan warna, melainkan melukis kotak stomp adalah sesuatu yang anda gemari. Saya melayari banyak papan mesej tetapi saya rasa saya tidak sabar atau jenis cat yang betul, kerana setelah dua percubaan hasil saya cukup hebat.
  • Kad Suara USB - Anda boleh mendapatkan kad yang sesuai dengan harga yang murah. Menurut tutorial Adafruit yang indah ini (salah satu daripada banyak), anda harus tetap menggunakan yang menggunakan chipset CM109 untuk keserasian maksimum.
  • LCD Karakter - terdapat banyak tempat yang berbeza untuk mendapatkannya, tetapi pinout nampaknya cukup standard. Pastikan anda mendapat lampu latar sehingga anda dapat melihat pratetap anda semasa bermain di kelab berasap.
  • Stompswitches Momentary (2) - Sedikit lebih sukar untuk diperoleh, tetapi saya mendapat momentum dan bukannya beralih sehingga saya dapat mempunyai lebih banyak fleksibiliti. Saya boleh mensimulasikan togol dalam perisian jika saya mahukan tingkah laku itu, tetapi dengan cara ini saya juga boleh mempunyai fungsi yang berbeza untuk ketukan pendek, tekan lama, dll.
  • Adafruit Perma-Proto Hat untuk Pi - Ini membantu saya menyambungkan LCD dan komponen lain ke port expander Pi tanpa mengambil banyak ruang tambahan. Sekiranya saya cuba menggunakan papan wangi biasa, ia mesti melekat di sisi Pi untuk saya sambungkan ke semua pin GPIO yang diperlukan. Lubang pelekap dua sisi dan pemasangan yang sepadan juga berguna. Mengingat semua ini, ia adalah pilihan yang paling murah.
  • Penyambung USB - 1 wanita jenis B untuk kuasa, dan masing-masing dua jenis lelaki dan wanita jenis A untuk membuat kabel pemanjang yang fleksibel dan kurus untuk sambungan dalaman.
  • Bicu audio 1/4 "- Saya menggunakan satu stereo dan satu mono. Dengan cara itu stereo boleh menjadi bicu fon kepala / mono, atau hanya membawa isyarat kiri jika bicu lain disambungkan.

Langkah 1: Elektronik Dalaman

Elektronik Dalaman
Elektronik Dalaman
Elektronik Dalaman
Elektronik Dalaman
Elektronik Dalaman
Elektronik Dalaman

Kami akan menyambungkan LCD dan komponen yang berkaitan serta butang tekan ke Pi Hat. Juga, kami akan menambah bicu USB-B dan USB-A untuk menyambungkan kuasa dan peranti MIDI. Kami membawa port USB-A kerana kita perlu menggunakan salah satu port USB Pi untuk menyambungkan kad suara, yang ingin kita miliki di dalam kandang, jadi kita tidak boleh menyambungkan port USB dengan sisi kotak. Saya menggunakan port USB-B untuk mendapatkan kuasa kerana saya rasa ia boleh membawa hukuman lebih banyak daripada penyambung kuasa mikro-USB Pi, ditambah pula saya tidak dapat menemukan orientasi yang baik di mana penyambungnya boleh berada di sebelah tepi kotak.

Anda perlu menggunakan pisau untuk memotong jejak di antara lubang di mana anda akan menyolder pin untuk soket USB. Berhati-hatilah untuk tidak memotong jejak dalaman di papan yang menghubungkan pin lain - atau jika anda tidak sengaja (seperti saya) sambungkan semula menggunakan wayar jumper. Pin Vcc dan GND jack USB-B masing-masing menuju ke 5V dan GND pada port expander Pi. Dengan cara ini, anda boleh mengaktifkan stompbox anda dengan pengecas telefon (dengan anggapan ia mempunyai cukup daya - 700mA sepertinya berfungsi untuk saya, tetapi anda mungkin ingin lebih banyak lagi untuk memastikan port USB mempunyai jus yang mencukupi untuk memberi kuasa kepada pengawal anda) dan kabel USB A-B.

Saya dapati bahawa panjang kabel pita berfungsi dengan baik untuk menghubungkan sesuatu dengan banyak pin tanpa mempunyai spageti wayar terlalu banyak. Saya melakukan ini daripada menyisipkan header lelaki ke dalam LCD dan kemudian menyisipkannya ke topi kerana saya merasa seperti saya memerlukan sedikit kebebasan untuk meletakkan LCD sehingga saya dapat membuatnya terpusat dengan baik. LCD harus dilengkapi dengan potensiometer yang anda gunakan untuk menyesuaikan kekacauan - pastikan anda meletakkannya di tempat yang tidak akan ditutupi oleh LCD, jadi anda boleh membuat lubang di dalam kotak untuk mencapainya dan menyesuaikan kontras sekali semuanya berkumpul.

Rujuk skema untuk perincian mengenai apa yang dihubungkan di mana. Perhatikan bahawa butang tekan disambungkan ke 3.3V - bukan 5V! Pin GPIO hanya dinilai 3.3V - 5V akan merosakkan CPU anda. Soket USB-A disambungkan ke jalur kabel reben yang lain, yang kemudian anda boleh pasangkan ke palam USB yang akan anda sambungkan ke salah satu port USB Pi untuk pengawal MIDI anda. Potong sebarang logam tambahan dari palam sehingga lebih sedikit keluar, dan gunakan gam panas untuk menghilangkan ketegangan - ia tidak perlu cantik kerana ia akan disembunyikan di dalam kotak.

Langkah 2: Pendawaian Keluaran Audio

Pendawaian Keluaran Audio
Pendawaian Keluaran Audio
Pendawaian Keluaran Audio
Pendawaian Keluaran Audio
Pendawaian Keluaran Audio
Pendawaian Keluaran Audio

Tidak kira seberapa kecil kad suara USB yang anda dapati, kad kredit atau palamnya mungkin terlalu jauh dari port USB Pi agar semuanya sesuai di dalam kotak. Oleh itu, pasangkan satu lagi penyambung USB pendek dari beberapa kabel pita, palam USB, dan gam panas seperti yang ditunjukkan dalam gambar di atas. Kad suara saya masih terlalu chunky untuk dipasang di kandang dengan semua yang lain, jadi saya mengeluarkan plastik dan membungkusnya dalam beberapa pita saluran untuk mengelakkannya daripada tersekat.

Untuk mendapatkan audio dari kad suara ke bicu 1/4 "anda, potong ujung fon kepala 3.5mm atau kabel AUX. Pastikan ia mempunyai 3 penyambung - hujung, cincin, dan lengan (TRS), berbanding 2 atau 4. Lengan harus tanah, ujung biasanya saluran kanan, dan cincin (penyambung tengah) biasanya kiri. Anda hanya boleh menghubungkan hujung dan cincin ke dua soket mono (TS - hujung, lengan) 1/4 "dan selesai dengan itu, tetapi anda boleh mendapatkan lebih banyak fleksibiliti dengan sedikit pendawaian tambahan. Cari bicu TS yang mempunyai kenalan seketika ketiga, seperti yang ditunjukkan secara skematik dalam rajah di atas. Memasukkan palam akan mematikan kenalan ini, agar anda dapat mengetahui dari rajah bahawa isyarat kiri kemudian akan pergi ke bicu TS jika palam dimasukkan, dan ke dering jack TRS jika tidak ada palam yang dimasukkan. Dengan cara ini, anda boleh memasang fon kepala ke soket stereo, kabel mono tunggal ke bicu stereo untuk gabungan isyarat kanan / kiri (mono), atau kabel di setiap bicu untuk output kanan dan kiri (stereo) yang terpisah.

Saya menyambungkan pin ground dari jack dengan kabel yang berasal dari kad suara, supaya semua yang ada di dalam kotak itu mempunyai tanah yang sama dan saya mengelakkan bunyi gelung tanah yang tidak menyenangkan. Bergantung pada apa yang anda pasangkan, bagaimanapun, ini mungkin mempunyai kesan sebaliknya - jadi anda mungkin mahu memasukkan suis untuk membolehkan anda menyambung atau "mengangkat" tanah pada bicu 1/4 ".

Langkah 3: Menyiapkan Pagar

Menyiapkan Pagar
Menyiapkan Pagar
Menyiapkan Pagar
Menyiapkan Pagar
Menyiapkan Pagar
Menyiapkan Pagar

Langkah ini merangkumi lubang pemotongan di dalam kotak untuk skrin, butang, penyambung, dan lain-lain dan kebocoran epoksi di kandang untuk memasang topi Pi.

Mulakan dengan meletakkan semua komponen di dalam kandang untuk memastikan semuanya sesuai dan berorientasikan dengan cara yang betul. Kemudian, ukur dan tandakan dengan teliti di mana anda akan membuat lubang. Semasa memotong lubang bulat, saya cadangkan bermula dengan sedikit dan berusaha mengikut ukuran yang anda perlukan - lebih mudah untuk memusatkan lubang dan kemungkinan gerudi anda akan macet. Lubang segi empat dapat dipotong dengan menggerudi lubang di sudut berlawanan dari pembukaan yang dimaksudkan, kemudian memotong dengan jigsaw ke dua sudut yang lain. Ketebalan aluminium ini benar-benar sesuai dengan jigsaw selagi anda berjalan dengan lembut. Fail persegi sangat berguna untuk menjauhkan sudut bukaan. Buat bukaan palam USB agak murah sekiranya anda mempunyai kabel lemak.

Epoksi dua peringkat (seperti gam Gorilla dalam gambar) berfungsi dengan baik untuk melekatkan penahan topi ke penutup logam. Gores permukaan penutup dan bahagian bawah penutup sedikit dengan bulu keluli atau pemutar skru sehingga epoksi dapat mencengkam lebih baik. Saya cadangkan untuk melampirkan kebimbangan anda ke topi Pi sebelum melekatkannya sehingga anda tahu bahawa kedudukannya betul - tidak ada banyak ruang goyangan di sini. Saya hanya menggunakan tiga penghentian kerana LCD saya berada di jalan keempat. Campurkan kedua-dua komponen epoksi tersebut, tampalkan beberapa komponen pada penutup dan pasangkannya pada tempatnya. Elakkan menggoyangkan atau meletakkan semula bahagian-bahagiannya setelah lebih dari 10-15 saat, atau ikatannya akan rapuh. Beri masa 24 jam untuk disiapkan supaya anda dapat terus bekerja. Diperlukan beberapa hari untuk menyembuhkan sepenuhnya, jadi jangan menekankan ikatan dengan tidak perlu.

Kecuali jika anda ingin membuat hobi lain daripada melukis stompbox, saya cadangkan meninggalkan aluminium kosong (sebenarnya tidak kelihatan buruk) atau membeli kandang yang sudah dicat. Cat tidak mahu mengikat logam. Sekiranya anda ingin mencubanya, pasir di mana sahaja anda mahu cat melekat, gunakan cat cat primer auto body yang bagus terlebih dahulu, sapukan beberapa lapisan warna yang anda mahukan, kemudian biarkan sehingga kering selama mungkin. Serius - maniak di papan pesanan menunjukkan perkara seperti membiarkannya di bawah sinar matahari langsung selama tiga bulan, atau di dalam pembakar roti yang dibakar selama seminggu. Setelah mengorek sisa cat pekerjaan saya yang pertama yang berkerut, mengupas, percubaan kedua saya masih mendapat kerepek dan lekapan dari barang-barang seperti pen di beg gig saya, dan penamatnya dapat disok dengan kuku jari. Saya memutuskan untuk menyerah dan memilih gaya punk, menggunakan penanda putih untuk huruf.

Langkah 4: Persediaan Perisian

Persediaan Perisian
Persediaan Perisian
Persediaan Perisian
Persediaan Perisian

Sebelum memasukkan semuanya ke stompbox dan memasangnya dengan ketat, anda perlu menyediakan perisian pada Raspberry Pi. Saya cadangkan bermula dengan pemasangan baru OS Raspbian, jadi dapatkan salinan terbaru dari laman Raspberry Pi Foundation dan ikuti petunjuk di sana untuk mencitranya ke kad SD. Ambil papan kekunci dan skrin atau gunakan kabel konsol untuk log masuk ke Pi anda untuk pertama kalinya, dan sampai ke baris perintah. Untuk memastikan anda mempunyai kemas kini perisian dan firmware terkini, masukkan

sudo apt-get update && sudo apt-get upgrade

sudo rpi-kemas kini

Seterusnya, anda ingin memastikan anda dapat menggunakan wifi untuk ssh ke Pi dan melakukan pengubahsuaian setelah ia dikunci di dalam kandang. Pertama, hidupkan pelayan ssh dengan menaip

sudo raspi-config

dan pergi ke "Interfacing Options" dan mengaktifkan ssh server. Sekarang, tambahkan rangkaian tanpa wayar ke pi dengan mengedit fail wpa_supplicant.conf:

sudo vi /etc/wpa_supplicant/wpa_supplicant.conf

dan menambah baris berikut pada akhir:

rangkaian = {

ssid = "rangkaian anda" psk = "kata laluan anda"}

Ganti rangkaian dan kata laluan anda di atas dengan nilai untuk rangkaian apa sahaja yang anda mahu Pi sambungkan secara lalai - kemungkinan besar penghala wifi anda di rumah, atau mungkin titik panas pada telefon anda atau komputer riba yang berjalan dalam mod titik akses. Alternatif lain untuk menyambung ke Pi anda adalah menyediakannya sebagai titik akses wifi, supaya anda dapat menyambung ke mana sahaja anda berada. Antara muka yang saya tulis di bawah ini juga membolehkan anda memasangkan peranti bluetooth lain dengan Pi, setelah itu anda boleh menyambungnya menggunakan serial-over-bluetooth.

Untuk memasang FluidSynth, ketik

sudo apt-get install fluidsynth

Fail yang dilampirkan pada langkah ini menyediakan antara muka antara kawalan stompbox dan FluidSynth, dan harus disalin ke dalam direktori / home / pi. Berikut adalah penjelasan ringkas mengenai apa yang dilakukan oleh setiap fail:

  • squishbox.py - Skrip python yang bermula dan berkomunikasi dengan contoh FluidSynth, membaca input dari butang stompbox, dan menulis maklumat ke LCD
  • config_squishbox.yaml - Fail konfigurasi dalam format (kebanyakan) YAML yang boleh dibaca manusia yang menyimpan tetapan dan maklumat tampalan untuk program squishbox
  • fluidsynth.py - Pembungkus python yang menyediakan penjilidan fungsi C di perpustakaan FluidSynth, dengan banyak ikatan tambahan yang ditambahkan oleh saya untuk mengakses lebih banyak fungsi FluidSynth
  • ModWaves.sf2 - Soundfont yang sangat kecil yang saya sediakan untuk menunjukkan penggunaan dan kekuatan modulator dalam format Soundfont

Mempunyai skrip python mengatur proses FluidSynth dan mengendalikan semua butang / LCD berfungsi dengan baik - mesej MIDI terus ke FluidSynth dan skrip hanya berinteraksi dengannya apabila perlu.

Skrip python memerlukan beberapa pustaka python yang tidak dipasang secara lalai. Anda boleh memasangnya secara langsung dari Python Package Index menggunakan alat pip berguna:

sudo pip memasang RPLCD pyyaml

Akhirnya, anda mahu Pi menjalankan skrip python semasa boot. Untuk mewujudkannya, edit fail rc.local:

sudo vi /etc/rc.local

Masukkan baris berikut tepat sebelum baris 'exit 0' terakhir dalam fail:

python /home/pi/squishbox.py &

Langkah 5: Perhimpunan Akhir

Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir

Sebelum memasukkan semua kepingan ke dalam kotak, adalah idea yang sangat baik untuk memasukkan semuanya dan memastikan perisian berfungsi, seperti yang ditunjukkan dalam gambar di atas. Gambar 3-6 menunjukkan semua bahagian individu dan secara beransur-ansur bagaimana ia masuk ke dalam kotak saya. LCD sebenarnya ditahan di tempat oleh wayar yang menekannya, tetapi anda boleh menggunakan beberapa gam panas atau menambah beberapa skru pemasangan jika anda tidak menyukainya. Pita saluran oren pada penutup kotak adalah untuk mengelakkan Pi tidak terpendek pada logam.

Anda mungkin perlu bereksperimen dan melakukan konfigurasi semula agar semuanya sesuai. Snug bagus - semakin kurang bahagian yang bergoyang di dalam kotak, semakin baik. Panas nampaknya tidak menjadi masalah, dan saya tidak menghadapi masalah dengan isyarat wifi disekat oleh kandang. Tidak terdapat gambar kaki getah pelekat (anda boleh mencarinya di kedai perkakasan) di bahagian bawah kotak agar tidak tergelincir semasa anda menjalani sesi stomp.

Perhatikan pembongkaran / pemotongan / lenturan yang tidak disengajakan apabila semuanya disatukan. Satu perkara yang perlu diperiksa adalah bahawa terdapat cukup ruang untuk bicu 1/4 ketika kabel dimasukkan - hujungnya melekat sedikit lebih jauh daripada kenalan soket. Juga, di dalam binaan saya, saya memasang Pi terlalu dekat dengan tepi kotak dan bibir di penutup menekan di hujung kad SD dan menjentikkannya - saya terpaksa memasukkan takuk di bibir supaya ini tidak berlaku.

Langkah 6: Penggunaan

Image
Image
Penggunaan
Penggunaan
Penggunaan
Penggunaan

Modul suara yang telah saya jelaskan dalam langkah-langkah ini dan menjalankan perisian yang disediakan di atas cukup berguna dan dapat diperluas di luar kotak, tetapi banyak pengubahsuaian / variasi yang mungkin dilakukan. Saya akan menerangkan secara ringkas antara muka di sini - saya bercadang untuk terus memperbaharuinya di repositori github, di mana saya juga akan menyimpan wiki yang dikemas kini. Terakhir, saya akan membincangkan bagaimana anda dapat mengubah tetapan, menambah suara baru, dan membuat pengubahsuaian anda sendiri.

Untuk memulakan, pasangkan pengawal USB MIDI ke soket USB-A kotak, bekalan kuasa 5V ke dalam bicu USB-B, dan sambungkan fon kepala atau amp. Sebentar lagi LCD akan menunjukkan mesej "squishbox v xx.x". Setelah nombor dan nama tampalan muncul, anda seharusnya dapat memainkan nota. Ketukan pendek pada kedua-dua butang menukar tampalan, menahan butang mana-mana selama beberapa saat membawa anda ke menu tetapan, dan menahan kedua-dua butang selama kira-kira lima saat memberi anda pilihan untuk memulakan semula program, reboot Pi, atau mematikan Pi (NB Pi tidak melepaskan kuasa ke pin GPIO ketika berhenti, jadi LCD tidak akan pernah mati. Tunggu sekitar 30 saat sebelum mencabutnya).

Pilihan menu tetapan adalah:

  • Kemas kini Patch - menyimpan sebarang perubahan yang telah anda buat pada patch semasa untuk difailkan
  • Simpan Patch Baru - menyimpan patch semasa dan sebarang perubahan sebagai patch baru
  • Pilih Bank - fail konfigurasi boleh mempunyai beberapa set tambalan, ini membolehkan anda beralih di antara mereka
  • Set Gain - tetapkan jumlah output keseluruhan (pilihan 'gain' fluidsynth), terlalu tinggi memberikan output yang terdistorsi
  • Chorus / Reverb - ubah suai reverb dan chorus set semasa
  • MIDI Connect - cuba sambungkan peranti MIDI baru jika anda menukarnya semasa program dijalankan
  • Bluetooth Pair - pasang Pi dalam mod penemuan sehingga anda dapat memasangkan peranti bluetooth lain dengannya
  • Status Wifi - laporkan alamat IP Pi sekarang supaya anda dapat memasukkannya

Fail config_squishbox.yaml mengandungi maklumat yang menerangkan setiap tambalan, serta perkara seperti perutean MIDI, parameter kesan, dan lain-lain. Ia ditulis dalam format YAML, yang merupakan cara silang bahasa untuk mewakili data yang dapat dihuraikan oleh komputer tetapi juga manusia -membaca. Ia boleh menjadi agak rumit, tetapi di sini saya menggunakannya sebagai cara untuk mewakili struktur kamus Python bersarang (susunan / hash bersekutu dalam bahasa lain), dan urutan (senarai / tatasusunan). Saya meletakkan banyak komen dalam contoh fail konfigurasi dan cuba menyusunnya sehingga seseorang dapat melihat secara beransur-ansur apa yang dilakukan oleh setiap ciri. Lihat dan bereksperimen jika anda ingin tahu, dan jangan ragu untuk bertanya di komen. Anda boleh melakukan banyak perkara untuk mengubah suara dan fungsi modul hanya dengan mengedit fail ini. Anda boleh masuk dan mengedit dari jauh, atau FTP fail konfigurasi yang diubah suai ke Pi, kemudian mulakan semula menggunakan antara muka atau dengan menaip

sudo python /home/pi/squishbox.py &

pada baris arahan. Skrip ditulis untuk mematikan kejadian lain yang sedang berjalan ketika memulakannya sehingga tidak akan ada konflik. Skrip ini akan mengeluarkan beberapa amaran pada baris arahan ketika berjalan ketika memburu peranti MIDI untuk menyambung dan melihat di berbagai lokasi untuk fon suara anda. Ia tidak rosak, ini hanyalah pemrograman malas dari pihak saya - saya dapat menangkapnya tetapi saya mendakwa mereka adalah diagnostik.

Semasa anda memasang FluidSynth, anda juga mendapat fon bunyi FluidR3_GM.sf2 percuma yang cukup bagus. GM bermaksud MIDI umum yang bermaksud ia mengandungi "semua" instrumen, yang ditugaskan untuk pratetap dan nombor bank yang dipersetujui bersama sehingga pemain MIDI yang memainkan fail menggunakan fon suara ini akan dapat menemukan kira-kira suara yang tepat untuk piano, trompet, bagpipes, dan lain-lain. Sekiranya anda mahukan lebih banyak / berbeza soundsyou anda dapat mencari banyak soundfontson internet. Yang paling penting, spesifikasi fon huruf tersedia secara meluas, sebenarnya cukup hebat, dan ada penyunting sumber terbuka yang indah untuk fon bunyi yang disebut Polyphone. Dengan ini anda boleh membina fon bunyi anda sendiri dari fail WAV mentah, dan anda juga boleh menambahkan modulator pada fon anda. Modulator membolehkan anda mengawal banyak elemen sintesis (mis. Sampul surat ADSR, sampul modulasi, LFO, dll.) Dalam masa nyata. Fail ModWaves.sf2 yang saya sertakan di atas memberikan contoh penggunaan modulator untuk membolehkan anda memetakan resonans penapis dan frekuensi pemotongan ke mesej MIDI perubahan kawalan (yang boleh dihantar dengan butang / slaid pada pengawal anda). Terdapat begitu banyak potensi di sini - bermain!

Harapan saya bahawa tutorial ini mencetuskan banyak idea dan memberikan kerangka kerja yang baik kepada orang lain untuk membina ciptaan sintetik mereka yang unik, serta menyokong ketersediaan dan pengembangan fon bunyi yang baik, spesifikasi soundfont, dan perisian percuma yang hebat seperti FluidSynth dan Polyphone. Binaan yang telah saya gariskan di sini bukanlah kaedah terbaik atau satu-satunya cara untuk menyatukan sesuatu seperti ini. Di bahagian perkakasan, kemungkinan modifikasi mungkin kotak yang lebih besar dengan lebih banyak butang, input / output MIDI lama (5-pin), dan / atau input audio. Skrip python dapat diubah (maaf atas komen jarang saya) untuk memberikan tingkah laku lain yang mungkin sesuai dengan anda - Saya berfikir untuk menambahkan mod "kesan" ke setiap patch di mana ia akan bertindak seperti stompbox kesan sebenar, tetapan beralih pada dan mati. Orang juga boleh menambahkan beberapa perisian tambahan untuk memberikan kesan audio digital. Saya juga berpendapat akan lebih baik untuk menjalankan Pi dalam mod wifi AP seperti yang dijelaskan di atas, dan kemudian ia dapat menyediakan antara muka web yang ramah untuk mengedit file konfigurasi. Jangan ragu untuk menghantar idea / soalan / perbincangan anda sendiri dalam suapan komen.

Saya ingin memberikan alat bantuan besar kepada pembuat FluidSynth dan Polyphone kerana menyediakan perisian sumber terbuka percuma yang kita semua boleh gunakan untuk membuat muzik hebat. Saya suka menggunakan perkara ini, dan anda berjaya!

Disyorkan: