Tags:
Node Thumbnail

AV1 เป็นมาตรฐานการบีบอัดไฟล์วิดีโอแบบใหม่ พัฒนาโดยกลุ่ม Alliance for Open Media (AOMedia) ซึ่งมีสมาชิกเป็นบริษัทไอทียักษ์ใหญ่มากมาย เช่น Amazon, Apple, Facebook, Google, Microsoft ฯลฯ

ตัว AV1 แท้จริงแล้วเป็นสเปกบนกระดาษ ที่ซอฟต์แวร์ตัวใดจะนำไปใช้งานก็ได้ ในตอนแรกทางกลุ่ม AOM ก็สร้างซอฟต์แวร์เข้ารหัส-ถอดรหัสวิดีโอ AV1 ขึ้นมาในชื่อว่า libaom เพื่อเป็นต้นแบบของการใช้งาน

ล่าสุด ฝั่งของชุมชนซอฟต์แวร์โอเพนซอร์สคือ VideoLAN, VLC, FFmpeg ก็ร่วมมือกันสร้างซอฟต์แวร์ตัวใหม่ชื่อ dav1d (อ่านว่า "เดวิด") ที่คุยว่ามันถอดรหัสวิดีโอได้เร็วกว่า libaom ถึง 100-400%

เหตุผลที่ dav1d ทำงานได้เร็วมาก เป็นเพราะเขียนขึ้นด้วยภาษาซี (C99) และแอสเซมบลี และปรับแต่งให้ทำงานกับชุดคำสั่ง AVX2 ของซีพียูรุ่นใหม่ๆ (รองรับตั้งแต่ Intel Haswell และ AMD รุ่นปี 2015 เป็นต้นมา)

ทีมงานผู้พัฒนา dav1d ยังระบุว่าในอนาคตจะปรับแต่งประสิทธิภาพบนชุดคำสั่ง SSE และ ARM ด้วย เพราะตั้งใจให้ dav1d ทำงานได้บนสถาปัตยกรรมหลากหลาย ทั้ง x86, x64, ARMv7, ARMv8 และระบบปฏิบัติการทุกตัว

โครงการ dav1d ได้รับการสนับสนุนทางการเงินจาก AOMedia, ใช้สัญญาอนุญาตแบบ BSD และคาดว่า Mozilla จะนำ dav1d ไปใช้ใน Firefox เวอร์ชัน 65

ที่มา - dav1d (1), dav1d (2), Phoronix

Get latest news from Blognone

Comments

By: 255BB
Android
on 23 November 2018 - 15:50 #1083513

รองรับชุดคำสั่งเก่าๆ หมายความว่ามันไม่ต้องกินสเป็คเยอะหรือต้องมี H/W ถอดรหัสโดยเฉพาะเหมือน h265 ใช่ไหมครับ

By: hisoft
ContributorWindows PhoneWindows
on 23 November 2018 - 20:59 #1083554 Reply to:1083513
hisoft's picture

หมายความว่าทำงานได้ประสิทธิภาพดีที่สุดเท่าที่ HW จะให้ได้ครับ แต่ไม่ได้หมายความว่าดูวิดีโอ AV1 4K 60FPS 10-bit บน CPU ปี 2016 แล้วมันจะลื่น CPU วิ่ง <20% อะไรอย่างนั้น

ไม่ว่ายังไง HW เฉพาะก็ได้เปรียบครับ ส่วนจะคุ้มที่จะทำหรือเปล่านั้นเป็นอีกเรื่อง

By: zyzzyva
Blackberry
on 23 November 2018 - 16:02 #1083518

dav1d ถอดรหัสอย่างเดียวครับ เข้ารหัสนี่ rav1e ครับ

By: mk
FounderAndroid
on 24 November 2018 - 09:39 #1083585 Reply to:1083518
mk's picture

แก้ตามนั้นครับ ตอนแรกเขียนตาม Phoronix ซึ่งเขียนผิดเหมือนกัน

By: semiauto
AndroidRed HatUbuntu
on 23 November 2018 - 20:47 #1083548

น่าจะส่งไปรันผ่าน CUDA,OpenCL ด้วยก็ดีนะ CPU คอมผมโบราณ