Mục lục:

Raspberry Pi Stompbox Synth Module: 6 bước (có hình ảnh)
Raspberry Pi Stompbox Synth Module: 6 bước (có hình ảnh)

Video: Raspberry Pi Stompbox Synth Module: 6 bước (có hình ảnh)

Video: Raspberry Pi Stompbox Synth Module: 6 bước (có hình ảnh)
Video: NeuralPi : RaspberryPi Guitar Pedal using Neural Networks 2024, Tháng bảy
Anonim
Raspberry Pi Stompbox Synth Module
Raspberry Pi Stompbox Synth Module
Raspberry Pi Stompbox Synth Module
Raspberry Pi Stompbox Synth Module

Mục tiêu của dự án này là đưa mô-đun âm thanh dựa trên Fluidsynth vào một stompbox. Thuật ngữ âm thanh kỹ thuật "mô-đun âm thanh" trong trường hợp này có nghĩa là một thiết bị nhận các thông điệp MIDI (tức là giá trị nốt, âm lượng, độ cong cao độ, v.v.) và tổng hợp âm thanh âm nhạc thực tế. Kết hợp điều này với một bộ điều khiển MIDI - loại quân đoàn, giá rẻ và thường rất tuyệt (như bàn phím!) - và bạn có một bộ tổng hợp mà bạn có thể sửa đổi và tinh chỉnh liên tục, đồng thời thiết kế theo cách phù hợp với phong cách chơi của bạn.

Tổng quan chung về dự án này là chúng tôi lấy một máy tính linux một bo mạch nhỏ (trong trường hợp này là Raspberry Pi 3), gắn một màn hình LCD ký tự, một vài nút nhấn và một card âm thanh USB (vì âm thanh tích hợp của Pi không tốt lắm). Sau đó, chúng tôi định cấu hình phần mềm bên trong để chạy một chương trình khi khởi động chạy FluidSynth (một bộ tổng hợp phần mềm miễn phí, đa nền tảng, tuyệt vời), điều khiển màn hình LCD và cho phép chúng tôi thay đổi các bản vá và cài đặt bằng cách sử dụng các nút bấm.

Tôi sẽ không đi vào chi tiết từng bước một về bản dựng này (có rất nhiều hướng dẫn về ốp lưng hey-i-made-a-cool-raspberry-pi-case), nhưng thay vào đó sẽ cố gắng tập trung vào lý do tại sao tôi làm các lựa chọn khác nhau trong việc xây dựng và thiết kế như tôi đã đi. Bằng cách này, bạn hy vọng có thể thực hiện các sửa đổi cho phù hợp với mục đích của mình mà không gặp khó khăn khi làm những việc mà sau này không hiệu quả.

CẬP NHẬT (tháng 5 năm 2020): Mặc dù tài liệu hướng dẫn này vẫn là một nơi tuyệt vời để bắt đầu cho một dự án như thế này, nhưng tôi đã thực hiện rất nhiều cải tiến về cả mặt phần cứng và phần mềm. Phần mềm mới nhất là FluidPatcher, có sẵn trên GitHub - hãy xem wiki để biết nhiều chi tiết về cách thiết lập mọi thứ cho Raspberry Pi. Hãy xem trang web của tôi Geek Funk Labs để biết tin tức và cập nhật liên tục về SquishBox!

Quân nhu

