เสียง WAV (.wav)
Microsoft มาตรฐานWAV เป็นรูปแบบที่ใช้กันแพร่หลายสำหรับเสียง PCM ที่ไม่บีบอัด
แปลง WAV เป็น MP3
ตัวแปลงจาก WAV เป็น MP3 ฟรีในเบราว์เซอร์ แปลงไฟล์ได้ทันทีบนอุปกรณ์ของคุณ
ตรวจสอบไฟล์และข้อมูลเมตา
ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ WAV โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:
ลายเซ็นส่วนหัวระดับไบต์
ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ WAV โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:
ลายเซ็น HEX (OFFSET 0):
52 49 46 46 ?? ?? ?? ?? 57 41 56 45การแสดงผลรูปแบบ ASCII: RIFF????WAVE
มาตรฐาน: Microsoft & IBM Resource Interchange File Format (RIFF)
ข้อมูลจำเพาะทางเทคนิค
| สถาปัตยกรรมคอนเทนเนอร์ | คอนเทนเนอร์ชังก์ Resource Interchange File Format (RIFF) |
| การบีบอัด | การมอดูเลตรหัสพัลส์เชิงเส้น (LPCM) แบบไม่บีบอัด; รองรับ ADPCM หรือ IEEE Float |
| การจัดลำดับไบต์ | ลำดับไบต์ Little-Endian (ตามลำดับของ Intel x86) |
| พื้นที่สี | ไม่เกี่ยวข้อง (เสียง PCM แบบไม่บีบอัด) |
| ช่องสัญญาณและโครงสร้าง | โมโน สเตอริโอ และเสียงหลายช่องสัญญาณได้สูงสุด 64 ช่องแยกกัน |
| ขนาดสูงสุด | อัตราสุ่มสูงสุด 384 kHz ที่ความละเอียดเลขทศนิยมลอยตัว 16, 24, 32 หรือ 64 บิต |
| ความโปร่งใส | รักษาความเที่ยงตรงของเสียงมาสเตอร์สตูดิโอแบบไม่บีบอัดตรงทุกบิต 100% |
| การสตรีมและแบบโปรเกรสซีฟ | ออฟเซ็ตชังก์ข้อมูลขึ้นอยู่กับส่วนหัว; WAV มาตรฐานต้องทราบความยาวล่วงหน้า |
ตารางเปรียบเทียบทางเทคนิค: WAV กับคู่แข่ง
| คุณลักษณะทางเทคนิค | WAV (ปัจจุบัน) | FLAC | AIFF | MP3 |
|---|---|---|---|---|
| ลำดับไบต์ | Little-Endian (ลำดับไบต์ของ Intel) | บิตสตรีมโดยตรง | Big-Endian (ลำดับไบต์ของ Motorola) | การจัดเฟรมบิตสตรีม |
| โหมดการบีบอัด | ไม่บีบอัด (ข้อมูลครบถ้วน 100%) | บีบอัดแบบไม่สูญเสียข้อมูล ขนาดไฟล์แตกต่างกันไป | ไม่บีบอัด (ข้อมูลครบถ้วน 100%) | บีบอัดแบบสูญเสียข้อมูล (~10% ของขนาด) |
| ขนาดไฟล์สูงสุด | 4 GB (ขีดจำกัด RIFF 32-bit โดย RF64 แก้ปัญหานี้) | แทบไม่จำกัด | ขีดจำกัด 4 GB | แทบไม่จำกัด |
| ภาระ CPU จากการคลายการบีบอัด | ศูนย์ (การแมปบัฟเฟอร์หน่วยความจำโดยตรง) | ต่ำมาก | ศูนย์ (การแมปบัฟเฟอร์หน่วยความจำโดยตรง) | ต่ำ |
รูปแบบความเสียหายทั่วไปและคู่มือการกู้คืน Hex
เครื่องเล่นรายงาน 'Invalid chunk size' หรือเสียงเล่นแต่ตัดจบก่อนกำหนด
สาเหตุหลัก: ซอฟต์แวร์บันทึกเสียงขัดข้องก่อนที่จะเขียนส่วนหัวความยาวไบต์ของ 'RIFF' และ 'data' ตัวสุดท้าย
การกู้คืน: เปิดในโปรแกรมแก้ไขฐานสิบหก (hex editor) แล้วเขียนขนาดไฟล์รวมลบด้วย 8 ไปที่ออฟเซต 4 หรือซ่อมแซมผ่าน 'ffmpeg -i broken.wav -c copy fixed.wav'
การวิเคราะห์ความปลอดภัยและเวกเตอร์การโจมตีตัวแยกวิเคราะห์
ไฟล์ WAV ใช้ส่วนหัวของชังก์ซ้อนกันพร้อมค่าความยาว 32 บิต ขนาดชังก์ที่ประกาศไม่ตรงกับความยาวไฟล์จริงอาจทำให้เกิดการอ่านบัฟเฟอร์เกินขอบเขต
เวกเตอร์การโจมตีที่ทราบ
- จำนวนเต็มล้นขณะแยกวิเคราะห์ความยาวชังก์ 'fmt ' หรือ 'fact' ในไดรเวอร์เสียง
- ฮีปล้นจากชังก์เมทาดาทา 'LIST' ที่เป็นอันตรายและมีสตริง ASCII ขนาดใหญ่เกินไป
- การปฏิเสธการให้บริการจากชังก์ 'data' ขนาดศูนย์ไบต์ ซึ่งทำให้เกิดการอ้างอิงพอยน์เตอร์ค่าว่าง (null pointer dereference)
แนวทางปฏิบัติที่ดีที่สุดในการป้องกัน: ตรวจสอบอย่างเข้มงวดว่าออฟเซ็ตของชังก์ที่ระบุไว้ไม่เกินขอบเขตจริงของไฟล์
ประวัติความเป็นมาและเหตุการณ์สำคัญ
ข้อได้เปรียบและจุดเด่นสำคัญ
- ความแม่นยำทางคณิตศาสตร์แบบบิตต่อบิต 100% รักษาคลื่นเสียงมาสเตอร์ในสตูดิโอบันทึกเสียงได้อย่างแม่นยำ
- ความเข้ากันได้ขึ้นอยู่กับเครื่องเล่นและอุปกรณ์
- ไม่เพิ่มภาระ CPU ในการถอดรหัส จึงเล่นเสียงแบบเรียลไทม์และตัดต่อหลายแทร็กได้ทันที
ข้อจำกัดทางเทคนิคและข้อควรพิจารณา
- พื้นที่จัดเก็บข้อมูลมหาศาล (ประมาณ 10 MB ต่อนาทีสำหรับเสียงคุณภาพระดับซีดี)
- ขีดจำกัดขนาดไฟล์ RIFF 32-bit แบบคลาสสิกจำกัดไฟล์ต่อเนื่องไว้ที่ 4 GB อย่างเข้มงวด (ประมาณ 6.8 ชั่วโมงของเสียงซีดี)
- ในอดีตขาดการแท็กเมทาดาทาที่เป็นมาตรฐานเมื่อเทียบกับ MP3 หรือ M4A
เกร็ดความรู้ทางเทคนิคที่น่าสนใจ
- เสียงเริ่มต้นในตำนานของ Windows 95 ซึ่งประพันธ์โดย Brian Eno ถูกแจกจ่ายเป็นไฟล์ WAV สเตอริโอ 16-bit 22 kHz
- การถ่ายทำภาพยนตร์และโทรทัศน์ระดับมืออาชีพจะบันทึกเสียงโดยใช้ Broadcast WAV (BWF) ซึ่งฝังรหัสเวลา SMPTE ไว้ในส่วน 'bext'
- ส่วนหัว RIFF 4 ไบต์ย่อมาจาก 'Resource Interchange File Format'
คำถามทางเทคนิคที่พบบ่อย
ทำไมไฟล์ WAV ถึงมีขนาดใหญ่กว่า MP3 มาก?
WAV มักเก็บเสียง PCM ที่ไม่บีบอัด ส่วน MP3 ใช้การบีบอัดแบบสูญเสียข้อมูล โดยตัดข้อมูลเสียงบางส่วนเพื่อลดขนาดไฟล์ ระดับการลดขึ้นอยู่กับบิตเรต เนื้อหา และการตั้งค่า
จะเกิดอะไรขึ้นหากการบันทึก WAV มีขนาดเกิน 4 GB?
เนื่องจาก RIFF มาตรฐานใช้จำนวนเต็มไม่ติดเครื่องหมาย 32 บิตสำหรับขนาดชังก์ ไฟล์ WAV มาตรฐานจึงมีขนาดเกิน 4,294,967,295 ไบต์ไม่ได้ ชุดบันทึกเสียงระดับมืออาชีพใช้ RF64 (ITU-R BS.2088) เพื่อข้ามขีดจำกัด 4 GB นี้
WAV ให้เสียงที่ดีกว่า FLAC หรือไม่?
ไม่ เมื่อเล่น FLAC ไฟล์จะคลายการบีบอัดกลับมาเป็นสตรีมเสียง PCM แบบบิตต่อบิตที่ WAV จัดเก็บไว้พอดี ซึ่งหมายความว่าความเที่ยงตรงของเสียงอะคูสติกนั้นเหมือนกัน 100%
คู่การแปลงไฟล์ WAV ที่เกี่ยวข้อง
การแปลงเสียง PCM WAV เป็น MP3 อาจลดขนาดไฟล์ได้มาก ระดับการลดและผลต่อเสียงที่ได้ยินขึ้นอยู่กับแหล่งเสียง บิตเรต และการตั้งค่าการเข้ารหัส
การแปลงไฟล์ MP3 เป็น WAV จะคลายข้อมูลเสียงที่ถูกบีบอัดให้เป็นข้อมูล linear PCM แบบไม่บีบอัด เพื่อใช้ในการตัดต่อระดับมืออาชีพและเล่นผ่านฮาร์ดแวร์
ถอดรหัสเสียง M4A AAC ที่บีบอัดเป็นรูปแบบ WAV แบบ Linear PCM 16-bit 44.1kHz ที่ไม่บีบอัดและมีคุณภาพระดับสตูดิโอ
การแปลง WAV PCM แบบไม่บีบอัดเป็น FLAC Master ช่วยลดขนาดไฟล์เสียงของคุณลงครึ่งหนึ่งโดยไม่สูญเสียข้อมูลเสียงแม้แต่บิตเดียว
การแปลง FLAC Master เป็น WAV PCM จะคลายการบีบอัดเสียงให้เป็นข้อมูล pulse-code modulation ดิบ เพื่อให้ใช้งานร่วมกับฮาร์ดแวร์เสียงได้อย่างกว้างขวาง