วงการเพลง live coding ได้รับเครื่องมือใหม่ที่ทรงพลังด้วย pattrns ซึ่งเป็นเครื่องมือสร้างลำดับเพลงเชิงทดลองที่กำลังสร้างคลื่นใหญ่ในชุมชนการผลิตเพลงอิเล็กทรอนิกส์ เอนจิ้นที่พัฒนาด้วย Rust นี้ได้เข้ามาใน Renoise ซึ่งเป็นสถานีงานเสียงดิจิทัลยอดนิยมที่มีชื่อเสียงในด้านอินเทอร์เฟซแบบ tracker
แอปพลิเคชันที่มีให้ใช้งาน:
- Online Playground: สภาพแวดล้อมการทดสอบผ่านเว็บเบราว์เซอร์
- Renoise Integration: ติดตั้งในตัวแก้ไข phrase ของ Renoise DAW
- ตัวอย่างการใช้งานใน Rust และ Lua
แนวทางภาษาโปรแกรมมิ่งคู่ทำให้ Pattrns โดดเด่น
สิ่งที่ทำให้ pattrns มีเอกลักษณ์คือความยืดหยุ่นในการที่นักดนตรีสามารถสร้างลำดับเพลงได้ ผู้ใช้สามารถเขียนโค้ดเพลงด้วย Rust เพื่อประสิทธิภาพแบบคอมไพล์ หรือใช้ Lua สำหรับการเปลี่ยนแปลงแบบไดนามิกแบบเรียลไทม์ แนวทางคู่นี้หมายความว่าโปรดิวเซอร์สามารถสร้างลำดับที่แข็งแกร่งและไม่เปลี่ยนแปลง หรือทดลองกับการปรับเปลี่ยนสดระหว่างการแสดงได้ เอนจิ้นนี้ยังรองรับ mini-notation ของ Tidal Cycles ทำให้ผู้ใช้ที่คุ้นเคยกับระบบนั้นสามารถเข้าใช้งานได้อย่างง่ายดาย
การตอบสนองของชุมชนแสดงให้เห็นความตื่นเต้นอย่างแท้จริงเกี่ยวกับความยืดหยุ่นนี้ นักดนตรีที่ใช้ซอฟต์แวร์ tracker มาหลายปีมีความสนใจเป็นพิเศษ เนื่องจาก pattrns ผสานรวมเข้ากับตัวแก้ไขวลีของ Renoise โดยตรง แทนที่จะต้องใช้เวิร์กโฟลว์ใหม่ทั้งหมด
ภาษาโปรแกรมที่รองรับ:
- Rust (ลำดับแบบคงที่ที่คอมไพล์แล้ว)
- Lua (ลำดับแบบไดนามิกที่ตีความได้สำหรับการเขียนโค้ดแบบสด)
- รองรับ mini-notation ของ Tidal Cycles
สถาปัตยกรรมสามขั้นตอนแยกจังหวะออกจากทำนอง
Pattrns ใช้ระบบสามส่วนที่ชาญฉลาดซึ่งแบ่งการสร้างเพลงออกเป็นขั้นตอนที่แตกต่างกัน: การสร้างจังหวะ การกรองพัลส์แบบเสริม และการปล่อยเหตุการณ์ การแยกนี้หมายความว่านักดนตรีสามารถปรับเปลี่ยนจังหวะแยกจากทำนอง หรือเปลี่ยนรูปแบบจังหวะต่างๆ ในขณะที่รักษาเนื้อหาดนตรีเดิมไว้ มันเหมือนกับการมีบล็อกสร้างแบบโมดูลาร์สำหรับการแต่งเพลง
ทางเลือกทางสถาปัตยกรรมนี้แก้ไขความหงุดหงิดทั่วไปในการผลิตเพลงอิเล็กทรอนิกส์ที่การเปลี่ยนแปลงองค์ประกอบหนึ่งมักต้องสร้างลำดับทั้งหมดใหม่ตั้งแต่ต้น
สถาปัตยกรรมสามขั้นตอน:
- ขั้นตอนจังหวะ: ตัวสร้างพัลส์แบบไดนามิกสำหรับรูปแบบจังหวะ
- ขั้นตอนเกต: ตัวกรองพัลส์เสริมระหว่างจังหวะและเหตุการณ์
- ขั้นตอนอีมิตเตอร์: ตัวสร้างเหตุการณ์โน้ต/พารามิเตอร์แบบไดนามิกที่ถูกกระตุ้นโดยลำดับพัลส์
ระบบนิเวศที่เติบโตของเครื่องมือ Live Coding
การอภิปรายเกี่ยวกับ pattrns เผยให้เห็นระบบนิเวศที่เฟื่องฟูของเครื่องมือเพลง live coding สมาชิกชุมชนกำลังแบ่งปันทางเลือกอื่นๆ อย่างแข็งขัน เช่น Strudel.cc สำหรับ live coding ที่ใช้ JavaScript, Glicol สำหรับผู้ที่ชื่นชอบ Rust และ Sonic Pi สำหรับผู้ที่ชอบ Ruby เครื่องมือแต่ละตัวมีจุดแข็งที่แตกต่างกัน แต่ pattrns โดดเด่นในด้านการผสานรวมกับซอฟต์แวร์เพลงที่มีอยู่แล้ว แทนที่จะต้องให้ผู้ใช้เรียนรู้สภาพแวดล้อมใหม่ทั้งหมด
นักดนตรียังกำลังสำรวจวิธีการนำ pattrns ไปใช้กับภาษาโปรแกรมมิ่งอื่นๆ ผ่านอินเทอร์เฟซฟังก์ชันต่างประเทศ แสดงให้เห็นความปรารถนาของชุมชนที่จะปรับเครื่องมือให้เข้ากับสภาพแวดล้อมการเขียนโค้ดที่พวกเขาชอบ
ความพร้อมใช้งานของสนามเด็กเล่นออนไลน์ทำให้ pattrns เข้าถึงได้สำหรับผู้มาใหม่ที่ต้องการทดลองโดยไม่ต้องติดตั้งซอฟต์แวร์ ในขณะที่การผสานรวมกับ Renoise ให้สภาพแวดล้อมการผลิตระดับมืออาชีพสำหรับงานจริงจัง การผสมผสานระหว่างความเข้าถึงได้และความสามารถระดับมืออาชีพนี้ทำให้ pattrns เป็นสะพานเชื่อมระหว่าง live coding เชิงทดลองและการผลิตเพลงเชิงพาณิชย์
อ้างอิง: pattrns