فهرست مطالب:

Raspberry Pi Stompbox Synth Module: 6 مرحله (همراه با تصاویر)
Raspberry Pi Stompbox Synth Module: 6 مرحله (همراه با تصاویر)

تصویری: Raspberry Pi Stompbox Synth Module: 6 مرحله (همراه با تصاویر)

تصویری: Raspberry Pi Stompbox Synth Module: 6 مرحله (همراه با تصاویر)
تصویری: Raspberry PI effects plugins vs. ZOOM MS100BT 2024, جولای
Anonim
Raspberry Pi Stompbox Synth Module
Raspberry Pi Stompbox Synth Module
Raspberry Pi Stompbox Synth Module
Raspberry Pi Stompbox Synth Module

هدف از این پروژه قرار دادن یک ماژول صوتی مبتنی بر Fluidsynth در یک stompbox است. اصطلاح تکنیکی "ماژول صدا" در این مورد به معنای دستگاهی است که پیامهای MIDI را دریافت می کند (یعنی ارزش نت ، میزان صدا ، صدای پیچ ، و غیره) و صداهای واقعی موسیقی را سنتز می کند. این را با یک کنترلر MIDI - که لژیون ، ارزان و اغلب بسیار باحال است (مانند keytars!) - قرار دهید و یک سینتی سایزر دارید که می توانید آن را بی نهایت اصلاح کرده و تغییر دهید و به گونه ای طراحی کنید که متناسب با سبک بازی شما باشد.

یک نمای کلی از این پروژه این است که ما یک کامپیوتر کوچک لینوکس تک تخته (در این مورد یک رزبری پای 3) می گیریم ، یک LCD کاراکتر ، چند دکمه فشاری و یک کارت صدا USB وصل می کنیم (از آنجا که صدای پردازنده Pi بسیار خوب نیست) ، و همه چیز را در Stompbox Hammond 1590bb (مانند مواردی که برای جلوه های گیتار استفاده می شود) با برخی اتصالات خارجی برای MIDI USB ، قدرت و خروجی صدا متصل کنید. سپس نرم افزار داخلی را برای اجرای برنامه ای در هنگام راه اندازی پیکربندی می کنیم که FluidSynth را اجرا می کند (یک ترکیب کننده نرم افزار عالی ، چند پلتفرم ، رایگان) ، LCD را کنترل می کند و به ما امکان می دهد وصله ها و تنظیمات را با استفاده از دکمه های فشار تغییر دهیم.

من به جزئیات گام به گام در مورد این ساخت نمی پردازم (تعداد زیادی آموزش he-i-made-a-cool-raspberry-pi-case وجود دارد) ، اما در عوض سعی می کنم روی دلیل ساختن تمرکز کنم. انتخاب های مختلف در ساخت و طراحی به عنوان من رفتم. به این ترتیب شما می توانید امیدوار باشید اصلاحاتی را با توجه به اهداف خود انجام دهید بدون اینکه در انجام کارهایی که بعداً به نتیجه نمی رسد ، گیر کنید.

UPDATE (مه 2020): در حالی که این دستورالعمل هنوز هم مکانی عالی برای شروع چنین پروژه ای است ، اما پیشرفت های زیادی را از نظر سخت افزاری و نرم افزاری انجام داده ام. آخرین نرم افزار FluidPatcher است که در GitHub موجود است - برای اطلاع از جزئیات بیشتر در مورد تنظیمات Raspberry Pi ویکی را بررسی کنید. برای اخبار و به روزرسانی های مستمر در SquishBox ، سایت من Geek Funk Labs را بررسی کنید!

تدارکات

