เสียง FLAC (.flac)
Xiph.Org มาตรฐานFree Lossless Audio Codec (FLAC) คือรูปแบบไฟล์เสียงแบบไม่สูญเสียคุณภาพที่เป็นมาตรฐานทองคำแบบโอเพนซอร์ส ซึ่งให้สัดส่วนการบีบอัดสูงพร้อมการถอดรหัสที่รวดเร็วเป็นพิเศษและเป็นมิตรกับฮาร์ดแวร์
แปลง FLAC เป็น MP3
ตัวแปลงจาก FLAC เป็น MP3 ฟรีในเบราว์เซอร์ แปลงไฟล์ได้ทันทีบนอุปกรณ์ของคุณ
ตรวจสอบและดู Metadata
ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ FLAC โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:
ลายเซ็นส่วนหัวในระดับไบต์ (Magic Bytes)
ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ FLAC โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:
ลายเซ็น HEX (OFFSET 0):
66 4C 61 43การแสดงผลรูปแบบ ASCII: fLaC
มาตรฐาน: Xiph.Org Open Standard / IETF Draft
ข้อมูลจำเพาะทางเทคนิค
| สถาปัตยกรรมคอนเทนเนอร์ | Native FLAC bitstream container with METADATA_BLOCK structure |
| การบีบอัด | Linear prediction (LPC) and Rice entropy coding with subframe partitioning |
| การจัดลำดับไบต์ (Byte Endianness) | Big-Endian bitstream headers; sample payloads signed integer PCM |
| พื้นที่สี | N/A (Lossless Audio Stream) |
| ช่องสัญญาณและโครงสร้าง | 1 to 8 discrete audio channels |
| ขนาดสูงสุด | Sample rates up to 655,350 Hz at 4 to 32 bits per sample |
| ความโปร่งใส | 100% mathematically lossless bit-exact audio reproduction |
| การสตรีมและแบบโปรเกรสซีฟ | Native frame synchronization words and seeking tables support byte-range HTTP streaming |
ตารางเปรียบเทียบทางเทคนิค: FLAC กับคู่แข่ง
| คุณลักษณะทางเทคนิค | FLAC (ปัจจุบัน) | ALAC | WAV | APE |
|---|---|---|---|---|
| รูปแบบสัญญาอนุญาต | ฟรีและโอเพนซอร์ส (BSD/GPL) | Apache 2.0 โอเพนซอร์ส | สาธารณสมบัติ / RIFF ที่เป็นกรรมสิทธิ์ | สัญญาอนุญาตแบบกำหนดเองที่เป็นโอเพนซอร์ส |
| ภาระการประมวลผลการถอดรหัส | ต่ำมาก; ส่งผลกระทบต่อแบตเตอรี่น้อยที่สุด | ต่ำ | ไม่มีภาระการคลายการบีบอัดบน CPU | ปานกลางถึงสูง |
| การตรวจจับข้อผิดพลาด | ลายเซ็น MD5 แบบ 128 บิต ฝังอยู่ในข้อมูลเสียง PCM ดิบ | ความสมบูรณ์ระดับอะตอมเท่านั้น | ไม่มีในตัว | เช็คซัม CRC32 ต่อเฟรม |
| การนำไปใช้ในเครื่องเล่นฮาร์ดแวร์ | แพร่หลายในเครื่องเสียงรถยนต์ เครื่องรับสัญญาณในบ้าน และชุดเครื่องเสียง Hi-Fi | อุปกรณ์ของ Apple และเครื่องรับ AirPlay | อุปกรณ์ทั้งหมด | จำกัดมาก |
รูปแบบความเสียหายทั่วไปและคู่มือการกู้คืน Hex
ตัวถอดรหัส FLAC บันทึกข้อความ 'MD5 signature mismatch' หรือเครื่องเล่นสะดุดระหว่างการเล่น
สาเหตุหลัก: บิตเสีย (Bit rot) หรือข้อผิดพลาดในการส่งข้อมูลทำให้บิตในข้อมูลเฟรมเสียงที่ถูกบีบอัดสลับค่ากัน
การกู้คืน: ทดสอบความสมบูรณ์โดยใช้คำสั่ง 'flac -t sample.flac' และเข้ารหัสใหม่ด้วย 'flac -F' เพื่อข้ามเฟรมที่เสียหายและกู้คืนเสียง
การวิเคราะห์ความปลอดภัยและเวกเตอร์การโจมตีตัวแยกวิเคราะห์
FLAC มีชุดโค้ดที่มีความเสถียร แต่บล็อกข้อมูลเมตาที่ผิดรูปแบบ (เช่น บล็อกรูปภาพหรือคิวชีทที่มีขนาดใหญ่เกินไป) อาจทริกเกอร์ปัญหาของตัวแยกวิเคราะห์ได้
เวกเตอร์การโจมตีที่ทราบ
- ความผิดพลาดของตัวเลขล้น (Integer overflow) ในการแยกวิเคราะห์ METADATA_BLOCK_PICTURE ส่งผลให้เกิดความเสียหายของฮีปในตัวจัดทำดัชนีสื่อที่ยังไม่ได้แพทช์
- บิตการกำหนดช่องสัญญาณที่ถูกสร้างขึ้นมาทำให้เกิดการหารด้วยศูนย์ในรูทีนการแยกความสัมพันธ์สเตอริโอ
- การอ่านหน่วยความจำฮีปเกินขอบเขต (Heap out-of-bounds read) ในตัวอ่านความคิดเห็น Vorbis ของ libFLAC
แนวทางปฏิบัติที่ดีที่สุดในการป้องกัน:
ประวัติความเป็นมาและเหตุการณ์สำคัญ
ข้อได้เปรียบและจุดเด่นสำคัญ
- ข้อมูลจำเพาะแบบเปิดและปลอดค่าลิขสิทธิ์อย่างสมบูรณ์ ปราศจากข้อจำกัดด้านสิทธิบัตร
- การออกแบบแบบไม่สมมาตรช่วยให้สามารถถอดรหัสได้ทันทีและใช้ทรัพยากรน้อยบนฮาร์ดแวร์ที่มีแบตเตอรี่จำกัด
- รวมลายเซ็นเสียง MD5 ไว้ในส่วนหัว STREAMINFO สำหรับการตรวจสอบความเสียหายระดับบิตโดยอัตโนมัติ
ข้อจำกัดทางเทคนิคและข้อควรพิจารณา
- ไฟล์มีขนาดใหญ่กว่ามาก (โดยทั่วไปใหญ่กว่า 5 เท่า) เมื่อเทียบกับรูปแบบที่มีการสูญเสียข้อมูล เช่น MP3, AAC หรือ Opus
- ไม่มีการรองรับข้อมูลเสียงแบบทศนิยม 32 บิตที่ใช้กันทั่วไปในบัสการมิกซ์ภายในของ DAW
- การต่อต้านในอดีตจากแอปพลิเคชันเดิมของ Apple ทำให้ต้องใช้รูปแบบทางเลือกอื่นเช่น ALAC
เกร็ดความรู้ทางเทคนิคที่น่าสนใจ
- ลายเซ็นเมจิก 4 ไบต์ 'fLaC' มีการผสมตัวพิมพ์ใหญ่และเล็กซึ่งย่อมาจาก 'Free Lossless Audio Codec'
- องค์การอวกาศยุโรป (European Space Agency) ใช้ FLAC เพื่อบีบอัดการบันทึกเสียงทางวิทยาศาสตร์จากภารกิจอวกาศในชั้นบรรยากาศ
- เครื่องเล่นเพลง Pono ความละเอียดสูงของ Neil Young สร้างระบบนิเวศทั้งหมดรอบๆ FLAC ขนาด 24-bit/192 kHz
คำถามทางเทคนิคที่พบบ่อย
FLAC สามารถบีบอัดเสียงได้ดีเท่า MP3 หรือไม่?
ไม่. FLAC เป็นแบบไม่สูญเสียข้อมูล (lossless) ซึ่งหมายความว่าจะรักษาตัวอย่างเสียงทุกตัวอย่างไว้ โดยปกติจะลดขนาดลงได้ 50% ส่วน MP3 เป็นแบบสูญเสียข้อมูล (lossy) โดยจะตัดข้อมูลที่หูมนุษย์ไม่ได้ยินออกเพื่อให้ลดขนาดลงได้ 80% ถึง 90%
ระดับการบีบอัดของ FLAC (0-8) ทำหน้าที่อะไร?
ระดับการบีบอัดใน FLAC จะส่งผลต่อเวลาในการเข้ารหัสและภาระของซีพียู แต่ไม่ใช่คุณภาพเสียง ทุกระดับ (0 ถึง 8) จะคลายการบีบอัดออกมาเป็นเสียงเดียวกันทุกประการ ระดับ 8 ใช้เวลาเข้ารหัสมากกว่าแต่จะได้ไฟล์ที่มีขนาดเล็กกว่าเล็กน้อย
FLAC สามารถเก็บภาพปกอัลบั้มได้หรือไม่?
ได้. FLAC มีบล็อก METADATA_BLOCK_PICTURE โดยเฉพาะ ซึ่งฝังภาพปกหน้า, ปกหลัง และภาพประกอบอัลบั้มไว้ภายในไฟล์เสียงโดยตรง
คู่การแปลงไฟล์ FLAC ที่เกี่ยวข้อง
การแปลงไฟล์ FLAC แบบไม่สูญเสียข้อมูลให้เป็นไฟล์ MP3 ที่บีบอัดแล้วช่วยลดขนาดไฟล์ลงอย่างมาก ทำให้คลังเพลงของคุณรองรับกับเครื่องเล่นมีเดียรุ่นเก่าและอุปกรณ์มือถือที่มีพื้นที่จำกัด
การแปลงไฟล์ MP3 แบบสูญเสียข้อมูลเป็นไฟล์ FLAC แบบไม่สูญเสียข้อมูลจะนำข้อมูลเสียงใส่ลงในคอนเทนเนอร์เก็บข้อมูลแบบไม่บีบอัด แม้ว่าจะไม่สามารถคืนค่าความถี่ที่ถูกตัดทอนไปจากการบีบอัดเดิมได้ก็ตาม
การแปลงไฟล์ Apple Lossless Audio Codec เป็น FLAC Master จะช่วยย้ายคอลเลกชันเพลงสำหรับการจัดเก็บถาวรของคุณจากคอนเทนเนอร์ MP4 ที่จำกัดเฉพาะในระบบนิเวศของ Apple ไปสู่มาตรฐานแบบโอเพนซอร์สที่รองรับบนเครื่องเล่นสื่อและอุปกรณ์ฮาร์ดแวร์หลายพันรายการ
การแปลงไฟล์เสียง FLAC Master เป็น Apple Lossless จะเป็นการเปลี่ยนคอนเทนเนอร์จาก FLAC แบบดั้งเดิมเป็น MP4 ในขณะที่ยังคงรักษาข้อมูลเสียงต้นฉบับทุกๆ บิตไว้ได้อย่างครบถ้วน
การแปลง WAV PCM แบบไม่บีบอัดเป็น FLAC Master ช่วยลดขนาดไฟล์เสียงของคุณลงครึ่งหนึ่งโดยไม่สูญเสียข้อมูลเสียงแม้แต่บิตเดียว
การแปลง FLAC Master เป็น WAV PCM จะคลายการบีบอัดไฟล์เสียงให้อยู่ในรูปของข้อมูลพัลส์โค้ดมอดูเลชันดิบเพื่อให้เข้ากันได้กับฮาร์ดแวร์อย่างไร้ที่ติ
การแปลงไฟล์ Monkey's Audio เป็น FLAC Master จะรักษาข้อมูลเสียงต้นฉบับทุกบิต พร้อมทั้งปลดล็อกความเข้ากันได้แบบสากลกับเครื่องเล่นสื่อและฮาร์ดแวร์สมัยใหม่เกือบทั้งหมด
การแปลงไฟล์เสียง AIFF เป็น FLAC ระดับมาสเตอร์ช่วยลดขนาดไฟล์ที่ไม่มีการบีบอัดลงได้สูงสุดร้อยละ 60 โดยยังคงรักษาข้อมูลเสียงต้นฉบับไว้ทุกบิต