Đây là danh sách ngắn (và giải thích cho) các thành phần quan trọng hơn:

  • Máy tính Raspberry Pi 3 - Bất kỳ máy tính linux bo mạch đơn nào cũng có thể hoạt động, nhưng Pi 3 có đủ sức mạnh xử lý để chạy Fluidsynth mà không có bất kỳ độ trễ nào và đủ bộ nhớ để tải soundfonts lớn. Hạn chế là nó có âm thanh tích hợp kém, vì vậy bạn cần một card âm thanh USB. CHIP là một giải pháp thay thế mà tôi đang khám phá (dấu chân nhỏ hơn, âm thanh tốt hơn, nhưng ít bộ nhớ / bộ xử lý hơn)
  • Hộp đựng Hammond 1590BB - Tôi khuyên bạn nên mua loại được sơn tĩnh điện sẵn nếu bạn muốn có màu, trừ khi bạn thích sơn hộp đựng. Tôi đã duyệt qua rất nhiều bảng tin nhưng tôi nghĩ mình không đủ kiên nhẫn hoặc không chọn được loại sơn phù hợp, vì sau hai lần thử, kết quả của tôi khá tệ.
  • Card âm thanh USB - Bạn có thể tìm thấy một chiếc thích hợp trong số này với giá khá rẻ. Theo hướng dẫn Adafruit đáng yêu này (một trong nhiều hướng dẫn), bạn nên gắn bó với một hướng dẫn sử dụng chipset CM109 để có khả năng tương thích tối đa.
  • Character LCD - có nhiều nơi khác nhau để lấy chúng, nhưng sơ đồ chân có vẻ khá chuẩn. Đảm bảo rằng bạn có đèn nền để bạn có thể nhìn thấy các cài đặt trước của mình khi chơi ở các câu lạc bộ đầy khói.
  • Giậm chân tại chỗ (2) - Khó kiếm hơn một chút, nhưng tôi nhận được ngay lập tức thay vì chuyển đổi để tôi có thể linh hoạt hơn. Tôi có thể mô phỏng chuyển đổi trong phần mềm nếu tôi muốn hành vi đó, nhưng bằng cách này, tôi cũng có thể có các chức năng khác nhau để nhấn nhanh, nhấn và giữ, v.v.
  • Adafruit Perma-Proto Hat cho Pi - Điều này đã giúp tôi kết nối màn hình LCD và các thành phần khác với cổng mở rộng của Pi mà không chiếm nhiều dung lượng. Nếu tôi cố gắng sử dụng bảng điều khiển thông thường, nó sẽ phải thò ra ngoài các cạnh của Pi để tôi kết nối với tất cả các chân GPIO cần thiết. Lớp mạ hai mặt và các lỗ gắn khớp cũng rất hữu ích. Xét về tất cả, nó thực sự là lựa chọn rẻ nhất.
  • Đầu nối USB - 1 đầu cái loại B để cấp nguồn, và hai đầu cái loại A dành cho nam và nữ để tạo ra một số cáp mở rộng linh hoạt, mỏng cho các kết nối nội bộ.
  • Giắc cắm âm thanh 1/4 "- Tôi đã sử dụng một âm thanh nổi và một âm thanh đơn âm. Bằng cách đó, âm thanh nổi có thể là giắc cắm tai nghe / đơn âm hoặc chỉ mang tín hiệu bên trái nếu giắc cắm kia được kết nối.

Bước 1: Điện tử nội bộ

Điện tử nội bộ
Điện tử nội bộ
Điện tử nội bộ
Điện tử nội bộ
Điện tử nội bộ
Điện tử nội bộ

Chúng tôi sẽ kết nối màn hình LCD và các thành phần liên quan cũng như các nút bấm với Mũ Pi. Ngoài ra, chúng tôi sẽ thêm một giắc cắm USB-B và USB-A để kết nối nguồn điện và thiết bị MIDI tương ứng. Chúng tôi chuyển cổng USB-A sang vì chúng tôi cần sử dụng một trong các cổng USB của Pi để kết nối card âm thanh, cái mà chúng tôi muốn có bên trong hộp, vì vậy chúng tôi không thể đặt các cổng USB ở cạnh hộp. Tôi đã sử dụng cổng USB-B để cấp nguồn vì tôi cảm thấy nó có thể bị trừng phạt nhiều hơn so với đầu nối nguồn micro-USB của Pi, cộng với việc tôi không thể tìm thấy hướng tốt nơi đầu nối có thể nằm cạnh cạnh hộp.