این یک لیست کوتاه از (و توضیح) اجزای مهم تر است:

  • کامپیوتر Raspberry Pi 3 - هر رایانه لینوکس تک برد می تواند کار کند ، اما Pi 3 دارای قدرت پردازش کافی برای اجرای Fluidsynth بدون تأخیر و حافظه کافی برای بارگذاری فونت های صوتی بزرگ است. اشکال آن این است که صدای ضعیفی در داخل دستگاه دارد ، بنابراین به کارت صدا USB نیاز دارید. CHIP جایگزینی است که من در حال بررسی آن هستم (ردپای کوچکتر ، صدای بهتر ، اما حافظه/پردازنده کمتر)
  • محفظه Hammond 1590BB - پیشنهاد می کنم اگر می خواهید رنگی داشته باشید که از قبل پودر شده باشد ، مگر اینکه نقاشی روی شکم چیزی باشد که شما به آن علاقه دارید. من بسیاری از تابلوهای پیام را مرور کردم ، اما فکر می کنم حوصله و نوع رنگ مناسب را ندارم ، زیرا پس از دوبار تلاش من نتایج بسیار خوبی دارد.
  • کارت صدا USB - می توانید یکی از این موارد را با قیمت مناسب پیدا کنید. با توجه به این آموزش دوست داشتنی Adafruit (یکی از بسیاری از موارد) ، شما باید از چیزی استفاده کنید که از چیپست CM109 برای حداکثر سازگاری استفاده می کند.
  • LCD کاراکتر - مکانهای مختلفی برای دریافت آنها وجود دارد ، اما به نظر می رسد که پین ها بسیار استاندارد هستند. اطمینان حاصل کنید که نور پس زمینه دارید تا بتوانید هنگام بازی در باشگاه های دودی ، تنظیمات از پیش تنظیم شده خود را مشاهده کنید.
  • استامپ سوئیچ های لحظه ای (2) - بدست آوردن آن کمی سخت تر است ، اما به جای تغییر حالت ، لحظه ای شدم تا بتوانم تنوع بیشتری داشته باشم. اگر چنین رفتاری را بخواهم می توانم تغییر حالت نرم افزار را شبیه سازی کنم ، اما به این ترتیب می توانم عملکردهای متفاوتی برای ضربه سریع ، فشار طولانی و غیره داشته باشم.
  • Adafruit Perma -Proto Hat for Pi - این به من کمک کرد تا LCD و سایر قطعات را بدون اشغال فضای زیاد به پورت گسترش دهنده Pi متصل کنم. اگر سعی می کردم از تخته معمولی معمولی استفاده کنم ، مجبور بودم از کناره های Pi بیرون بیایم تا به همه پین های GPIO لازم متصل شوم. آبکاری دو طرفه و سوراخ های نصب مناسب نیز بسیار مفید بودند. با توجه به همه اینها ، واقعاً ارزان ترین گزینه بود.
  • اتصالات USB-1 عدد زن نوع B برای تغذیه ، و دو عدد نوع A و زن از نوع A که می توانید با آنها چند کابل ضخیم و انعطاف پذیر برای اتصالات داخلی بسازید.
  • پریزهای صوتی 1/4 اینچی - من از یک استریو و یک مونو استفاده کردم. به این ترتیب استریو می تواند جک هدفون/مونو باشد یا در صورت وصل بودن جک دیگر ، سیگنال سمت چپ را حمل کند.

مرحله 1: الکترونیک داخلی

الکترونیک داخلی
الکترونیک داخلی
الکترونیک داخلی
الکترونیک داخلی
الکترونیک داخلی
الکترونیک داخلی

ما LCD و اجزای مرتبط با آن و دکمه های فشار را به Pi Hat متصل می کنیم. همچنین ، برای اتصال برق و دستگاه MIDI ، به ترتیب یک جک USB-B و USB-A اضافه می کنیم. ما پورت USB-A را به طرف دیگر می آوریم زیرا برای اتصال کارت صدا باید از یکی از درگاه های USB Pi استفاده کنیم که می خواهیم داخل محفظه باشد ، بنابراین نمی توانیم پورت های USB را کنار جعبه قرار دهیم. من از پورت USB-B برای تغذیه استفاده کردم زیرا احساس می کردم مجازات بیشتری نسبت به اتصال برق میکرو USB Pi دارد ، به علاوه من نمی توانم جهت مناسبی را پیدا کنم که کانکتور به هر حال در کنار لبه جعبه باشد.

