สิ่งใดที่ต้องรู้เพื่อสร้างตัวสังเคราะห์ซอฟต์แวร์


19

สำหรับคนที่มีประสบการณ์ในการพัฒนาซอฟต์แวร์รัก synth ของเขาและรู้พื้นฐาน [มาก] ของการเป็นตัวแทนเสียงดิจิตอลขั้นตอนแรกที่เขาควรทำคืออะไรเพื่อตั้งโปรแกรม synthesizer เพลง DSP-wise?

คำตอบ:


17

รับจริงสังเคราะห์เสียงสำหรับการใช้งานแบบโต้ตอบและดาวน์โหลดสังเคราะห์ Toolkit ที่จะช่วยให้คุณมีการแนะนำที่เป็นประโยชน์และซอร์สโค้ดคุณภาพสำหรับวิธีการสังเคราะห์ดิจิทัลส่วนใหญ่ที่ใช้งานอยู่ จากนั้นเลือกวิธีการใดก็ได้ที่คุณสนใจและเริ่มแก้ไขรหัส STK ที่เกี่ยวข้องเพื่อทำสิ่งที่คุณต้องการ จากนั้นลองสร้างสิ่งที่คล้ายกันตั้งแต่เริ่มต้น

นอกจากนี้อย่างที่แนะนำ hotpaw2อะไรจาก JOS ก็เป็นวัสดุเบื้องต้นที่ดีเช่นกัน โดยเฉพาะอย่างยิ่งความรู้เบื้องต้นเกี่ยวกับตัวกรองดิจิตอลพร้อมแอปพลิเคชั่นเสียงและคณิตศาสตร์ของการแปลงฟูริเยร์แบบไม่ต่อเนื่องทั้งสองเริ่มจากพื้นฐานและไม่ถือว่ามีพื้นหลังมากมาย

จากมุมมองของตัวกรองดิจิตอล / ผลกระทบอีกจุดเริ่มต้นที่ดีคือการตรวจสอบเฟาสต์ คุณไม่จำเป็นต้องเรียนรู้ภาษาการประมวลผลสัญญาณบล็อกไดอะแกรมคุณสามารถใช้ตัวอย่างเพื่อเทมเพลต VST, LADSPA และรหัสเทมเพลตเป็นต้นเป็นวิธีที่รวดเร็วในการเรียกใช้บางสิ่ง (ซึ่งคุณสามารถแก้ไขได้)

ที่ถูกกล่าวว่ามันง่ายยิ่งขึ้นที่จะเริ่มต้นด้วยการสร้างเสียงซึ่งโดยพื้นฐานแล้วเป็นสิ่งเดียวกัน แต่ไม่ต้องกังวลเกี่ยวกับการทำงานหรือการโต้ตอบแบบเรียลไทม์ คุณเพียงแค่บันทึกไฟล์ wav ไว้ในดิสก์ เป็นวิธีที่ยอดเยี่ยมในการทดสอบด้วยเทคนิคใหม่ก่อนที่จะผ่านปัญหาในการทำให้พวกเขาทำงานได้อย่างรวดเร็ว


คำตอบที่สมบูรณ์แบบ - มันครอบคลุมเรื่องที่มีความสมดุลเป็นอย่างมาก ขอขอบคุณ!
vemv

6

ฉันจะอ่านหนังสือเกริ่นนำเกี่ยวกับ DSP รวมถึงหนังสือบางเล่มเกี่ยวกับดนตรีคอมพิวเตอร์ (Amazon และร้านหนังสืออื่น ๆ หลายแห่ง) นอกจากนี้ยังมีเนื้อหาหลักสูตรมากมายจาก Stanfordเรื่อง DSP และการสังเคราะห์เสียง หนังสือเกี่ยวกับระบบการได้ยินของมนุษย์และจิตวิเคราะห์อาจมีประโยชน์เช่นกัน


5

ก่อนอื่นคุณต้องตัดสินใจว่าคุณต้องการสร้างซินธิไซเซอร์ประเภทใด - สารเติมแต่ง, FM, สารตัวอย่างเป็นต้นคุณต้องตัดสินใจว่าคุณต้องการเลียนแบบซิลิโคนอะนาล็อกที่มีอยู่หรือไม่หรือออกแบบเพียงอย่างเดียว

