- CPNG("Compatible Network Graphics") là một nhánh fork tương thích 100% với định dạng ảnh PNG đã tồn tại khoảng 30 năm. Nó mở rộng các tính năng của PNG theo hướng hiện đại nhưng vẫn duy trì khả năng tương thích với các trình duyệt, hệ điều hành, engine hiện có.
- Mục tiêu: nhanh hơn rất nhiều về tốc độ mã hóa/giải mã so với PNG hiện tại (mã hóa hơn 10 lần, giải mã hơn 2-3 lần), qua đó tạo động lực để bổ sung tính năng mới và thúc đẩy việc chấp nhận thư viện.
- Các đặc điểm chính:
- Luồng Constrained Deflate: tính năng giúp tăng tốc độ mã hóa lên 10-25 lần và tốc độ giải mã lên 2-3 lần so với các thư viện hiện có, đã được triển khai trong fpng/fpnge.
- Mã hóa/giải mã đa luồng: công nghệ mà Apple đã sử dụng. Bổ sung bảng tra cứu vào các chunk phụ của CPNG, cho phép mã hóa/giải mã song song theo từng dải ảnh.
- Hỗ trợ FP16 và LOGLUV32: được thiết kế để ảnh HDR có thể được xem theo cách hợp lý ngay cả trên các trình duyệt và hệ điều hành chỉ hỗ trợ PNG. Dữ liệu HDR có thể được khôi phục không mất mát thông qua quy trình đơn giản và nhanh chóng.
- CPNG như một lựa chọn thay thế cho .EXR: định dạng .EXR hỗ trợ quá nhiều kiểu nén nên trên thực tế không tương thích. CPNG cung cấp một phương án tone mapping không mất mát và có thể xem trước trên hầu hết trình duyệt và hệ điều hành.
- Thiết kế của LOGLUV32: đang được phát triển để đạt HDR thực sự mà không làm phình kích thước tệp. Tác giả chỉ ra rằng các giải pháp "HDR" khác thực tế buộc phải lưu nhiều pixel 16-bit hơn số bit thực sự được dùng, và cho rằng đó là sự lãng phí.
- Tầm quan trọng của tác giả thư viện: miễn là vẫn duy trì khả năng tương thích, trên thực tế người kiểm soát định dạng chính là các tác giả thư viện.
Ý kiến của GN⁺
- CPNG là một định dạng ảnh mới bổ sung các tính năng hiện đại trong khi vẫn tương thích hoàn toàn với PNG hiện có; đặc biệt đáng chú ý là cải thiện đột phá về tốc độ mã hóa/giải mã và hỗ trợ HDR.
- Những tiến bộ này được kỳ vọng sẽ mang lại thay đổi rất hữu ích và thú vị cho các chuyên gia ở nhiều lĩnh vực như nhà phát triển web, nhà thiết kế đồ họa và kỹ sư phần mềm.
- Cách tiếp cận lấy khả năng tương thích làm trung tâm phản ánh một nguyên tắc quan trọng của phát triển phần mềm hiện đại: đồng thời theo đuổi tiến bộ công nghệ và cải thiện trải nghiệm người dùng.
2 bình luận
Ồ... liệu nó có thể trở thành một tiêu chuẩn hình ảnh mới không?
Đến giờ ngoài webp thì vẫn chưa có tiêu chuẩn hình ảnh thế hệ mới nào thật sự thành công...
Cảm giác như ngay cả Webp cuối cùng cũng là nhờ Google dùng thị phần Chrome để thúc đẩy...
Ý kiến trên Hacker News
Lo ngại rằng định dạng PNG có thể phân nhánh thành nhiều phiên bản không tương thích với nhau
Đánh giá tích cực về lý do cải tiến PNG và giá trị của việc đó
Nhận xét rằng tốc độ mã hóa của libpng chậm hơn jpg hay tiff hơn 10 lần, cùng lời khen cho kỹ thuật LOGLUV32
Phản ứng đầy hào hứng với định dạng ảnh mới và sự cảm phục đối với kỹ thuật triển khai
Sự tò mò về hiệu quả của các định dạng ảnh hiện đại
Chỉ ra việc thiếu đề cập đến JPEG XT và JPEG-HDR
Đưa ra ý tưởng về một phiên bản PNG đơn giản hóa nhưng vẫn tương thích ngược
Câu hỏi về ý nghĩa của "tương thích ngược 100%" và nhận định về sự tương đồng với APNG
Sự thán phục với CPNG và kỳ vọng về cải thiện hiệu năng của các thư viện nhận diện CPNG