شما باید از چاقو برای بریدن آثار بین سوراخ هایی که در پین های جک های USB لحیم می کنید ، استفاده کنید. فقط مراقب باشید که هیچ یک از آثار داخلی برد را که سایر پین ها را به هم متصل می کند قطع نکنید - یا اگر به طور تصادفی (مانند من) آنها را با استفاده از سیم جامپر وصل کنید. پین های Vcc و GND جک USB-B به ترتیب در پورت توسعه دهنده Pi به 5V و GND می رود. به این ترتیب شما می توانید stompbox خود را با یک شارژر تلفن (با فرض اینکه آمپر کافی داشته باشد - به نظر می رسد 700mA برای من کار می کند ، اما ممکن است بخواهید بیشتر مطمئن شوید که پورت USB دارای آب کافی برای کنترل کنترل شما است) و یک کابل USB A -B.

به نظر من طول کابل روبان برای اتصال چیزها با پین های زیاد بدون داشتن اسپاگتی سیم زیاد بسیار خوب عمل می کند. من این کار را بجای اینکه سربرگ های مردانه را به LCD بچسبانم و سپس آن را در کلاه لحیم کنم ، زیرا احساس می کردم برای قرار دادن LCD نیاز به آزادی دارم تا بتوانم آن را به خوبی متمرکز کنم. LCD باید دارای یک پتانسیومتر باشد که از آن برای تنظیم کنتراست استفاده می کنید - مطمئن شوید که آن را در جایی قرار داده اید که توسط LCD پوشانده نمی شود ، بنابراین می توانید در جعبه سوراخی ایجاد کنید تا به آن برسید و یکبار کنتراست را تنظیم کنید. همه چیز جمع شده است

برای جزئیات بیشتر در مورد آنچه در کجا متصل می شود ، با شماتیک مشورت کنید. توجه داشته باشید که دکمه های فشار به 3.3V متصل هستند - نه 5V! پین های GPIO فقط برای 3.3V رتبه بندی شده اند - 5V به CPU شما آسیب می رساند. جک USB-A به نوار دیگری از کابل روبان متصل می شود ، سپس می توانید آن را به یک پلاگین USB لحیم کنید که برای کنترل MIDI خود به یکی از پورت های USB Pi متصل می کنید. هرگونه فلز اضافی را از پلاگین جدا کنید تا کمتر بیرون بیاید و از چسب داغ برای تسکین فشار استفاده کنید - لازم نیست زیبا باشد زیرا در داخل جعبه پنهان می شود.

مرحله 2: سیم کشی خروجی صدا

سیم کشی خروجی صدا
سیم کشی خروجی صدا
سیم کشی خروجی صدا
سیم کشی خروجی صدا
سیم کشی خروجی صدا
سیم کشی خروجی صدا

مهم نیست که یک کارت صدا USB کوچک پیدا کنید ، به احتمال زیاد آن یا دوشاخه آن از پورت های USB Pi بسیار دور می شود تا همه چیز در جعبه جا بگیرد. بنابراین ، کانکتور USB کوتاه دیگری را از کابل روبان ، دوشاخه های USB و چسب حرارتی به هم وصل کنید ، همانطور که در تصویر بالا نشان داده شده است. کارت صدای من هنوز آنقدر ضخیم بود که در محفظه با هر چیز دیگری جا نمی گرفت ، بنابراین پلاستیک را بیرون آوردم و آن را در نواری چسباندم تا از کوتاه شدن اجسام جلوگیری کند.

برای دریافت صدا از کارت صدا به جک های 1/4 اینچی ، انتهای هدفون 3.5 میلی متری یا کابل AUX را قطع کنید. مطمئن شوید که دارای 3 کانکتور - نوک ، زنگ و آستین (TRS) است ، در مقابل 2 یا 4. آستین باید زمین باشد ، نوک معمولاً کانال راست است و حلقه (اتصال وسط) معمولاً چپ است. شما فقط می توانید نوک و حلقه را به دو جک 1/4 اینچی مونو (TS - نوک ، آستین) متصل کرده و انجام دهید با آن ، اما با کمی سیم کشی اضافی می توانید تنوع بیشتری کسب کنید. جک TS را پیدا کنید که سومین تماس لحظه ای را داشته باشد ، همانطور که در نمودار بالا نشان داده شده است. قرار دادن یک پلاگین این تماس را از بین می برد ، بنابراین همانطور که می توانید از نمودار بفهمید سیگنال سمت چپ در صورت قرار گرفتن یک پلاگین به جک TS و در صورت عدم قرار دادن پلاگین به حلقه جک TRS می رود. به این ترتیب می توانید هدفون را به جک استریو ، یک کابل منفرد به جک استریو برای سیگنال ترکیبی راست/چپ (مونو) یا یک کابل در هر جک برای خروجی های جداگانه راست و چپ (استریو) وصل کنید.