Bạn sẽ cần dùng dao để cắt các vết giữa các lỗ nơi bạn sẽ hàn các chân cho giắc cắm USB. Chỉ cần cẩn thận để không cắt bất kỳ dấu vết bên trong nào trong bảng kết nối các chân khác - hoặc nếu bạn vô tình làm (như tôi) kết nối lại chúng bằng dây nhảy. Các chân Vcc và GND của giắc cắm USB-B đi tới 5V và GND trên cổng bộ mở rộng của Pi. Bằng cách này, bạn có thể cấp nguồn cho stompbox của mình bằng bộ sạc điện thoại (giả sử nó có đủ cường độ dòng điện - 700mA dường như phù hợp với tôi, nhưng bạn có thể muốn nhiều hơn để đảm bảo rằng cổng USB có đủ năng lượng để cấp nguồn cho bộ điều khiển của bạn) và cáp USB A-B.

Tôi thấy rằng độ dài của cáp ruy-băng hoạt động thực sự tốt để kết nối những thứ có nhiều chân mà không có quá nhiều sợi mì Ý. Tôi đã làm điều này chứ không phải hàn các đầu đực vào màn hình LCD và sau đó hàn nó vào mũ vì tôi cảm thấy mình cần một chút tự do để định vị màn hình LCD để có thể căn giữa một cách đẹp mắt. Màn hình LCD phải đi kèm với một chiết áp mà bạn sử dụng để điều chỉnh giới hạn - hãy đảm bảo bạn đặt thiết bị này ở vị trí mà nó sẽ không bị màn hình LCD che, vì vậy bạn có thể tạo một lỗ trên hộp để tiếp cận nó và điều chỉnh độ tương phản một lần mọi thứ đã được lắp ráp.

Tham khảo sơ đồ để biết chi tiết về những gì được kết nối ở đâu. Lưu ý rằng các nút bấm được kết nối với 3.3V - không phải 5V! Các chân GPIO chỉ được định mức 3.3V - 5V sẽ làm hỏng CPU của bạn. Giắc cắm USB-A được kết nối với một dải cáp ribbon khác, sau đó bạn có thể hàn vào phích cắm USB mà bạn sẽ kết nối với một trong các cổng USB của Pi cho bộ điều khiển MIDI của mình. Cắt bất kỳ kim loại thừa nào khỏi phích cắm để nó ít nhô ra hơn và sử dụng keo nóng để giảm căng - nó không cần phải đẹp vì nó sẽ được giấu bên trong hộp.

Bước 2: Kết nối đầu ra âm thanh

Kết nối đầu ra âm thanh
Kết nối đầu ra âm thanh
Kết nối đầu ra âm thanh
Kết nối đầu ra âm thanh
Kết nối đầu ra âm thanh
Kết nối đầu ra âm thanh

Cho dù bạn tìm thấy một card âm thanh USB nhỏ như thế nào, nó hoặc phích cắm của nó có thể sẽ nhô ra quá xa so với các cổng USB của Pi để mọi thứ nằm gọn trong hộp. Vì vậy, hãy hàn với nhau một đầu nối USB ngắn khác ra khỏi một số cáp ruy-băng, phích cắm USB và keo nóng như trong hình trên. Card âm thanh của tôi vẫn hơi quá chật để có thể nhét vừa trong hộp với mọi thứ khác, vì vậy tôi đã mở miếng nhựa ra và quấn nó trong một số băng keo để giữ cho nó không bị chập vào những thứ khác.

Để truyền âm thanh từ thẻ âm thanh đến giắc cắm 1/4 ", hãy cắt đầu cắm tai nghe 3,5 mm hoặc cáp AUX. Đảm bảo rằng nó có 3 đầu nối - đầu, vòng và ống bọc (TRS), thay vì 2 hoặc 4. Ống bọc phải được nối đất, đầu mút thường là kênh bên phải và vòng (đầu nối giữa) thường ở bên trái. Bạn chỉ cần kết nối đầu và vòng với hai giắc cắm mono (TS - đầu, ống tay) 1/4 "là xong với nó, nhưng bạn có thể linh hoạt hơn với một chút dây bổ sung. Tìm giắc cắm TS có tiếp điểm tạm thời thứ ba, như được chỉ ra sơ đồ trong sơ đồ trên. Việc chèn phích cắm sẽ phá vỡ tiếp điểm này, vì vậy bạn có thể hy vọng từ sơ đồ cho biết tín hiệu bên trái sau đó sẽ chuyển đến giắc TS nếu cắm phích cắm và đến vòng của giắc TRS nếu không cắm phích cắm nào. Bằng cách này, bạn có thể cắm tai nghe vào giắc cắm âm thanh nổi, một cáp mono vào giắc cắm âm thanh nổi để có tín hiệu kết hợp phải / trái (đơn âm) hoặc cáp trong mỗi giắc cắm cho các đầu ra trái và phải (âm thanh nổi) riêng biệt.

