จุดเริ่มต้นของ Next Karaoke
Next Karaoke เริ่มต้นจากคำถามที่เรียบง่ายแต่มีความท้าทายสูงว่า เว็บแอปพลิเคชันจะสามารถพัฒนาให้เป็นโปรแกรมคาราโอเกะที่ใช้งานได้จริงหรือไม่ เมื่อเทคโนโลยี Web App มีความสามารถเพิ่มขึ้นและเริ่มแพร่หลายมากขึ้น ระบบคาราโอเกะจึงเป็นโจทย์ที่น่าสนใจ เพราะต้องอาศัยการทำงานร่วมกันของเสียงแบบเรียลไทม์ การซิงก์เนื้อร้องอย่างแม่นยำ การจัดการไฟล์ภายในเครื่อง และอินเทอร์เฟซที่ตอบสนองได้ดี
โครงการนี้เริ่มพัฒนาขึ้นในช่วงที่เครื่องมือช่วยเหลือด้วย AI ยังไม่ได้เข้ามามีบทบาทในการพัฒนาอย่างแพร่หลาย ตลอดระยะเวลาประมาณ 3 ปี ระบบได้รับการพัฒนาผ่านการทดลอง ออกแบบใหม่ และแก้ไขปัญหาอย่างต่อเนื่อง มีการลองใช้แนวทางหลายรูปแบบ แล้วปรับเปลี่ยนหรือยกเลิกเมื่อพบข้อจำกัด จนกลายเป็นเวอร์ชันที่สมบูรณ์และใช้งานได้จริงมากที่สุดเท่าที่ข้อจำกัดของแพลตฟอร์มเว็บจะเอื้ออำนวย
เป้าหมายสำคัญคือการปรับแต่งระบบให้รองรับอุปกรณ์และรูปแบบการใช้งานที่หลากหลายที่สุด ทั้งการประมวลผลเสียง การจัดการไฟล์ ระบบจัดเก็บข้อมูล การควบคุมจังหวะเวลา และส่วนติดต่อผู้ใช้ ล้วนได้รับการปรับปรุงซ้ำหลายครั้งเพื่อให้เครื่องเล่นทำงานได้ลื่นไหลและมีความน่าเชื่อถือ โดยไม่จำเป็นต้องติดตั้งโปรแกรมแบบเดสก์ท็อปดั้งเดิม
สิ่งที่โครงการให้ความสำคัญ
คาราโอเกะบนเว็บอย่างแท้จริง
ให้เครื่องเล่น เอนจินเสียง ระบบแสดงเนื้อร้อง และการจัดการข้อมูลภายในเครื่องทำงานอยู่บนเบราว์เซอร์
ประสิทธิภาพที่ใช้งานได้จริง
สร้างสมดุลระหว่างคุณภาพเสียง ความลื่นไหล การใช้หน่วยความจำ และความเข้ากันได้ แทนการปรับระบบเพื่อคะแนนทดสอบเพียงด้านเดียว
พื้นที่สำหรับการทดลอง
โครงการยังคงเป็นพื้นที่ทดลองความสามารถของเทคโนโลยีเบราว์เซอร์สมัยใหม่สำหรับแอปพลิเคชันด้านดนตรี
เว็บยังมีข้อจำกัด
เทคโนโลยีที่ใช้พัฒนา
ระบบปัจจุบันประกอบด้วย Next.js, React, Tailwind CSS, Zustand, Web Audio API, Web Workers, SQLite WASM, ระบบจัดเก็บข้อมูลภายในเบราว์เซอร์ และเอนจิน js-synthesizer/SpSsaSynth โดยเลือกใช้แต่ละส่วนตามความต้องการจริงของการเล่นเพลง การควบคุมจังหวะ การจัดเก็บข้อมูล และการตอบสนองของอินเทอร์เฟซ