من پین های پایه جک ها را به سیم کابل که از کارت صدا می آید متصل کردم ، به طوری که همه چیز در جعبه یکسان است و از وزوز تند و زننده حلقه های زمین جلوگیری می کنم. با این حال ، بسته به آنچه که به آن وصل هستید ، ممکن است تأثیر عکس داشته باشد - بنابراین ممکن است بخواهید یک سوئیچ برای اتصال یا "بلند کردن" زمین روی جک های 1/4 "داشته باشید.

مرحله 3: آماده سازی محفظه

آماده سازی محفظه
آماده سازی محفظه
آماده سازی محفظه
آماده سازی محفظه
آماده سازی محفظه
آماده سازی محفظه

این مرحله برش سوراخ های روی جعبه برای صفحه ، دکمه ها ، اتصالات و غیره را پوشش می دهد و حالت های اپوکسی را در محفظه برای نصب کلاه Pi پوشش می دهد.

با قرار دادن همه اجزا در محفظه شروع کنید تا مطمئن شوید همه چیز مناسب است و به درستی جهت گیری شده است. سپس ، با دقت اندازه گیری کرده و محل ایجاد سوراخ را مشخص کنید. هنگام برش سوراخ های گرد ، توصیه می کنم با کمی کوچک شروع کنید و تا اندازه ای که نیاز دارید کار کنید - مرکز کردن سوراخ راحت تر است و به احتمال زیاد مته شما گیر می کند. سوراخ های مستطیلی را می توان با حفر سوراخ در گوشه های مخالف دهانه مورد نظر بریده ، سپس با اره منبت کاری اره مویی به دو گوشه دیگر برید. این ضخامت آلومینیوم در واقع با اره منبت کاری اره مویی تا زمانی که به آرامی پیش بروید قطع می شود. یک فایل مربع برای مربع کردن گوشه های دهانه بسیار مفید است. در صورت داشتن کابل های چربی ، دهانه های دوشاخه USB را کمی سخاوتمندانه کنید.

اپوکسی دو مرحله ای (مانند چسب گوریل در تصویر) به خوبی کار می کند تا استندهای کلاه را روی محفظه فلزی قرار دهد. سطح محفظه و قسمت پشتی را کمی با پشم فولاد یا پیچ گوشتی خراش دهید تا اپوکسی بتواند چسبندگی بهتری بگیرد. من توصیه می کنم قبل از چسباندن کلاه Pi ، آنها را به چسب بزنید تا بدانید که آنها به درستی قرار گرفته اند - اتاق تکان زیاد در اینجا وجود ندارد. من فقط از سه مرحله استفاده کردم زیرا LCD من در حالت چهارم بود. دو جزء اپوکسی را با هم مخلوط کرده ، مقداری را روی استون قرار دهید و آنها را در محل خود محکم کنید. از تکان دادن یا تغییر موقعیت قطعات پس از بیش از 10-15 ثانیه خودداری کنید ، در غیر این صورت پیوند شکننده می شود. 24 ساعت زمان دهید تا راه اندازی شود تا بتوانید به کار خود ادامه دهید. چند روز طول می کشد تا به طور کامل درمان شود ، بنابراین بی مورد به پیوند استرس وارد نکنید.

