- มีการผสานรวมตัวถอดรหัส JpegXL เข้ากับโค้ดเบสของ Chromium ทำให้เบราว์เซอร์สามารถประมวลผลภาพฟอร์แมต JXL ได้
- สามารถดูการเปลี่ยนแปลงได้ในหน้ารีวิวโค้ด Gerrit ภายใต้ชื่อ “Wire up JXL decoder”
- การรวมครั้งนี้เป็น ขั้นตอนสำคัญสำหรับการรองรับฟอร์แมต JpegXL โดยรวมงานเชื่อมต่อตัวถอดรหัสไว้ด้วย
- รีวิวโค้ดนี้ถูกลงทะเบียนเป็น การเปลี่ยนแปลงในรีโพซิทอรี src ของ Chromium (7184969)
- มีความหมายในแง่ของการ ขยายการรองรับฟอร์แมตภาพยุคถัดไป ของเว็บเบราว์เซอร์
การผสานรวมตัวถอดรหัส JpegXL ของ Chromium
- รายการรีวิวโค้ด Gerrit “Wire up JXL decoder (7184969)” คือการเปลี่ยนแปลงที่เชื่อมต่อตัวถอดรหัส JpegXL เข้ากับโปรเจกต์ Chromium
- การเปลี่ยนแปลงนี้ดำเนินการภายใน รีโพซิทอรี src ของ Chromium
- แพลตฟอร์มรีวิวโค้ดใช้ chromium-review.googlesource.com
- ตามชื่อของมัน งานนี้หมายถึงการ เชื่อมต่อตัวถอดรหัส JXL เข้าภายในเบราว์เซอร์ (wire up)
- ในหน้านี้ ไม่มีคำอธิบายเพิ่มเติมหรือรายละเอียดโค้ดแสดงอยู่ โดยตรวจสอบได้เพียงชื่อของการเปลี่ยนแปลงเท่านั้น
บริบททางเทคนิค
- JpegXL เป็น ฟอร์แมตการบีบอัดภาพยุคถัดไป ที่มุ่งเพิ่มประสิทธิภาพเมื่อเทียบกับ JPEG เดิม (ไม่มีการกล่าวถึงโดยตรงในต้นฉบับ มีเพียงชื่อเทคนิคเท่านั้น)
- เมื่อมีการผสานตัวถอดรหัสเข้ากับ Chromium ก็เป็นการวาง พื้นฐานสำหรับการเปิดใช้ความสามารถในการประมวลผลภาพ JXL ในระดับโค้ด
- การเปลี่ยนแปลงนี้เป็นความก้าวหน้าทางเทคนิคที่เกี่ยวข้องกับการ ขยายระบบถอดรหัสสื่อของเอนจินเบราว์เซอร์
สถานะของเอกสาร
- หน้านี้แสดงเป็น สแนปช็อตแคชของ Gerrit code review
- มีข้อความเตือนว่า “shadow DOM ถูกซ่อนไว้” แต่ ไม่มีการแสดงเนื้อหาโค้ดจริง
- ดังนั้นข้อมูลที่ตรวจสอบได้จากเอกสารนี้จึงมีเพียง ชื่อการเปลี่ยนแปลงและตัวระบุรีวิว (7184969) เท่านั้น
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
เคยอ่าน บทความในบล็อกของ Cloudinary ซึ่งเป็นบทความคลาสสิกเก่าแก่ที่เปรียบเทียบ webp, jpegxl, avif, jpeg ฯลฯ
กราฟจัดทำมาอย่างดี และ AVIF ช้ามาก
ลิงก์ไปยังส่วนที่เกี่ยวข้อง
ดูภาพหน้าจอ
ไลบรารี jxl-rs เป็น implementation ของ JPEG XL ใน Rust
แม้จะเป็นโปรเจ็กต์ที่ค่อนข้างใหม่ แต่ด้วย Rust ก็ทำให้รู้สึกสบายใจขึ้นในแง่ ความมั่นคงปลอดภัย
ตอนที่ Chromium เคยถกเถียงกันก่อนหน้านี้ ยังไม่มีไลบรารีนี้
Rust อาจทำให้คนประมาทเกินไป และเกิดการละเลย threat modeling
ในทางกลับกัน โปรแกรมเมอร์ C ที่ระมัดระวังอาจปลอดภัยกว่าเสียอีก
ลิงก์ผลการค้นหา
เมื่อไม่นานมานี้ได้ลองเทียบ WebP กับ AVIF แล้วพบว่า WebP เข้ารหัสได้แทบจะทันที ขณะที่ AVIF ใช้เวลามากกว่า 20 วินาทีสำหรับภาพ 1MP
JXL ยังมีการรองรับน้อยเลยยังใช้จริงไม่ได้ แต่ก็คาดหวังว่ามันจะมีความเร็วระดับ WebP พร้อมคุณภาพที่ดีกว่า
ในสภาพแวดล้อมของฉัน สร้าง AVIF ขนาด 2MP ได้ในราว 100ms
น่าเสียดายที่ สเปกแบบเปิดเผยต่อสาธารณะ ของ JPEG XL ไม่ได้เข้าถึงได้อย่างเสรี
ได้ฟอร์แมตรูปภาพใหม่มาอีกหนึ่งแบบ แต่ก็ยังกังวลว่าสุดท้ายจะลงเอยด้วยการใช้งานไม่ได้หากไม่แปลงไฟล์ เหมือนเดิมอีกหรือเปล่า
ลิงก์ Microsoft Store
กลับเป็น Chromium ที่ช้ากว่าเพื่อน
ลองอ่านรายการฟีเจอร์ของ JPEG XL จากวิกิแล้ว พบว่ามีความสามารถน่าสนใจอย่าง ภาพหลายแชนเนล หรือ เอกสารหลายหน้า
มีข้อดีอยู่ แต่ก็เริ่มให้ความรู้สึกว่ามันซับซ้อนขึ้นเรื่อยๆ จนคล้าย TIFF
ระหว่าง JPEG กับ JPEG-XL ก็ยังมีจุดร่วมกันอยู่มาก
ถ้า implementation ใหม่รวมการรองรับ JPEG เดิมเข้าไปด้วย จะช่วย ลดขนาดโค้ด ได้หรือไม่ก็น่าสงสัย
ลิงก์ issue #513
ส่วนตัวแล้วตั้งใจจะใช้ JPEG เดิม ต่อไปมากกว่าฟอร์แมตใหม่อย่าง WEBP
โปรแกรมส่วนใหญ่รองรับอยู่แล้ว และสำหรับผู้ใช้ทั่วไป JPEG + PNG ก็เพียงพอ
แอนิเมชันง่ายๆ ใช้ GIF ส่วนที่ซับซ้อนก็จัดการเป็นวิดีโอได้
มันทำ การเข้ารหัสแบบไม่สูญเสียข้อมูล ได้ด้วยขนาดเล็กกว่า PNG และยังรองรับ transcoding แบบกู้คืนได้ โดยบีบอัด JPEG เดิมได้เพิ่มอีกราว 20%
มีฟีเจอร์หลากหลายอย่าง HDR, wide gamut, การโหลดแบบ progressive ฯลฯ จึงเหมาะกับการส่งผ่านเว็บอย่างยิ่ง
ดูเพิ่มเติมที่ jpegxl.info
เบราว์เซอร์หลักทั้งหมดรองรับตั้งแต่ Safari 14 เป็นต้นไป และมีมาให้โดยปริยายใน Windows 10·macOS Big Sur ขึ้นไป
ดู สถานะการรองรับ, รายชื่อซอฟต์แวร์
บทความที่เกี่ยวข้อง
ได้ยินข้อถกเถียงเรื่อง JPEG XL, WebP, AVIF มานานแต่ก็ไม่ค่อยเข้าใจนัก
พอดู benchmark แล้ว JpegXL เหนือกว่า WebP ทั้งในด้านความเร็วในการบีบอัดและขนาดไฟล์ จึงสงสัยว่าทำไม Chromium ถึงลังเลที่จะรองรับ
นอกจากนี้ libjxl ยังเป็นโค้ด C++ กว่า 100,000 บรรทัด จึงมี ความเสี่ยงด้านช่องโหว่ความปลอดภัย
พอ implementation ใน Rust เริ่มสุกงอมขึ้น ดูเหมือน Chrome ก็กลับมาพิจารณาอีกครั้ง
วิดีโอเดโม
เคยสงสัยว่า JPEG XL รองรับแอนิเมชันหรือไม่
ลิงก์รายละเอียด