ส่วนที่เหลือนั้นค่อนข้างง่าย - คุณเพียงแค่ต้องสร้างบล็อคซินธิไซเซอร์ต่าง ๆ (เช่น oscillators, ฟิลเตอร์, เครื่องกำเนิดเสียง, shapers ซองจดหมาย ฯลฯ ) ในซอฟต์แวร์จากนั้นนำวิธีการ "เดินสาย" เหล่านี้มารวมกันและควบคุมพารามิเตอร์ต่างๆ

ดูหนังสือของ Hal Chamberlin, แอพพลิเคชั่นดนตรีของไมโครโปรเซสเซอร์ซึ่งเป็นการแนะนำที่ดีเกี่ยวกับพื้นฐานหลายอย่าง


4

ฉันค่อนข้างประหลาดใจที่ไม่มีใครพูดถึงSynthMakerเลย มันใช้งานง่ายอย่างน่าขันและถึงแม้ว่ามันจะทำให้ยากที่จะไปในระดับต่ำ (ให้แน่ใจว่าได้ใช้โหมดนักพัฒนา ) คุณสามารถเรียนรู้มากมายเกี่ยวกับสถาปัตยกรรมซินธิไซเซอร์ด้วยและ DSP ทั่วไป และคุณสามารถใช้ประโยชน์จากสิ่งที่สร้างขึ้นจริง ๆ แล้วฉันใช้มันเพื่อสร้างปลั๊กอินเกือบทั้งหมดของฉัน


ในฐานะนักพัฒนาซอฟต์แวร์ฉันมักจะลังเลกับพ่อมด แต่ฉันคิดว่า DSP เป็นโลกที่ลึกเพื่อ SynthMaker อาจเป็นประโยชน์ นอกจากคู่ของเพื่อน ๆ ได้มีประสบการณ์ที่ดีกับมัน :)
vemv

ฉันจะพูดถึง SynthMaker ด้วยตัวเอง มันเป็นโปรแกรมที่ยอดเยี่ยม
แมตต์เอ็ม

4

ในฐานะที่เป็นผู้ให้ข้อมูลอื่น ๆ ได้กล่าวถึงไพรเมอร์ที่ดีใน DSP เป็นสิ่งจำเป็น นี่เป็นหนังสือที่ยอดเยี่ยม> http://www.dspguide.com/และผู้เขียนได้ให้การดาวน์โหลด PDF แบบเต็มและฟรี เพลงทั่วไปหนังสือเรียนอีกเทคโนโลยีซึ่งจะช่วยให้มุมมองในระดับสูงที่ดีของเทคนิคการสังเคราะห์ต่างๆ> http://www.amazon.com/Computer-Music-Tutorial-Curtis-Roads/dp/0262680823 ฉันยังจะย้ำสิ่งที่ผู้ให้ข้อมูลก่อนหน้านี้แนะนำ Synthmaker ซึ่งเป็นสภาพแวดล้อมการพัฒนาภาพที่สะดวกมากสำหรับการพัฒนาปลั๊กอิน VST สุดท้ายถ้าคุณเพียงแค่ต้องการทดสอบโดยไม่ต้องเจาะลึกคุณสามารถลองใช้ Csound ซึ่งเป็นภาษาการเขียนโปรแกรมที่ออกแบบมาเฉพาะสำหรับการสังเคราะห์เสียง


2

ฉันต้องการพูดสอดเพราะคำตอบส่วนใหญ่มุ่งเน้นไปที่ปัญหา DSP หากคุณไม่ได้ใช้ระบบการออกแบบบล็อกอย่าง SynthMaker คุณจะต้องใช้เวลาในการพัฒนาจำนวนมากในการจัดการเสียง หากคุณกำลังเขียนปลั๊กอินเครื่องมือ VSTi ตั้งแต่เริ่มต้นเส้นโค้งการเรียนรู้จะยาวกว่าปลั๊กอินลักษณะพิเศษมาก คุณจะต้องจัดการวัตถุบันทึกย่อแต่ละชิ้นตัดสินใจว่าจะเกิดอะไรขึ้นเมื่อมีหมายเหตุ 20 รายการในกรณีที่ DSP ของคุณเร็วพอสำหรับเสียง 16 ครั้งตอบสนองต่อเสียงโค้งงอ, portamento, การมอดูเลตและอื่น ๆ นี่ไม่ใช่เรื่องง่าย แนะนำให้เริ่มต้นด้วย Buzz หรือ SynthMaker และกลิ้งตัวคุณเองเมื่อคุณเจอกับกำแพง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.