مگر اینکه می خواهید سرگرمی دیگری را با رنگ آمیزی شکم ایجاد کنید ، پیشنهاد می کنم آلومینیوم را برهنه بگذارید (در واقع ظاهر بدی نیست) یا یک محوطه از قبل رنگ آمیزی شده بخرید. رنگ نمی خواهد به فلز متصل شود. اگر می خواهید آن را امتحان کنید ، همه جا را که می خواهید رنگ به آن بچسبد ، ماسه بزنید ، ابتدا از یک اسپری رنگ بدنه اتوماتیک خوب استفاده کنید ، چند لایه از رنگ مورد نظر خود را بمالید ، سپس بگذارید تا جایی که ممکن است خشک شود. به طور جدی - دیوانه ها روی تابلوهای پیام چیزهایی را نشان می دهند مانند گذاشتن آن به مدت سه ماه در معرض نور مستقیم خورشید یا در اجاق توستری که به مدت یک هفته روی دمای پایین تنظیم شده است. پس از خرد کردن بقایای چروکیده و لایه برداری اولین کار رنگ آمیزی ، تلاش دوم من هنوز از چیزهایی مانند قلم های موجود در کیف من چیپس و گاز می گیرد و می توان با ناخن آن را خم کرد. تصمیم گرفتم تسلیم شوم و به سبک پانک رفتم و از حروف سفید برای حروف استفاده کردم.

مرحله 4: راه اندازی نرم افزار

راه اندازی نرم افزار
راه اندازی نرم افزار
راه اندازی نرم افزار
راه اندازی نرم افزار

قبل از اینکه همه چیز را در stompbox قرار دهید و آن را محکم خراب کنید ، باید نرم افزاری را روی Raspberry Pi راه اندازی کنید. پیشنهاد می کنم با نصب جدید سیستم عامل Raspbian شروع کنید ، بنابراین یک نسخه اخیر از سایت Raspberry Pi Foundation دریافت کنید و دستورالعمل های آنجا را دنبال کنید تا آن را روی کارت SD تصویر کنید. یک صفحه کلید و صفحه بگیرید یا از کابل کنسول برای اولین بار وارد سیستم Pi خود شوید و به خط فرمان بروید. برای اطمینان از جدیدترین به روز رسانی نرم افزار و سیستم عامل ، وارد شوید

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

sudo rpi-update

در مرحله بعد ، می خواهید مطمئن شوید که می توانید از wifi برای ssh به Pi استفاده کنید و پس از بستن داخل محفظه ، تغییرات را ایجاد کنید. ابتدا با تایپ کردن سرور ssh را روشن کنید

sudo raspi-config

و رفتن به "Interfacing Options" و فعال کردن سرور ssh. اکنون ، با ویرایش فایل wpa_supplicant.conf ، یک شبکه بی سیم به pi اضافه کنید:

sudo vi /etc/wpa_supplicant/wpa_supplicant.conf

و خطوط زیر را در انتها اضافه کنید:

شبکه = {

ssid = "your-network" psk = "your-password"}

شبکه و رمز عبور خود را با مقادیری برای هر شبکه ای که می خواهید Pi به طور پیش فرض به آن متصل شود جایگزین کنید-به احتمال زیاد روتر وای فای شما در خانه ، یا شاید نقطه اتصال تلفن شما یا لپ تاپ در حالت نقطه دسترسی اجرا می شود. یک راه حل دیگر برای اتصال به Pi این است که آن را به عنوان نقطه دسترسی wifi تنظیم کنید ، به طوری که بدون توجه به جایی که هستید ، فقط بتوانید به آن متصل شوید. رابط کاربری که در زیر نوشتم همچنین به شما امکان می دهد دستگاه بلوتوث دیگری را با Pi جفت کنید ، پس از آن می توانید با استفاده از سریال بلوتوث به آن متصل شوید.

برای نصب FluidSynth ، تایپ کنید

sudo apt-get install fluidsynth

فایلهای پیوست شده به این مرحله یک رابط بین کنترلهای stompbox و FluidSynth ارائه می دهند و باید در فهرست /home /pi کپی شوند. در اینجا توضیح کوتاهی در مورد کار هر فایل وجود دارد:

  • squishbox.py - یک اسکریپت پایتون که با نمونه FluidSynth شروع و ارتباط برقرار می کند ، ورودی های دکمه های stompbox را می خواند و اطلاعات را روی LCD می نویسد.
  • config_squishbox.yaml - یک فایل پیکربندی در قالب (عمدتاً) YAML قابل خواندن توسط انسان که اطلاعات تنظیمات و وصله برنامه squishbox را ذخیره می کند
  • fluidsynth.py - یک حلقه پایتون که اتصالات C را در کتابخانه FluidSynth فراهم می کند ، با تعداد زیادی پیوند اضافی که من برای دسترسی بیشتر به قابلیت های FluidSynth اضافه کرده ام.
  • ModWaves.sf2 - یک فونت صوتی بسیار کوچک که برای نشان دادن استفاده و قدرت تعدیل کننده ها در قالب Soundfont ارائه دادم