Tôi đã kết nối các chân nối đất của giắc cắm với chân cắm của cáp đến từ card âm thanh, để mọi thứ trong hộp chia sẻ cùng một mặt đất và tôi tránh được tiếng ồn khó chịu của các vòng nối đất. Tuy nhiên, tùy thuộc vào những gì bạn đang cắm, điều này có thể có tác dụng ngược lại - vì vậy bạn có thể muốn bao gồm một công tắc để cho phép bạn kết nối hoặc "nâng" mặt đất trên các giắc cắm 1/4 ".

Bước 3: Chuẩn bị Bao vây

Chuẩn bị Bao vây
Chuẩn bị Bao vây
Chuẩn bị Bao vây
Chuẩn bị Bao vây
Chuẩn bị Bao vây
Chuẩn bị Bao vây

Bước này bao gồm việc cắt các lỗ trên hộp cho màn hình, các nút, đầu nối, v.v. và bôi trơn các chân đế trong vỏ để gắn mũ Pi.

Bắt đầu bằng cách đặt tất cả các thành phần trong hộp để đảm bảo mọi thứ phù hợp và được định hướng đúng cách. Sau đó, cẩn thận đo và đánh dấu nơi bạn sẽ tạo lỗ. Khi cắt các lỗ tròn, tôi khuyên bạn nên bắt đầu với một lỗ nhỏ và làm việc theo kích thước bạn cần - việc căn giữa lỗ sẽ dễ dàng hơn và ít khả năng bị kẹt mũi khoan hơn. Các lỗ hình chữ nhật có thể được cắt bằng cách khoan một lỗ ở các góc đối diện của lỗ đã định, sau đó cắt bằng ghép hình cho hai góc còn lại. Độ dày của nhôm này thực sự cắt tốt với trò chơi ghép hình miễn là bạn đi nhẹ nhàng. Tệp hình vuông rất hữu ích để thu nhỏ các góc của lỗ mở. Mở rộng lỗ cắm USB một chút trong trường hợp bạn có dây cáp lớn.

Một loại epoxy hai giai đoạn (như Keo dán Gorilla trong hình) hoạt động tốt để dán các giá đỡ cho chiếc mũ vào vỏ kim loại. Dùng len thép hoặc tuốc nơ vít cào lên bề mặt của vỏ và đáy của giá đỡ một chút để lớp sơn epoxy có thể bám tốt hơn. Tôi khuyên bạn nên gắn các chân đế của mình vào mũ Pi trước khi dán chúng xuống để bạn biết chúng được đặt đúng vị trí - không có nhiều chỗ để lung tung ở đây. Tôi chỉ sử dụng ba chế độ chờ vì màn hình LCD của tôi nằm trong cách của màn hình thứ tư. Trộn hai thành phần của epoxy, dán một ít lên giá đỡ và kẹp chúng vào vị trí. Tránh lung lay hoặc định vị lại các bộ phận sau 10-15 giây, nếu không mối nối sẽ bị giòn. Hãy dành 24 giờ để thiết lập để bạn có thể tiếp tục làm việc. Cần một vài ngày để chữa khỏi hoàn toàn, vì vậy đừng căng thẳng mối liên kết một cách không cần thiết.

