ไฟล์ FLAC คืออะไร??
FLAC (Free Lossless Audio Codec) เป็นรูปแบบการเข้ารหัสเสียงแบบไม่สูญเสียข้อมูลที่พัฒนาโดย Xiph.Org Foundation FLAC เป็นรูปแบบเปิดที่ไม่มีค่าลิขสิทธิ์ซึ่งบันทึกด้วยนามสกุล .flac เสียงดิจิตอลที่บีบอัดโดยใช้อัลกอริทึม FLAC โดยทั่วไปจะลดขนาดลงเหลือ 50 ถึง 70 เปอร์เซ็นต์ ไฟล์ FLAC สามารถขยายเป็นสำเนาที่เหมือนกันของไฟล์เสียงต้นฉบับได้
รูปแบบไฟล์ FLAC
นี่คือภาพรวมของ FLAC bitstream
- เครื่องหมาย fLaC: เครื่องหมายนี้ถูกเพิ่มที่จุดเริ่มต้นของสตรีม ตามด้วยบล็อกข้อมูลเมตาอย่างน้อยหนึ่งบล็อก
- บล็อกข้อมูลเมตา: FLAC รองรับบล็อกข้อมูลเมตา 128 ชนิด; ขณะนี้มีการกำหนดสิ่งต่อไปนี้
- STREAMINFO: Contains the information about the whole stream.
- APPLICATION: This is used by third-party applications for identification.
- PADDING: It is used to reserve space for metadata if the metadata will be edited after encoding. When the metadata is edited, the padding is replaced by the actual metadata.
- SEEKTABLE: An optional table to store seek points.
- VORBIS_COMMENT: Used to store human-readable key/value pairs.
- CUESHEET: Used to store cue sheet information.
- PICTURE: Used to store pictures.
- กรอบ: ข้อมูลเสียงประกอบด้วยเฟรมเสียงตั้งแต่หนึ่งเฟรมขึ้นไป
- FRAME_HEADER: Contains the basic information about the stream.
- SUBFRAME: To decrease the complexity, individual subframes are coded separately within a frame (one frame per channel).
- FRAME_FOOTER: Contains the CRC of the complete frame.
ประวัติโดยย่อของรูปแบบไฟล์ FLAC
Josh Coalson เริ่มพัฒนา FLAC ในปี 2000 FLAC เวอร์ชันแรกเผยแพร่เมื่อวันที่ 20 กรกฎาคม 2544 FLAC ถูกรวมอยู่ภายใต้ธง Xiph.Org เมื่อวันที่ 20 มกราคม 2546 การพัฒนา FLAC ถูกย้ายไปยังที่เก็บ Xiph.Org git ด้วย การเปิดตัวเวอร์ชัน 1.3.0 เมื่อวันที่ 26 มีนาคม 2556
องค์ประกอบของโครงการ FLAC
โครงการ FLAC ประกอบด้วยสิ่งต่อไปนี้:
- รูปแบบสตรีม
- รูปแบบคอนเทนเนอร์อย่างง่ายสำหรับสตรีม (FLAC)
- libFLAC: ไลบรารีของตัวเข้ารหัสอ้างอิง ตัวถอดรหัส และอินเทอร์เฟซข้อมูลเมตา
- libFLAC++: wrapper เชิงวัตถุสำหรับ libFLAC
- flac: โปรแกรมบรรทัดคำสั่งเพื่อเข้ารหัสและถอดรหัสสตรีม FLAC
- metaflac: ตัวแก้ไขข้อมูลเมตาบรรทัดคำสั่งสำหรับ FLAC
- ปลั๊กอินอินพุตสำหรับเครื่องเล่นเพลง เช่น Winamp, XMMX เป็นต้น
- รูปแบบคอนเทนเนอร์ Ogg (Ogg FLAC)
การออกแบบ FLAC
ขนาดของไฟล์บีบอัดอาจน้อยกว่าไฟล์ต้นฉบับ 80% ทั้งนี้ขึ้นอยู่กับความหนาแน่นและแอมพลิจูดของเพลง
ตัวเข้ารหัสต้นทาง
- รองรับเฉพาะตัวอย่างจำนวนเต็มไม่ใช่ทศนิยม สามารถรองรับความละเอียดบิต PCM ได้ตั้งแต่ 4 ถึง 32 บิตต่อตัวอย่าง และอัตราการสุ่มตัวอย่างตั้งแต่ 1Hz ถึง 65,535 Hz การเข้ารหัส FLAC จำกัดไว้ที่ 24 บิตต่อตัวอย่าง
- สามารถจัดกลุ่มแชนเนลเพื่อใช้ประโยชน์จากความสัมพันธ์ระหว่างแชนเนลเพื่อเพิ่มการบีบอัด
- การตรวจสอบ CRC ใช้เพื่อระบุเฟรมที่เสียหาย
- สำหรับการแปลงตัวอย่างเสียง FLAC ใช้การทำนายเชิงเส้น
ข้อมูลเมตา
- FLAC รองรับ ReplayGain (ใช้เพื่อรับรู้และปรับความดังของเสียงให้เป็นมาตรฐาน)
- FLAC ใช้ระบบเดียวกับที่ใช้ในความคิดเห็น Vorbis สำหรับการติดแท็ก
- libFLAC ถูกใช้โดยแอปพลิเคชัน FLAC ส่วนใหญ่สำหรับการเข้ารหัส/ถอดรหัส
- libFLAC API ถูกจัดระเบียบเป็นสตรีม สตรีมที่ค้นหาได้ และไฟล์เพื่อเพิ่มสิ่งที่เป็นนามธรรมจากบิตสตรีม FLAC พื้นฐาน
การบีบอัด
libFLAC ใช้ระดับการบีบอัดตั้งแต่ 0 ถึง 8 โดยที่ 0 คือระดับที่เร็วที่สุด และ 8 คือระดับการบีบอัดที่ช้าที่สุด ไฟล์ที่บีบอัดจะไม่สูญเสียข้อมูลเสมอ แม้ว่าจะมีการแลกเปลี่ยนระหว่างความเร็วและขนาด
FLAC กับ MP3
MP3 เป็นรูปแบบการบีบอัดแบบสูญเสีย หมายความว่าอาจตัดบางส่วนของเสียงเพื่อลดขนาดหลังจากใช้การบีบอัด ในขณะที่ FLAC เป็นรูปแบบไฟล์ที่ไม่สูญเสียข้อมูล ซึ่งหมายความว่าคุณสามารถได้ยินเสียงในรูปแบบที่บริสุทธิ์ที่สุด ก่อนหน้านี้รูปแบบไฟล์แบบไม่สูญเสียข้อมูลคือ CDA หรือ WAV ซึ่งใช้พื้นที่ไม่มากเท่า FLAC ตารางต่อไปนี้จะแสดงการเปรียบเทียบระหว่างสองรูปแบบนี้สำหรับคำสำคัญบางคำ:
คำศัพท์ | FLAC | MP3 |
---|---|---|
คุณภาพข้อมูล | ไม่มีการสูญเสียข้อมูลเสียง | ข้อมูลบางอย่างอาจสูญหายเมื่อบีบอัดข้อมูลเสียง |
ขนาด | ขนาดไฟล์ใหญ่กว่าเมื่อเปรียบเทียบกับรูปแบบที่สูญหาย ดังนั้นต้องการความจุที่มากขึ้น | ขนาดไฟล์เล็กลง เหมาะเล่นบนเครื่องเสียงขนาดกระทัดรัด พื้นที่จัดเก็บน้อย |
ข้อกำหนดของฮาร์ดแวร์ | ต้องการอุปกรณ์เสียงคุณภาพสูงและความจุขนาดใหญ่ | สามารถบันทึกคลังเสียงขนาดใหญ่ในพื้นที่จัดเก็บขนาดเล็กลงได้ เหมาะสำหรับอุปกรณ์พกพา เช่น เครื่องเล่นเสียงหรือโทรศัพท์มือถือ |
การเผยแพร่ทางอินเทอร์เน็ต | ไม่สามารถเผยแพร่ทางอินเทอร์เน็ตได้ง่ายๆ เนื่องจากไฟล์มีขนาดใหญ่ | ขนาดไฟล์ที่กะทัดรัดทำให้การเผยแพร่ทางอินเทอร์เน็ตเป็นเรื่องง่าย |
ความเข้ากันได้ | ตัวแปลงสัญญาณการฟังเพลงและเสียงยอดนิยมที่เข้ากันได้กับทุกอุปกรณ์บนโลกใบนี้ เข้ากันได้กับพีซีรุ่นใหม่ โทรศัพท์ เครื่องรับ AV เครื่องเล่นบลูเรย์ อุปกรณ์สตรีม เช่น Roku หรือ Fire TV |