داشتن یک اسکریپت پایتون فرآیند FluidSynth را تنظیم کرده و همه موارد دکمه/LCD را به خوبی کار می کند - پیامهای MIDI مستقیماً به FluidSynth می روند و اسکریپت فقط در مواقع ضروری با آن تعامل دارد.

اسکریپت پایتون به چند کتابخانه پایتون نیاز دارد که به طور پیش فرض نصب نشده اند. می توانید آنها را مستقیماً از فهرست بسته پایتون با استفاده از ابزار مفید دستی نصب کنید:

sudo pip RPLCD pyyaml را نصب کنید

در نهایت ، شما می خواهید Pi اسکریپت پایتون را در بوت اجرا کند. برای تحقق این امر ، فایل rc.local را ویرایش کنید:

sudo vi /etc/rc.local

خط زیر را درست قبل از خط نهایی "خروج 0" در فایل وارد کنید:

پایتون /home/pi/squishbox.py &

مرحله 5: مونتاژ نهایی

مجمع نهایی
مجمع نهایی
مجمع نهایی
مجمع نهایی
مجمع نهایی
مجمع نهایی

قبل از قرار دادن تمام قطعات در جعبه ، ایده بسیار خوبی است که همه چیز را وصل کرده و مطمئن شوید که نرم افزار کار می کند ، همانطور که در تصاویر بالا نشان داده شده است. تصاویر 3-6 تمام قسمتهای جداگانه و تدریجی نحوه قرارگیری آنها در جعبه من را نشان می دهد. LCD در واقع با فشار دادن سیم ها به آن ثابت است ، اما اگر دوست ندارید می توانید از چسب حرارتی استفاده کنید یا چند پیچ دیگر نصب کنید. نوار چسب نارنجی روی درب جعبه برای جلوگیری از اتصال کوتاه Pi به فلز است.

ممکن است مجبور شوید آزمایش کنید و پیکربندی مجدد کنید تا همه چیز متناسب شود. چسبناک خوب است - هرچه قطعات کمتری در جعبه بچرخند ، بهتر است. به نظر نمی رسد گرما مشکلی باشد و من هیچ مشکلی با مسدود شدن سیگنال wifi توسط محفظه نداشتم. در عکس چند پایه لاستیکی چسبناک (می توانید آنها را در یک فروشگاه سخت افزار پیدا کنید) در قسمت پایین جعبه قرار داده شده است تا هنگام نشستن با پا ، از سر خوردن جلوگیری کند.

مراقب برخورد ناگهانی/له شدن/خم شدن هنگام پیچ خوردن همه چیز باشید. نکته ای که باید بررسی شود این است که هنگام قرار دادن کابل ها فضای کافی برای جک های 1/4 اینچی وجود دارد - نکات کمی بیشتر از مخاطبین جک بیرون می آیند. همچنین ، در ساخت من Pi را کمی خیلی نزدیک به لبه نصب کردم. جعبه و لب روی درپوش را به انتهای کارت SD فشار داده و آن را برید - من مجبور شدم شکافی در لب بزنم تا این اتفاق نیفتد.

مرحله 6: استفاده

Image
Image
استفاده
استفاده
استفاده
استفاده

ماژول صوتی که در این مراحل شرح داده ام و اجرای نرم افزار ارائه شده در بالا بسیار قابل استفاده و قابل توسعه است ، اما تغییرات/تغییرات زیادی امکان پذیر است. من فقط رابط کاربری را در اینجا به طور مختصر توضیح خواهم داد - قصد دارم آن را به طور مداوم در مخزن github به روز کنم ، جایی که امیدوارم ویکی به روز شده ای نیز در آن نگهداری کنم. در نهایت ، من در مورد چگونگی تغییر تنظیمات ، اضافه کردن صداهای جدید و ایجاد تغییرات خود بحث خواهم کرد.