Trừ khi bạn muốn thực hiện một sở thích khác với việc sơn hộp đựng đồ, tôi khuyên bạn nên để trần nhôm (thực tế không phải là xấu) hoặc mua một vỏ hộp sơn sẵn. Sơn không muốn liên kết với kim loại. Nếu bạn muốn thử, hãy đánh cát ở mọi nơi mà bạn muốn sơn dính lại, trước tiên hãy sử dụng sơn xịt chống rỉ dành cho xe ô tô loại tốt, phủ nhiều lớp với màu bạn muốn, sau đó để khô càng lâu càng tốt. Nghiêm túc đấy - những kẻ điên cuồng trên bảng tin gợi ý những điều như để nó dưới ánh nắng trực tiếp trong ba tháng hoặc trong lò nướng bánh mì ở chế độ thấp trong một tuần. Sau khi chà nhám phần còn lại của lớp sơn đầu tiên bị bong tróc, nhăn nheo, lần thử thứ hai của tôi vẫn bị vụn và đục từ những thứ như bút trong túi biểu diễn của tôi và lớp sơn hoàn thiện có thể bị móp bằng móng tay. Tôi quyết định nhượng bộ và chọn phong cách punk, sử dụng bút đánh dấu màu trắng cho chữ.

Bước 4: Thiết lập phần mềm

Thiết lập phần mềm
Thiết lập phần mềm
Thiết lập phần mềm
Thiết lập phần mềm

Trước khi nhét mọi thứ vào hộp đựng và vặn chặt, bạn cần thiết lập phần mềm trên Raspberry Pi. Tôi khuyên bạn nên bắt đầu với một bản cài đặt mới Hệ điều hành Raspbian, vì vậy hãy lấy một bản sao gần đây từ trang web Raspberry Pi Foundation và làm theo hướng dẫn ở đó để hình ảnh nó vào thẻ SD. Lấy bàn phím và màn hình hoặc sử dụng cáp bảng điều khiển để đăng nhập vào Pi của bạn lần đầu tiên và truy cập dòng lệnh. Để đảm bảo bạn có bản cập nhật phần mềm và chương trình cơ sở mới nhất, hãy nhập

sudo apt-get update && sudo apt-get nâng cấp

sudo rpi-update

Tiếp theo, bạn muốn đảm bảo rằng bạn có thể sử dụng wifi để chuyển sang Pi và thực hiện các sửa đổi sau khi nó được cài đặt bên trong vỏ. Đầu tiên, bật máy chủ ssh bằng cách nhập

sudo raspi-config

và đi tới "Tùy chọn giao diện" và bật máy chủ ssh. Bây giờ, hãy thêm mạng không dây vào pi bằng cách chỉnh sửa tệp wpa_supplicant.conf:

sudo vi /etc/wpa_supplicant/wpa_supplicant.conf

và thêm các dòng sau vào cuối:

