สารบัญ:
- ขั้นตอนที่ 1: FOSS
- ขั้นตอนที่ 2: จัดเรียงหรือแต่งเพลงเพื่อเล่น
- ขั้นตอนที่ 3: ส่งออกไฟล์ MIDI
- ขั้นตอนที่ 4: เชื่อมต่อ Spielatron กับโปรแกรม ALSA MIDI
- ขั้นตอนที่ 5: การตั้งชื่ออุปกรณ์ MIDI และพอร์ต USB
- ขั้นตอนที่ 6: การใช้ LMMS
- ขั้นตอนที่ 7: นำเข้าไฟล์ MIDI ของคุณไปยัง LMMS
- ขั้นตอนที่ 8: ตั้งค่าเอาต์พุต LMMS เป็น TtyUSB0
- ขั้นตอนที่ 9: หยุดเอาต์พุตเสียงของคอมพิวเตอร์
- ขั้นตอนที่ 10: กดปุ่มเล่น นั่งเอนหลัง และเพลิดเพลินกับเสียงเพลง
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
คำแนะนำนี้ครอบคลุมเครื่องมือซอฟต์แวร์ที่เราใช้ในการจดโน้ตดนตรีมาตรฐานอย่างง่ายดาย แปลงเป็นไฟล์ MIDI และเล่นบน Spielatron
ขั้นตอนที่ 1: FOSS
เมื่อใดก็ตามที่เป็นไปได้ เราใช้ซอฟต์แวร์โอเพ่นซอร์สและฟรี (FOSS) ที่ทำงานบนคอมพิวเตอร์ Linux ในกรณีนี้คือใช้ Ubuntu Mate
ขั้นตอนที่ 2: จัดเรียงหรือแต่งเพลงเพื่อเล่น
เนื่องจากความสามารถทางดนตรีของเรามีจำกัด การแต่งเพลงจึงไม่ใช่ตัวเลือกที่แท้จริง และเพื่อหลีกเลี่ยงปัญหาลิขสิทธิ์ เราชอบที่จะจัดเรียงเพลงคลาสสิกแบบเก่าเป็นชิ้นเดียวที่เหมาะกับ Spielatron โดยพื้นฐานแล้ว คุณต้องเก็บเพลงแบบโมโนโฟนิกไว้ เช่น โน้ตตัวเดียวเท่านั้น และอยู่ในช่วงโน้ต G5 ถึง G7 ของ Spielatron เพื่อจุดประสงค์นี้ เราใช้ Musescore ซึ่งเราพบว่ามันยอดเยี่ยมมากสำหรับจุดประสงค์นี้และสำหรับการสร้างโน้ตดนตรีที่จะเล่น
เราใช้อิมเมจแอพลินุกซ์ 64 บิตจาก
musescore.org/en/download/musescore-x86_64…
เคล็ดลับหนึ่งที่เราใช้เพื่อจดบันทึกบนราวบันไดเมื่อพิจารณาถึงการลงทะเบียนระดับสูงของ Spielatron คือการใช้ตัวเลือก Treble Clef 8va จาก Clef Pallette โดยสังเกตเลข 8 ตัวเล็กๆ เหนือแป้นเสียงแหลม
หนึ่งในสิ่งที่ยอดเยี่ยมเกี่ยวกับ Musescore คือชุมชนที่น่าตื่นตาตื่นใจที่ให้ความช่วยเหลือ บทช่วยสอน ตัวอย่าง และไฟล์ Musescore ให้ดาวน์โหลดมากมาย
ขั้นตอนที่ 3: ส่งออกไฟล์ MIDI
เมื่อคุณพอใจกับการแต่งเพลงของคุณใน Musescore แล้ว คุณต้องส่งออกเป็นไฟล์ MIDI อยู่ในไฟล์ - ส่งออก และเลือกรูปแบบไฟล์ Standard Midi
ขั้นตอนที่ 4: เชื่อมต่อ Spielatron กับโปรแกรม ALSA MIDI
ในขณะที่เราต้องการส่งไฟล์ MIDI ของเราไปยัง Arduino บน Spielatron เราจำเป็นต้องมีการเชื่อมต่อระหว่างอุปกรณ์ USB เช่น ttyUSB0 และซอฟต์แวร์ MIDI เช่น โปรแกรม ALSA นอกจากนี้ การเชื่อมต่อนี้อยู่ที่อัตรารับส่งข้อมูลของคอมพิวเตอร์มากกว่าอัตรารับส่งข้อมูล MIDI มาตรฐานที่ 31250
โชคดีที่มีคนอื่นเขียนโปรแกรมไดรเวอร์ให้ทำงานที่เรียกว่า ttymidi แล้ว
ttymidi ได้จากที่นี่:
www.varal.org/ttymidi/
www.varal.org/ttymidi/ttymidi.tar.gz
โปรแกรมนี้จัดทำเป็นซอร์สโค้ดพร้อมไฟล์ make เท่านั้น เมื่อเรารันไฟล์ make เราได้รับข้อผิดพลาด linker และต้องแก้ไขไฟล์ make ดังนี้
บรรทัดคำสั่งเดิมที่ให้ข้อผิดพลาด
gcc src/ttymidi.c -o ttymidi -lasound
แก้ไขบรรทัดคำสั่งที่ทำงาน
gcc src/ttymidi.c -o ttymidi -lasound -lpthread
ในท้ายที่สุด เราไม่ได้เรียกใช้ไฟล์ make และคอมไพล์ด้วยบรรทัดคำสั่งด้านบนเท่านั้น ดังนั้นจึงไม่ได้ติดตั้งไว้ในระบบของเรา เมื่อเราต้องการเรียกใช้ ttymidi เราเปิดหน้าต่างเทอร์มินัล เปลี่ยนไดเร็กทอรีเป็นไดเร็กทอรี ttymidi และรันโปรแกรมตามภาพด้านบน เมื่อไม่มีสวิตช์ใดๆ ให้ใช้ค่าเริ่มต้นของ ttymidi เป็น 115200 baud rate ซึ่งตรงกับรหัสที่เราให้ไว้สำหรับ Spielatron โปรดทราบว่าเมื่อดำเนินการ ttymidi หน้าต่างเทอร์มินัลจะไม่กลับไปที่พรอมต์คำสั่งจนกว่าจะป้อน "control c" ซึ่งจะออกจากโปรแกรม
ขั้นตอนที่ 5: การตั้งชื่ออุปกรณ์ MIDI และพอร์ต USB
ในตัวอย่างนี้ เราใช้ ttymidi โดยไม่มีสวิตช์ซึ่งมีค่าเริ่มต้นเป็น ttyUSB0 และอัตราบอด 115200 หากท่านจำเป็นต้องเปลี่ยนแปลงสิ่งเหล่านี้ไม่ว่าด้วยเหตุผลใดก็ตาม คุณมีอุปกรณ์ ttyUSB มากกว่าหนึ่งเครื่องที่เชื่อมต่อกับคอมพิวเตอร์ของคุณ คุณสามารถใช้สวิตช์ดังที่แสดงในภาพด้านบน
ขั้นตอนที่ 6: การใช้ LMMS
LMMS (เดิมคือ Linux MultiMedia Studio) เป็นโปรแกรมแอปพลิเคชันเวิร์กสเตชันเสียงดิจิทัล ซึ่งเป็นโปรแกรมที่ยอดเยี่ยมอีกอย่างหนึ่งที่เราเพิ่งเริ่มใช้งานเท่านั้น LMMS มีอยู่ใน Ubuntu Software Center หรือที่นี่
แม้ว่าเพื่อจุดประสงค์นี้ เราจะไม่ได้ใช้ LMMS เพื่อเล่นไฟล์ MIDI จากคอมพิวเตอร์ แต่ LMMS ยังคงคาดว่าแบบอักษรเสียงจะพร้อมใช้งานเมื่อนำเข้าไฟล์ MIDI ดังนั้นเราจึงใช้ฟอนต์เสียงพร้อมเพรียงซึ่งมีอยู่ที่นี่:
ftp://ftp.personalcopy.net/pub/Unison.sf2.gz
www.personalcopy.com/linuxfiles.htm
ในการใช้ฟอนต์เสียง สิ่งที่คุณต้องทำคือแตกไฟล์ลงในไดเร็กทอรีที่คุณจะเก็บไว้ จากนั้นใน LMMS ให้ไปที่ Edit - Settings - Folders เพื่อตั้งค่า Unison เป็นฟอนต์เสียงเริ่มต้น ตามภาพด้านบน
ขั้นตอนที่ 7: นำเข้าไฟล์ MIDI ของคุณไปยัง LMMS
นำเข้าไฟล์ MIDI ที่คุณสร้างด้วย Musescore (หรือจากแหล่งอื่น) ลงใน LMMS ใช้ไฟล์ - นำเข้าตามภาพด้านบน
ขั้นตอนที่ 8: ตั้งค่าเอาต์พุต LMMS เป็น TtyUSB0
เมื่อนำเข้าไฟล์ MIDI แล้ว ไฟล์จะปรากฏในหน้าต่างตัวแก้ไขเพลงเป็นแทร็กพร้อมเพรียงกัน ไปที่สัญลักษณ์ล้อเฟืองที่ปลายด้านซ้ายของแทร็ก คลิกซ้ายที่ล้อเฟือง เลือก Midi จากนั้นเลือก Output และคุณจะเห็นอุปกรณ์ที่เรียกว่า ttymidi (หรือชื่อที่คุณให้มากับสวิตช์ -n เมื่อเริ่ม ttymidi) ตามภาพด้านบน เลือกอุปกรณ์นี้แล้วคุณจะเห็นเครื่องหมายถูกอยู่ข้างๆ
ขั้นตอนที่ 9: หยุดเอาต์พุตเสียงของคอมพิวเตอร์
หากคุณเล่นแทร็ก ณ จุดนี้ LMMS จะส่งออกไฟล์ MIDI ไปยังทั้ง ttyUSB0 (Spelatron) และการ์ดเสียงของคอมพิวเตอร์ เนื่องจากซอฟต์แวร์ Spielatron มีการหน่วงเวลา 200 มิลลิวินาทีเพื่อให้เซโวแบบหมุนเคลื่อนที่ได้ เพลงของ Spielatron จึงล่าช้าตามจำนวนนี้ ซึ่งจะไม่ซิงค์กับเอาต์พุตการ์ดเสียงของคอมพิวเตอร์ สิ่งนี้สามารถเอาชนะได้ด้วยการลดระดับเสียงบนแทร็กพร้อมเพรียงตามภาพด้านบน
ขั้นตอนที่ 10: กดปุ่มเล่น นั่งเอนหลัง และเพลิดเพลินกับเสียงเพลง
กดปุ่มเล่นตามภาพด้านบนและ Spielatron หรือ synth เพลง Arduino อื่น ๆ จะเล่น MIDI ของคุณ ในตัวอย่างตอนท้ายของวิดีโอเปิดตัว Spielatron ในสถานที่เปิดเพลง Greensleeves ซึ่งเป็นเพลงลูกทุ่งของ Old English ที่เป็นที่รู้จักกันดี
นอกเหนือจากเพลงที่จำเป็นต้องเป็นแบบโมโนโฟนิกและอยู่ในช่วงของ G5 ถึง G7 แล้ว ยังมีข้อจำกัดที่กำหนดโดยเวลาตอบสนองของเซอร์โวอย่างเห็นได้ชัด ซึ่งหมายความว่าเพลงของคุณถูกจำกัดด้วยความสั้นหากใช้โน้ตหรือใช้จังหวะต่อนาที (BPM) เช่น. หากคุณมี BPM สูง คุณจะไม่สามารถใช้โน้ตสั้น ๆ หรือในทางกลับกันได้
ตัวอย่าง:
120 BPM ที่ 4/4 (4 ครั้งต่อบาร์) ให้ 30 บาร์ใน 1 นาที
60 วินาทีหารด้วย 30 ให้ 2 วินาทีต่อแท่ง
ดังนั้น crotchet จะมี 500ms ต่ออัน (ภายในเวลาหน่วงของเซอร์โว)
เครื่องสั่นจะมี 250ms (ในเวลาที่อนุญาตให้หมุน 200ms และ 40ms สำหรับการเคลื่อนที่ของค้อน)
Semiquaver ไม่ทำงานโดยไม่ลด BPM