برای شروع ، کنترلر USB MIDI را به جک USB-A جعبه ، منبع تغذیه 5 ولت را به جک USB-B وصل کنید و هدفون یا آمپر را وصل کنید. پس از مدتی LCD یک پیام "squishbox v xx.x" نشان می دهد. هنگامی که شماره و نام پچ ظاهر می شود ، باید بتوانید یادداشت ها را پخش کنید. با ضربه زدن کوتاه بر روی هر دکمه وصله را تغییر می دهید ، نگه داشتن هر دکمه برای چند ثانیه شما را وارد منوی تنظیمات می کند و نگه داشتن هر دکمه به مدت تقریبا پنج ثانیه به شما این امکان را می دهد که برنامه را مجدداً راه اندازی کنید ، Pi را راه اندازی مجدد کنید یا Pi را خاموش کنید (NB Pi هنگامی که متوقف می شود ، پین GPIO خود را قطع نمی کند ، بنابراین LCD هرگز خاموش نمی شود. فقط 30 ثانیه صبر کنید تا آن را از برق بکشید).

گزینه های منوی تنظیمات عبارتند از:

  • Update Patch - هرگونه تغییری که در وصله فعلی ایجاد کرده اید را در فایل ذخیره می کند
  • ذخیره پچ جدید - وصله فعلی و هرگونه تغییر را به عنوان وصله جدید ذخیره می کند
  • بانک را انتخاب کنید - فایل پیکربندی می تواند چندین مجموعه وصله داشته باشد ، این به شما امکان می دهد بین آنها جابجا شوید
  • Set Gain - حجم کلی خروجی را تنظیم کنید (گزینه «افزایش» fluidsynth) ، خیلی زیاد خروجی مخدوش می کند
  • Chorus/Reverb - تنظیمات reverb و chorus مجموعه فعلی را تغییر دهید
  • MIDI Connect - سعی کنید یک دستگاه MIDI جدید را در صورت تعویض در حین اجرای برنامه متصل کنید
  • Bluetooth Pair - Pi را در حالت کشف قرار دهید تا بتوانید دستگاه بلوتوث دیگری را با آن جفت کنید
  • وضعیت Wifi - آدرس IP فعلی Pi را گزارش دهید تا بتوانید به آن ssh وارد شوید

فایل config_squishbox.yaml حاوی اطلاعاتی است که هر پچ را توصیف می کند ، و همچنین مواردی مانند مسیریابی MIDI ، پارامترهای جلوه ها و غیره. با فرمت YAML نوشته شده است ، که روشی چند زبانه برای نمایش داده هایی است که رایانه ها می توانند تجزیه کنند ، اما انسان نیز هستند -قابل خواندن این می تواند کاملاً پیچیده باشد ، اما در اینجا من فقط از آن به عنوان راهی برای نشان دادن ساختار لغت نامه های تودرتو پایتون (آرایه های همراه/هش در زبان های دیگر) ، و توالی ها (لیست ها/آرایه ها) استفاده می کنم. من نظرات زیادی را در نمونه فایل پیکربندی قرار دادم و سعی کردم آن را طوری ساختار دهم که بتوان به تدریج دید که هر ویژگی چه کار می کند. اگر کنجکاو هستید نگاهی بیندازید و آزمایش کنید و سوالات خود را در نظرات مطرح کنید. فقط با ویرایش این فایل می توانید کارهای زیادی را برای تغییر صداها و عملکرد ماژول انجام دهید. می توانید از راه دور وارد شوید و ویرایش کنید ، یا یک فایل پیکربندی تغییر یافته را به Pi FTP کنید ، سپس با استفاده از رابط یا تایپ مجدد راه اندازی کنید.

sudo python /home/pi/squishbox.py &