mạng = {

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

Thay thế mạng và mật khẩu của bạn ở trên bằng các giá trị cho bất kỳ mạng nào bạn muốn Pi kết nối theo mặc định - rất có thể là bộ định tuyến wifi của bạn ở nhà hoặc có thể là điểm phát sóng trên điện thoại hoặc máy tính xách tay của bạn đang chạy ở chế độ điểm truy cập. Một thay thế khác để kết nối với Pi của bạn là thiết lập nó làm điểm truy cập wifi, để bạn có thể kết nối với nó cho dù bạn ở đâu. Giao diện tôi đã viết bên dưới cũng cho phép bạn ghép nối một thiết bị bluetooth khác với Pi, sau đó bạn có thể kết nối với nó bằng cách sử dụng nối tiếp qua bluetooth.

Để cài đặt FluidSynth, hãy nhập

sudo apt-get install Fluynth

Các tệp đính kèm trong bước này cung cấp giao diện giữa các điều khiển stompbox và FluidSynth, và phải được sao chép vào thư mục / home / pi. Dưới đây là giải thích ngắn gọn về chức năng của mỗi tệp:

  • squishbox.py - Một tập lệnh python khởi động và giao tiếp với một phiên bản của FluidSynth, đọc đầu vào từ các nút stompbox và ghi thông tin vào màn hình LCD
  • config_squishbox.yaml - Tệp cấu hình ở định dạng YAML (hầu hết) con người có thể đọc được, lưu trữ thông tin cài đặt và bản vá cho chương trình squishbox
  • Fluynth.py - Một trình bao bọc bằng python cung cấp các liên kết với các hàm C trong thư viện FluidSynth, với nhiều liên kết bổ sung do tôi thêm vào để truy cập thêm chức năng của FluidSynth
  • ModWaves.sf2 - Một soundfont rất nhỏ mà tôi đã cung cấp để chứng minh cách sử dụng và sức mạnh của bộ điều biến ở định dạng Soundfont

Có một tập lệnh python thiết lập quy trình FluidSynth và xử lý tất cả các nút / màn hình LCD hoạt động khá tốt - các thông báo MIDI chuyển trực tiếp đến FluidSynth và tập lệnh chỉ tương tác với nó khi nó cần.

Tập lệnh python cần một vài thư viện python không được cài đặt theo mặc định. Bạn có thể cài đặt chúng trực tiếp từ Chỉ mục gói Python bằng công cụ pip tiện dụng:

sudo pip cài đặt RPLCD pyyaml

Cuối cùng, bạn muốn Pi chạy tập lệnh python khi khởi động. Để thực hiện điều này, hãy chỉnh sửa tệp rc.local:

sudo vi /etc/rc.local

Chèn dòng sau ngay trước dòng 'thoát 0' cuối cùng trong tệp:

python /home/pi/squishbox.py &

Bước 5: Lắp ráp cuối cùng

Hội đồng cuối cùng
Hội đồng cuối cùng
Hội đồng cuối cùng
Hội đồng cuối cùng
Hội đồng cuối cùng
Hội đồng cuối cùng

Trước khi đặt tất cả các phần vào hộp, bạn nên cắm mọi thứ vào và đảm bảo phần mềm hoạt động, như được minh họa trong các hình ảnh ở trên. Hình ảnh 3-6 hiển thị tất cả các bộ phận riêng lẻ và dần dần chúng vừa với hộp của tôi như thế nào. Màn hình LCD thực sự được giữ cố định bởi các dây ép vào nó, nhưng bạn có thể sử dụng một ít keo nóng hoặc thêm một số vít gắn nếu bạn không thích điều đó. Băng keo màu cam trên nắp hộp là để giữ cho Pi không bị chập vào kim loại.

Bạn có thể phải thử nghiệm và cấu hình lại để làm cho mọi thứ phù hợp. Snug là tốt - càng ít bộ phận lắc lư trong hộp càng tốt. Nhiệt dường như không phải là vấn đề và tôi không gặp bất kỳ vấn đề nào với việc tín hiệu wifi bị chặn bởi vỏ máy. Không có trong hình là một số chân cao su kết dính (bạn có thể tìm thấy chúng ở cửa hàng phần cứng) ở dưới cùng của hộp để giữ cho nó không bị trượt xung quanh khi bạn đang thực hiện một phiên dậm chân.

Để ý sự va đập / tiếng kêu / uốn cong không rõ ràng khi mọi thứ được vặn vào nhau. Một điều cần kiểm tra là có đủ không gian cho các giắc cắm 1/4 khi cắm cáp - các đầu nhọn nhô ra xa hơn một chút so với các điểm tiếp xúc giắc cắm. Ngoài ra, trong bản dựng của tôi, tôi đã gắn Pi hơi sát mép của hộp và môi trên nắp ấn xuống phần cuối của thẻ SD và chụp nó - tôi phải giũa một vết khía trên môi để điều này không xảy ra.

Bước 6: Cách sử dụng

Image
Image
Sử dụng
Sử dụng
Sử dụng
Sử dụng

Mô-đun âm thanh mà tôi đã mô tả trong các bước này và chạy phần mềm được cung cấp ở trên khá hữu dụng và có thể mở rộng ra khỏi hộp, nhưng có thể thực hiện nhiều sửa đổi / biến thể. Tôi sẽ chỉ mô tả ngắn gọn về giao diện ở đây - Tôi dự định sẽ liên tục cập nhật nó trong kho lưu trữ github, nơi tôi hy vọng cũng sẽ cập nhật wiki. Cuối cùng, tôi sẽ thảo luận về cách bạn có thể điều chỉnh cài đặt, thêm âm thanh mới và thực hiện các sửa đổi của riêng bạn.

Để bắt đầu, hãy cắm bộ điều khiển USB MIDI vào giắc cắm USB-A của hộp, nguồn điện 5V vào giắc cắm USB-B và kết nối tai nghe hoặc bộ khuếch đại. Sau một chút, màn hình LCD sẽ hiển thị thông báo "squishbox v xx.x". Sau khi số và tên bản vá xuất hiện, bạn sẽ có thể chơi ghi chú. Các thao tác chạm ngắn vào một trong hai nút sẽ thay đổi bản vá, giữ một trong hai nút trong vài giây sẽ đưa bạn vào menu cài đặt và giữ một trong hai nút trong khoảng năm giây cho bạn tùy chọn khởi động lại chương trình, khởi động lại Pi hoặc tắt Pi (NB Pi không cắt nguồn cho các chân GPIO của nó khi nó tạm dừng, vì vậy màn hình LCD sẽ không bao giờ tắt. Chỉ cần đợi khoảng 30 giây trước khi rút phích cắm).

Các tùy chọn menu cài đặt là:

  • Cập nhật bản vá - lưu bất kỳ thay đổi nào bạn đã thực hiện đối với bản vá hiện tại vào tệp
  • Lưu bản vá mới - lưu bản vá hiện tại và mọi thay đổi dưới dạng bản vá mới
  • Chọn Ngân hàng - tệp cấu hình có thể có nhiều bộ bản vá, điều này cho phép bạn chuyển đổi giữa chúng
  • Đặt Gain - đặt âm lượng đầu ra tổng thể (tùy chọn 'gain' của chất lỏng), quá cao sẽ làm cho đầu ra bị méo
  • Chorus / Reverb - sửa đổi cài đặt reverb và điệp khúc của bộ hiện tại
  • Kết nối MIDI - cố gắng kết nối thiết bị MIDI mới nếu bạn hoán đổi thiết bị trong khi chương trình đang chạy
  • Bluetooth Pair - đặt Pi ở chế độ khám phá để bạn có thể ghép nối một thiết bị bluetooth khác với nó
  • Trạng thái Wifi - báo cáo địa chỉ IP hiện tại của Pi để bạn có thể nhập vào đó

Tệp config_squishbox.yaml chứa thông tin mô tả từng bản vá, cũng như những thứ như định tuyến MIDI, thông số hiệu ứng, v.v. Nó được viết ở định dạng YAML, là một cách đa ngôn ngữ để biểu diễn dữ liệu mà máy tính có thể phân tích cú pháp nhưng cũng là con người. -đọc được. Nó có thể trở nên khá phức tạp, nhưng ở đây tôi chỉ sử dụng nó như một cách để biểu diễn cấu trúc của từ điển Python lồng nhau (mảng / băm liên kết trong các ngôn ngữ khác) và chuỗi (danh sách / mảng). Tôi đặt rất nhiều nhận xét trong tệp cấu hình mẫu và cố gắng cấu trúc nó để người ta có thể dần dần xem từng tính năng làm gì. Hãy xem và thử nghiệm nếu bạn tò mò và hãy đặt câu hỏi trong phần nhận xét. Bạn có thể làm rất nhiều để thay đổi âm thanh và chức năng của mô-đun chỉ bằng cách chỉnh sửa tệp này. Bạn có thể đăng nhập và chỉnh sửa từ xa hoặc FTP một tệp cấu hình đã sửa đổi cho Pi, sau đó khởi động lại bằng giao diện hoặc bằng cách nhập

sudo python /home/pi/squishbox.py &

trên dòng lệnh. Tập lệnh được viết để loại bỏ các phiên bản đang chạy khác của chính nó khi bắt đầu để không có bất kỳ xung đột nào. Tập lệnh sẽ đưa ra một vài cảnh báo trên dòng lệnh khi nó chạy khi nó tìm kiếm các thiết bị MIDI để kết nối và tìm kiếm các vị trí khác nhau cho soundfonts của bạn. Nó không bị hỏng, đây chỉ là lập trình lười biếng về phía tôi - tôi có thể bắt được chúng nhưng tôi khẳng định chúng là chẩn đoán.

Khi bạn cài đặt FluidSynth, bạn cũng nhận được soundfont miễn phí khá tốt FluidR3_GM.sf2. GM là viết tắt của MIDI chung, có nghĩa là nó chứa "tất cả" các nhạc cụ, được gán cho số ngân hàng và cài đặt trước được thỏa thuận phổ biến để người chơi MIDI chơi các tệp bằng cách sử dụng soundfont này sẽ có thể tìm thấy gần đúng âm thanh cho đàn piano, kèn, kèn túi, v.v. Nếu bạn muốn nhiều âm thanh khác nhau, bạn có thể tìm thấy rất nhiều soundfonts miễn phí trên internet. Quan trọng nhất, đặc điểm kỹ thuật của soundfont được phổ biến rộng rãi, thực sự khá mạnh mẽ và có một trình soạn thảo mã nguồn mở tuyệt vời cho soundfonts được gọi là Polyphone. Với điều này, bạn có thể tạo soundfonts của riêng mình từ các tệp WAV thô, ngoài ra bạn có thể thêm bộ điều biến vào phông chữ 'của mình. Bộ điều chế cho phép bạn kiểm soát nhiều yếu tố của quá trình tổng hợp (ví dụ: đường bao ADSR, đường bao điều chế, LFO, v.v.) trong thời gian thực. Tệp ModWaves.sf2 mà tôi đã bao gồm ở trên cung cấp một ví dụ về việc sử dụng bộ điều biến để cho phép bạn ánh xạ cộng hưởng của bộ lọc và tần số cắt thành thông báo MIDI thay đổi điều khiển (có thể được gửi bằng nút / thanh trượt trên bộ điều khiển của bạn). Có rất nhiều tiềm năng ở đây - hãy chơi!

Tôi hy vọng rằng hướng dẫn này sẽ khơi dậy rất nhiều ý tưởng và cung cấp cho những người khác một khuôn khổ tốt để xây dựng các sáng tạo synth độc đáo của riêng họ, cũng như hỗ trợ sự sẵn có và phát triển liên tục của soundfonts tốt, thông số kỹ thuật của soundfont và phần mềm miễn phí tuyệt vời như FluidSynth và Polyphone. Cách xây dựng mà tôi đã phác thảo ở đây không phải là cách tốt nhất và cũng không phải là cách duy nhất để kết hợp những thứ như thế này lại với nhau. Về mặt phần cứng, các sửa đổi có thể có có thể là một hộp lớn hơn với nhiều nút hơn, đầu vào / đầu ra MIDI (5 chân) cũ và / hoặc đầu vào âm thanh. Tập lệnh python có thể được sửa đổi (xin lỗi vì nhận xét thưa thớt của tôi) để cung cấp các hành vi khác có thể phù hợp với bạn hơn - Tôi đang nghĩ đến việc thêm chế độ "hiệu ứng" vào mỗi bản vá nơi nó sẽ hoạt động giống như một stompbox hiệu ứng thực, bật cài đặt và tắt. Người ta cũng có thể thêm một số phần mềm bổ sung để cung cấp các hiệu ứng âm thanh kỹ thuật số. Tôi cũng nghĩ rằng sẽ hoạt động tốt hơn nếu Pi chạy ở chế độ AP wifi như mô tả ở trên và sau đó nó thậm chí có thể cung cấp giao diện web thân thiện để chỉnh sửa tệp cấu hình. Vui lòng đăng ý tưởng / câu hỏi / thảo luận của riêng bạn trong nguồn cấp dữ liệu nhận xét.

Tôi muốn tặng những đạo cụ khổng lồ, khổng lồ cho các nhà sản xuất FluidSynth và Polyphone để cung cấp phần mềm mã nguồn mở miễn phí mà tất cả chúng ta đều có thể sử dụng để tạo ra những bản nhạc tuyệt vời. Tôi thích sử dụng thứ này, và bạn đã biến nó thành hiện thực!

Đề xuất: