เก้าปีหลังตั้งกระทู้ล่าสุด ที่สำคัญ ชุมชน Xiph.Org ได้แนะนำเวอร์ชันใหม่ของตัวแปลงสัญญาณ FLAC 1.4.0 ซึ่งให้การเข้ารหัสเสียงแบบไม่สูญเสียข้อมูล
สำหรับผู้ที่ไม่รู้จัก FLAC ควรรู้ไว้ นี่คือรูปแบบการสตรีมแบบเปิดอย่างสมบูรณ์ซึ่งหมายถึงไม่เพียงแต่การเปิดกว้างของไลบรารีด้วยการใช้ฟังก์ชันการเข้ารหัสและถอดรหัสเท่านั้น แต่ยังไม่มีการจำกัดการใช้ข้อกำหนดและการสร้างเวอร์ชันอนุพันธ์ของรหัสไลบรารี
FLAC ออกแบบมาเพื่อบีบอัดเสียง ด้วยเหตุนี้ ไฟล์ผลลัพธ์จึงสามารถเล่นได้และใช้งานได้ รวมทั้งมีขนาดเล็กกว่าการใช้อัลกอริธึมการบีบอัดทางสถิติ (เช่น ZIP) กับไฟล์ PCM โดยตรง
FLAC กลายเป็นหนึ่งในรูปแบบที่ต้องการ สำหรับการขายเพลงทางอินเทอร์เน็ตเช่นเดียวกับ Monkey's Audio ที่ทำงานได้ดีเหมือนกัน นอกจากนี้ยังใช้ในการแลกเปลี่ยนเพลงผ่านเครือข่ายแทน MP3 เมื่อคุณต้องการลดขนาดที่ใหญ่กว่าในไฟล์ WAV-PCM และไม่สูญเสียคุณภาพเสียง ในเวลาเดียวกัน วิธีการบีบอัดแบบไม่สูญเสียข้อมูลที่ใช้ทำให้ขนาดของสตรีมเสียงต้นฉบับลดลง 50-60%
ข่าวหลักของ FLAC 1.4.0
ในโคเดกเวอร์ชั่นใหม่ที่นำเสนอนี้เน้นว่า เพิ่มการรองรับการเข้ารหัสและถอดรหัส มีความลึกเล็กน้อย de 32 บิตต่อการหาปริมาณตัวอย่าง
ความแปลกใหม่ที่มาพร้อมกับการเปิดตัวเวอร์ชั่นใหม่นี้ก็คือ ปรับปรุงประสิทธิภาพการบีบอัดที่ระดับ 3 ถึง 8 โดยลดความเร็วในการเข้ารหัสลงเล็กน้อยเนื่องจากความแม่นยำในการคำนวณความสัมพันธ์อัตโนมัติที่ดีขึ้น
นอกจากนี้ ยังตั้งข้อสังเกตอีกว่าห้องสมุด libFLAC และยูทิลิตี้ flac ในเวอร์ชั่นใหม่นี้ ให้ความสามารถในการจำกัดอัตราบิต ขั้นต่ำสำหรับไฟล์ FLAC สูงสุดหนึ่งบิตต่อตัวอย่าง (อาจมีประโยชน์เมื่อโฮสต์สตรีมแบบสด)
tambien มีความเร็วในการเข้ารหัสที่สูงขึ้นสำหรับระดับ 0, 1 และ 2 พร้อมกับการบีบอัดที่ปรับปรุงขึ้นเล็กน้อยในระดับ 1 ถึง 4 โดยการเปลี่ยนฮิวริสติกแบบปรับเปลี่ยนได้ อีกทั้งยังสามารถเข้ารหัสไฟล์ด้วยอัตราตัวอย่างสูงสุด 1048575 Hz ได้อีกด้วย
ในทางกลับกัน ยังมีข้อสังเกตอีกว่า ความเร็วในการบีบอัดได้รับการปรับปรุงอย่างมากในโปรเซสเซอร์ ARMv8 64 บิตต้องขอบคุณการใช้คำสั่ง NEON ปรับปรุงประสิทธิภาพบนโปรเซสเซอร์ x86_64 ที่สนับสนุนชุดคำสั่ง FMA
จากการเปลี่ยนแปลงอื่น ๆ ที่โดดเด่นกว่ารุ่นใหม่นี้:
- API และ ABI ของไลบรารี libFLAC และ libFLAC++ มีการเปลี่ยนแปลง (การอัปเกรดเป็นเวอร์ชัน 1.4 จำเป็นต้องสร้างแอปพลิเคชันใหม่)
- เลิกใช้แล้วและจะถูกลบออกในปลั๊กอินเวอร์ชันถัดไปสำหรับ XMMS
- ยูทิลิตี้ flac มีตัวเลือกใหม่ “–limit-min-bitrate” และ “–keep-foreign-metadata-if-present”
- การบีบอัดของค่าที่ตั้งไว้ล่วงหน้า -1 และ -4 ได้รับการปรับปรุงเล็กน้อยในวัสดุบางอย่างโดยการเปลี่ยนฮิวริสติกแบบปรับตัวด้านกลาง
- การเร่งความเร็วแบบบูรณาการโดยเฉพาะการกำหนดเป้าหมายอุปกรณ์ ARMv8 64 บิตโดยใช้ NEON (Ronen Gvili, Martijn van Beurden)
- เพิ่มความเร็วสำหรับซีพียู x86_64 ที่มีส่วนขยายชุดคำสั่ง FMA
- ขณะนี้สามารถเข้ารหัสและถอดรหัส PCM . แบบ 32 บิตได้แล้ว
- แก้ไขปัญหาการใช้คุณสมบัติการแยกวิเคราะห์ที่ทำให้เฟรมแรกมีขนาดและออฟเซ็ตผิด
- ไฟล์ระบบบิลด์ MSVC และ Makefile.lite ถูกลบแล้ว การสร้างด้วย MSVC (Visual Studio) สามารถทำได้โดยใช้ CMake
- เพิ่มตัวถอดรหัส fuzzer ใหม่ เพิ่มความครอบคลุมของรหัสค้นหา
- คำเตือนที่ส่งคืนโดยการจัดการข้อมูลเมตาภายนอกมีความชัดเจนมากขึ้นในกรณีที่ผู้ใช้พยายามกู้คืนข้อมูลเมตาภายนอกที่เป็นประเภทที่ไม่ถูกต้อง เช่น โดยการถอดรหัสไฟล์ FLAC ที่มีข้อมูลเมตา AIFF ภายนอกเป็นไฟล์ WAV
ในที่สุด หากคุณสนใจที่จะทราบข้อมูลเพิ่มเติมคุณสามารถตรวจสอบรายละเอียด ในลิงค์ต่อไปนี้.