در خط فرمان اسکریپت به گونه ای نوشته شده است که هنگام شروع ، سایر موارد در حال اجرا را از بین ببرد ، بنابراین هیچ درگیری ایجاد نمی شود. اسکریپت هنگامی که برای اتصال دستگاه های MIDI شکار می شود ، چندین هشدار را روی خط فرمان تف می کند و در مکان های مختلف برای فونت های صوتی شما ظاهر می شود. خراب نیست ، این فقط برنامه نویسی تنبلی من است - من می توانم آنها را بگیرم اما ادعا می کنم که آنها تشخیصی هستند.

هنگامی که FluidSynth را نصب می کنید ، صدای صوتی FluidR3_GM.sf2 رایگان بسیار خوبی را دریافت خواهید کرد. GM مخفف MIDI عمومی است ، به این معنی که شامل "همه" ابزارهایی است که به شماره های از پیش تعیین شده و بانکی مورد توافق عمومی اختصاص داده شده است تا پخش کننده های MIDI که فایل ها را با استفاده از این صدا پخش می کنند بتوانند تقریباً صدای مناسب برای پیانو ، ترومپت را پیدا کنند. ، گونی ، و غیره مهمتر از همه ، مشخصات soundfont به طور گسترده ای موجود است ، در واقع بسیار قدرتمند است و یک ویرایشگر منبع باز فوق العاده برای فونت های صوتی به نام Polyphone وجود دارد. با استفاده از این می توانید فونت های صوتی خود را از فایل های WAV خام بسازید ، به علاوه می توانید تعدیل کننده ها را به فونت های خود اضافه کنید. تعدیل کننده ها به شما امکان می دهند بسیاری از عناصر سنتز (مانند پاکت ADSR ، پاکت مدولاسیون ، LFO و غیره) را در زمان واقعی کنترل کنید. فایل ModWaves.sf2 که در بالا آورده ام ، نمونه ای از استفاده از تعدیل کننده ها را ارائه می دهد تا به شما اجازه دهد رزونانس فیلتر و فرکانس قطع را به یک پیام MIDI تغییر کنترل (که می تواند توسط یک دکمه/لغزنده روی کنترلر شما ارسال شود) ترسیم کنید. پتانسیل بسیار زیادی در اینجا وجود دارد - برو بازی!

امیدوارم این آموزش ایده های زیادی را ایجاد کند و به دیگران چارچوبی مناسب برای ایجاد خلاقیت های منحصر به فرد خود و همچنین پشتیبانی از در دسترس بودن و توسعه فونت های صوتی خوب ، مشخصات صوت صدا و نرم افزار رایگان عالی مانند FluidSynth و Polyphone ارائه دهد. به ساختاری که در اینجا بیان کردم نه بهترین و نه تنها راهی برای کنار هم قرار دادن چنین چیزی است. از نظر سخت افزاری ، تغییرات احتمالی ممکن است یک جعبه بزرگتر با دکمه های بیشتر ، ورودی/خروجی MIDI قدیمی (5 پین) و/یا ورودی های صوتی باشد. اسکریپت پایتون را می توان اصلاح کرد (با عرض پوزش از اظهار نظر پراکنده من) تا رفتارهای دیگری را که برای شما مناسب تر است ارائه کنم - من در فکر اضافه کردن یک حالت "جلوه ها" به هر پچ هستم که در آن مانند یک stompbox جلوه های واقعی عمل می کند و تنظیمات را تغییر می دهد. و خاموش همچنین می توانید برخی نرم افزارهای اضافی را برای ارائه جلوه های صوتی دیجیتال اضافه کنید. من همچنین فکر می کنم بهتر است Pi در حالت wifi AP اجرا شود ، همانطور که در بالا توضیح داده شد ، و حتی می تواند یک رابط وب دوستانه برای ویرایش فایل پیکربندی ارائه دهد. لطفاً در صورت تمایل نظرات/سوالات/بحث خود را در فید نظرات ارسال کنید.

من می خواهم به سازندگان FluidSynth و Polyphone برای ارائه نرم افزار رایگان و منبع باز که همه ما می توانیم برای ساختن موسیقی عالی از آنها استفاده کنیم ، پیشنهادات عظیمی را ارائه دهم. من دوست دارم از این وسیله استفاده کنم ، و شما آن را ممکن کردید!

توصیه شده: