เสียง FLAC (.flac)

Xiph.Org มาตรฐาน

FLAC เป็นรูปแบบเสียงแบบไม่สูญเสียข้อมูลและโอเพนซอร์สที่ใช้กันแพร่หลาย ประสิทธิภาพขึ้นอยู่กับเสียงและการตั้งค่า

แปลง FLAC เป็น MP3

ตัวแปลงจาก FLAC เป็น MP3 ฟรีในเบราว์เซอร์ แปลงไฟล์ได้ทันทีบนอุปกรณ์ของคุณ

ตรวจสอบไฟล์และข้อมูลเมตา

ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ FLAC โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:

เลือกหรือวางไฟล์ที่นี่

เป็นส่วนตัว - ไฟล์จะไม่ออกจากอุปกรณ์ของคุณ

หรือวาง Ctrl+V
รับประกันความเป็นส่วนตัวโดยไม่มีการส่งข้อมูลผ่านเครือข่าย: อัปโหลด 0 ไบต์ไปยังเซิร์ฟเวอร์ภายนอก การประมวลผลทั้งหมดเกิดขึ้นภายในแซนด์บ็อกซ์ของเบราว์เซอร์ของคุณ

ลายเซ็นส่วนหัวระดับไบต์

ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ FLAC โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:

ลายเซ็น HEX (OFFSET 0):

66 4C 61 43

การแสดงผลรูปแบบ ASCII: fLaC

มาตรฐาน: Xiph.Org Open Standard / IETF Draft

ข้อมูลจำเพาะทางเทคนิค

สถาปัตยกรรมคอนเทนเนอร์คอนเทนเนอร์บิตสตรีม FLAC โดยตรงที่มีโครงสร้าง METADATA_BLOCK
การบีบอัดการพยากรณ์เชิงเส้น (LPC) และการเข้ารหัสเอนโทรปีแบบ Rice โดยแบ่งข้อมูลเป็นซับเฟรม
การจัดลำดับไบต์ส่วนหัวบิตสตรีมแบบ Big-Endian; เพย์โหลดตัวอย่างเป็น PCM จำนวนเต็มมีเครื่องหมาย
พื้นที่สีไม่เกี่ยวข้อง (สตรีมเสียงแบบไม่สูญเสียข้อมูล)
ช่องสัญญาณและโครงสร้างช่องสัญญาณเสียงแยกกัน 1 ถึง 8 ช่อง
ขนาดสูงสุดอัตราสุ่มสูงสุด 655,350 Hz ที่ 4 ถึง 32 บิตต่อตัวอย่าง
ความโปร่งใสสร้างเสียงกลับคืนได้ตรงระดับบิตและไม่สูญเสียข้อมูลทางคณิตศาสตร์ 100%
การสตรีมและแบบโปรเกรสซีฟคำซิงโครไนซ์เฟรมและตารางค้นหาตำแหน่งในตัวรองรับการสตรีม HTTP ตามช่วงไบต์

ตารางเปรียบเทียบทางเทคนิค: FLAC กับคู่แข่ง

คุณลักษณะทางเทคนิคFLAC (ปัจจุบัน)ALACWAVAPE
รูปแบบสัญญาอนุญาตฟรีและโอเพนซอร์ส (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

แนวทางปฏิบัติที่ดีที่สุดในการป้องกัน: ตรวจสอบความถูกต้องของความยาวบล็อกข้อมูลเมตาก่อนจัดสรรบัฟเฟอร์หน่วยความจำ และบังคับใช้ขนาดภาพปกที่เหมาะสม

ประวัติความเป็นมาและเหตุการณ์สำคัญ

2017Microsoft และ Apple เพิ่มการรองรับการถอดรหัส FLAC แบบเนทีฟใน Windows 10 และ macOS High Sierra
2003FLAC เข้าร่วมภายใต้ร่มของมูลนิธิ Xiph.Org เคียงคู่กับ Ogg, Vorbis และ Theora
2001Josh Coalson เผยแพร่ FLAC 1.0 ภายใต้สัญญาอนุญาตแบบโอเพนซอร์ส GPL/BSD

ข้อได้เปรียบและจุดเด่นสำคัญ

  • ข้อมูลจำเพาะแบบเปิดและปลอดค่าลิขสิทธิ์อย่างสมบูรณ์ ปราศจากข้อจำกัดด้านสิทธิบัตร
  • การออกแบบแบบไม่สมมาตรช่วยให้สามารถถอดรหัสได้ทันทีและใช้ทรัพยากรน้อยบนฮาร์ดแวร์ที่มีแบตเตอรี่จำกัด
  • รวมลายเซ็นเสียง 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 เป็นรูปแบบไม่สูญเสียข้อมูล ตัวอย่างเสียงที่ถอดรหัสจึงตรงกับต้นฉบับ ขนาดไฟล์ขึ้นอยู่กับเนื้อหาและการตั้งค่า ไม่มีอัตราการลดขนาดตายตัว ส่วน MP3 เป็นรูปแบบสูญเสียข้อมูลและมักสร้างไฟล์เล็กกว่าโดยตัดข้อมูลเสียงออก

ระดับการบีบอัดของ FLAC (0 - 8) ทำหน้าที่อะไร?

ระดับการบีบอัดใน FLAC มีผลต่อเวลาในการเข้ารหัสและการใช้ CPU แต่ไม่มีผลต่อคุณภาพเสียง ทุกระดับ (0 ถึง 8) จะคลายการบีบอัดออกมาเป็นเสียงเดียวกันทุกประการ ระดับ 8 ใช้เวลาเข้ารหัสนานกว่า แต่ได้ไฟล์ที่เล็กลงเล็กน้อย

FLAC สามารถเก็บภาพปกอัลบั้มได้หรือไม่?

ได้ FLAC มีบล็อก METADATA_BLOCK_PICTURE โดยเฉพาะ ซึ่งฝังภาพปกหน้า ปกหลัง และภาพประกอบอัลบั้มไว้ภายในไฟล์เสียงโดยตรง

คู่การแปลงไฟล์ FLAC ที่เกี่ยวข้อง

FLAC เป็น MP3

การแปลงไฟล์ FLAC แบบไม่สูญเสียข้อมูลให้เป็นไฟล์ MP3 ที่บีบอัดแล้วช่วยลดขนาดไฟล์ลงอย่างมาก ทำให้คลังเพลงของคุณรองรับกับเครื่องเล่นมีเดียรุ่นเก่าและอุปกรณ์มือถือที่มีพื้นที่จำกัด

MP3 เป็น FLAC

เมื่อแปลง MP3 เป็น FLAC เสียง PCM ที่ถอดรหัสแล้วจะถูกบีบอัดแบบไม่สูญเสียข้อมูล แต่ไม่สามารถกู้คืนความถี่ที่การบีบอัด MP3 เดิมตัดทิ้งไปได้

ALAC เป็น FLAC

การแปลงไฟล์ Apple Lossless Audio Codec เป็น FLAC Master จะช่วยย้ายคอลเลกชันเพลงสำหรับการจัดเก็บถาวรของคุณจากคอนเทนเนอร์ MP4 ที่จำกัดเฉพาะในระบบนิเวศของ Apple ไปสู่มาตรฐานแบบโอเพนซอร์สที่รองรับบนเครื่องเล่นสื่อและอุปกรณ์ฮาร์ดแวร์หลายพันรายการ

FLAC เป็น ALAC

การแปลงระหว่างรูปแบบที่ไม่สูญเสียข้อมูลอย่างถูกต้องสามารถคงตัวอย่างเสียงไว้ได้ แต่ผลลัพธ์ขึ้นอยู่กับตัวแปลง

WAV เป็น FLAC

การแปลง WAV PCM แบบไม่บีบอัดเป็น FLAC Master ช่วยลดขนาดไฟล์เสียงของคุณลงครึ่งหนึ่งโดยไม่สูญเสียข้อมูลเสียงแม้แต่บิตเดียว

FLAC เป็น WAV

การแปลง FLAC Master เป็น WAV PCM จะคลายการบีบอัดเสียงให้เป็นข้อมูล pulse-code modulation ดิบ เพื่อให้ใช้งานร่วมกับฮาร์ดแวร์เสียงได้อย่างกว้างขวาง

APE เป็น FLAC

แปลงแทร็ก Monkey's Audio (APE) เป็น FLAC เพื่อเก็บเสียงแบบไม่สูญเสียข้อมูลและเพิ่มการรองรับในเครื่องเล่นกับอุปกรณ์หลายรายการ

AIFF เป็น FLAC

การแปลง AIFF เป็น FLAC อาจช่วยลดขนาดไฟล์ได้ แต่จะลดได้มากน้อยเพียงใดขึ้นอยู่กับเนื้อหาเสียง