ฉันกำลังพยายามวิเคราะห์ความถี่ของไฟล์เสียง แต่ฉันต้องการให้มันเกิดขึ้นโดยไม่ต้องเล่น ฉันพบว่ามี offlineAudioContext
ซึ่งอาจเป็นสิ่งที่ฉันต้องการที่นี่
กรอกโค้ดใน jsfiddle นี้
Web Audio API เป็นพื้นที่ที่ยังไม่ได้สำรวจสำหรับฉัน และฉันไม่แน่ใจนักว่ากำลังทำอะไรอยู่ บทช่วยสอนจำนวนมากเน้นไปที่เสียงแบบเรียลไทม์ และนั่นคือสิ่งที่ฉันต้องการป้องกันจริงๆ
ภายใน context.oncomplete
ฉันจัดการเพื่อให้ได้ข้อมูลบัฟเฟอร์เสียงที่แสดงผลอย่างแม่นยำ เมื่อรับข้อมูลจาก fft ฉันดูเหมือนจะได้รับชุดข้อมูลขนาดเล็กมาก ซึ่งฉันเดาว่ามันเป็นเพียงข้อมูลจากตัวอย่างสุดท้าย ฉันอยากมีข้อมูลนี้สำหรับทุกๆ x ms ของไฟล์เสียงที่ฉันกำลังโหลด ฉันต้องการรับแนวคิดเกี่ยวกับวิธีการรับข้อมูลรูปแบบนี้
โดยพื้นฐานแล้วสิ่งที่ฉันคาดหวังคือ:
[
// array with frequency data for every (nth) frequency band for 1st sample,
// array with frequency data for every (nth) frequency band for 2nd sample,
// array with frequency data for every (nth) frequency band for 3rd sample,
…
]