วิเคราะห์สเปกตรัมเสียง ฟรี
แสดงความถี่เสียงแบบเรียลไทม์เป็นแท่ง คลื่น หรือสเปกตรัมวงกลม ใช้กับไฟล์เสียงหรืออินพุตไมโครโฟนสดๆ — ทำงานในเบราว์เซอร์
วางไฟล์ที่นี่ หรือคลิกเพื่อเลือก
MP3, WAV, OGG, M4A, FLAC, AAC, OPUS · ประมวลผลบนอุปกรณ์ของคุณ
หรือกด Ctrl+V เพื่อวางจากคลิปบอร์ด
ไฟล์ของคุณไม่เคยออกจากอุปกรณ์ การประมวลผลทั้งหมดเกิดขึ้นในเบราว์เซอร์ของคุณ
การตั้งค่า
อัตราสุ่มตัวอย่าง: 44.1 kHz · ความละเอียด: 5.4 Hz/bin · FFT 8192
การวิเคราะห์ทั้งหมดทำงานในเบราว์เซอร์ของคุณโดยใช้ Web Audio API — เสียงของคุณจะไม่ถูกอัปโหลด
การใช้งานทั่วไป
- วิเคราะห์เสียง Podcastตรวจสอบการบันทึก Podcast สำหรับเสียงห้อง plosives และ sibilance โดยใช้สเปกตรัม
วิธีการทำงาน
ตัววิเคราะห์สเปกตรัมเสียงทำงานในเบราว์เซอร์ทั้งหมดโดยใช้ AnalyserNode ของ Web Audio API ซึ่งคำนวณ FFT (Fast Fourier Transform) แบบเรียลไทม์บนข้อมูลเสียงจากไฟล์หรือไมโครโฟน ทุกเฟรมวาดด้วยโค้ด Canvas 2D ที่เขียนขึ้นเอง — ไม่มีไลบรารีแสดงผล และไม่มีเสียงออกจากอุปกรณ์ของคุณ
- 1เสียงถูกถอดรหัสและส่งต่อเมื่อคุณโหลดไฟล์ Web Audio API จะถอดรหัสเป็น AudioBuffer และส่งผ่าน MediaElementAudioSourceNode เข้าสู่ AnalyserNode สำหรับอินพุตไมโครโฟน getUserMedia() จะจับสตรีมและส่งผ่าน MediaStreamAudioSourceNode แทน — โดยปิดการตัดเสียงสะท้อน การลดเสียงรบกวน และเกนอัตโนมัติ เพื่อให้คุณเห็นสัญญาณดิบ
- 2AnalyserNode รัน FFT ทุกเฟรมทุกเฟรมแอนิเมชัน (ผ่าน requestAnimationFrame) โค้ดเรียก getFloatFrequencyData() เพื่ออ่านสเปกตรัมขนาด FFT ปัจจุบันเป็น dBFS และ getFloatTimeDomainData() สำหรับแซมเปิลรูปคลื่นดิบ ขนาด FFT ปรับได้ตั้งแต่ 2048 ถึง 16384 bin ให้ความละเอียดความถี่ได้ถึงราว 2.7 Hz/bin ที่ 44.1 kHz
- 3Canvas 2D เรนเดอร์มุมมองที่เลือกมุมมองตัววิเคราะห์จับคู่ bin ของ FFT ลงบนแกน X แบบลอการิทึมความถี่ (20 Hz–20 kHz) และแกน Y แบบ dBFS วาดสเปกตรัมเป็นเส้นระบายสี และซ้อนเส้นค้างยอดที่ค่อย ๆ ลดลง ความถี่หลักถูกระบุด้วยการประมาณค่าแบบพาราโบลารอบ bin ยอด แล้วแปลงเป็นโน้ตดนตรีแบบ equal-tempered ที่ใกล้ที่สุด (A4=440 Hz) พร้อมแสดงค่าคลาดเป็นเซนต์ มุมมองสเปกโตรแกรมเลื่อน canvas ไปทางซ้ายหนึ่งพิกเซลทุกเฟรมและวาดคอลัมน์ใหม่ด้วยไล่สีแบบ inferno มุมมองศิลปะใช้ข้อมูลความถี่หรือโดเมนเวลาความละเอียดไบต์สำหรับโหมดตกแต่งแบบแท่ง รูปคลื่น หรือวงกลม
- 4ส่งออกผ่าน Canvas และ MediaRecorderการบันทึก PNG เรียก canvas.toBlob() เพื่อเข้ารหัสเฟรมปัจจุบัน การอัดวิดีโอใช้ canvas.captureStream(30) ร่วมกับการดึงเสียงจาก MediaStreamAudioDestinationNode ส่งเข้า MediaRecorder เพื่อสร้าง WebM หรือ MP4 การส่งออก WAV เข้ารหัสไฟล์ RIFF แบบ PCM 16 บิตจาก AudioBuffer ด้วย DataView เอง — ไม่มีตัวเข้ารหัสภายนอก
ไฟล์เสียงของคุณถูกถอดรหัสในเบราว์เซอร์โดย Web Audio API และไม่เคยถูกอัปโหลด — ข้อมูลไฟล์อยู่บนอุปกรณ์ตลอดการวิเคราะห์และส่งออก
เครื่องมือที่เกี่ยวข้อง
เครื่องสร้างสัญญาณเสียง
สร้างเสียงโทนบริสุทธิ์ตั้งแต่ 1 Hz ถึง 22 kHz รวมถึงเสียงรบกวนสีขาว สีชมพู และสีน้ำตาล — ทดสอบลำโพงซ้าย/ขวา โน้ตสำเร็จรูป เล่นสดหรือดาวน์โหลด WAV/MP3
เพิ่มเพลงลงวิดีโอ
เพิ่มเพลงหรือเสียงใดๆ ลงในวิดีโอ: แทนที่เสียงต้นฉบับหรือผสมรวมกัน พร้อมปรับระดับเสียง เวลาเริ่มต้น เล่นซ้ำ และเฟดเอาต์ ภาพถูกคัดลอก ไม่ได้เข้ารหัสใหม่ ทำงานในเบราว์เซอร์
ตัวค้นหา BPM และคีย์
ประมาณความเร็ว (BPM) และคีย์ดนตรีของเพลงในเบราว์เซอร์ของคุณ พร้อมตัวเลือกแตะจังหวะ