3 คะแนน โดย GN⁺ 2025-02-12 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ในอัปเดต 1.5 ของ Free Lossless Audio Codec (FLAC) ได้เพิ่มการเข้ารหัสเสียงแบบหลายเธรดเข้ามาในที่สุด
    • เดิมทีใช้งานได้เฉพาะเธรดเดียว แต่ตอนนี้สามารถใช้ประโยชน์จาก CPU แบบหลายคอร์ได้แล้ว
    • ในคำสั่ง flac สามารถกำหนดจำนวนเธรดได้ด้วยตัวเลือก -j # หรือ --threads=#
    • เมื่อรองรับการเข้ารหัสแบบหลายเธรดแล้ว ก็สามารถแปลงไฟล์เสียงจำนวนมากได้เร็วขึ้นมาก
  • การปรับปรุงเพิ่มเติม
    • ตอนนี้รองรับการถอดรหัสไฟล์ Ogg FLAC แบบ chained แล้ว
    • ปรับปรุงเสถียรภาพของไลบรารี: รวมการแก้บั๊กและอัปเดตระบบบิลด์
    • ใน libFLAC, libFLAC++, metaflac เมื่อมีการเปลี่ยนแปลงเมทาดาทา สามารถเขียนเป็นไฟล์ใหม่ได้แทนการเขียนทับไฟล์เดิม

1 ความคิดเห็น

 
GN⁺ 2025-02-12
ความเห็นบน Hacker News
  • มีความคาดหวังเกี่ยวกับการถอดรหัสไฟล์ Ogg FLAC ที่ต่อเข้าด้วยกัน

    • ซอฟต์แวร์บางตัวที่ใช้ libFLAC/libFLAC++ สำหรับ demultiplexing และ decoding ทำงานกับสตรีม Icecast ที่ใช้ FLAC ได้ไม่ถูกต้อง
    • โดยทั่วไปสตรีมเหล่านี้จะถูก multiplex ด้วย Ogg และอัปเดตเมตาดาตาโดยปิด Ogg bitstream เดิมแล้วเริ่มใหม่
    • หากใช้ libFLAC เพื่อ demultiplexing และ decoding เมื่อสตรีมมีการอัปเดต มันจะค้างไม่สิ้นสุด
    • แอปต้องทำ Ogg demultiplexing เอง และรีเซ็ตตัวถอดรหัสระหว่างสตรีม
    • Ogg FLAC แบบต่อเนื่องสามารถให้บริการสตรีมวิทยุอินเทอร์เน็ตแบบไม่สูญเสียข้อมูล และสามารถมีเมตาดาตา in-band ที่สมบูรณ์โดยไม่ต้องพึ่งวิธี out-of-band
    • สามารถใส่ได้ทุกอย่างที่ใส่ใน Vorbis comment block ได้ เช่น ภาพปกอัลบั้มแบบ in-band, ข้อมูลศิลปิน, ลิงก์ เป็นต้น
  • การเข้ารหัส FLAC ให้ประสิทธิภาพสูงกว่าเวลาจริงมากกว่า 60 เท่าบนเครื่องสมัยใหม่ได้อยู่แล้ว

    • หากไม่ได้ต้องทรานส์โค้ดทั้งคลังไลบรารี ก็น่าจะใช้เวลากับการตั้งค่าการเข้ารหัสมากกว่า
  • ตอนนี้ FLAC ถูกเผยแพร่เป็น RFC 9639 แล้ว

  • การทดสอบประสิทธิภาพบน Windows ด้วยเครื่อง 8 คอร์ 16 เธรดที่ใช้ libwinpthread

    • เวลาเฉลี่ยของคำสั่ง flac -f -8 a.wav a.flac อยู่ที่ประมาณ 13.148 วินาที
    • เวลาเฉลี่ยของคำสั่ง flac -j16 -f -8 a.wav a.flac อยู่ที่ประมาณ 2.404 วินาที
    • คำสั่งที่สองทำงานเร็วกว่าแบบแรกประมาณ 5.47 เท่า
  • มีความสงสัยว่าการปรับปรุงเหล่านี้จะต่อยอดไปสู่การสตรีม FLAC แบบหน่วงต่ำได้หรือไม่