Từ điển

Phiên bản JFIF có nghĩa là gì?

JFIF có nghĩa là JPEG File Interchange Format, định dạng của các tệp mà mọi người thường gọi là ảnh JPEG. Phiên bản JFIF cho biết tệp tuân theo phiên bản nào của định dạng này.

jfif-version

JFIF là viết tắt của JPEG File Interchange Format, và JPEG là viết tắt của Joint Photographic Experts Group. JFIF là định dạng tệp lưu trữ dữ liệu ảnh JPEG để các chương trình và máy tính khác nhau có thể mở.

Phiên bản JFIF là một trường siêu dữ liệu bên trong tệp JPEG. Nó cho bạn biết tệp tuân theo phiên bản nào của đặc tả JFIF, ví dụ 1.01 hoặc 1.02. Bạn sẽ tìm thấy trường này trong các tệp JPG, vì JFIF chỉ là định dạng cho ảnh JPEG.

JFIF bổ sung gì cho ảnh JPEG

Tiêu chuẩn JPEG xác định cách nén dữ liệu ảnh. Một tệp JFIF là tệp JPEG thông thường với một khối dữ liệu bổ sung, gọi là phân đoạn APP0. Khối này nằm ngay sau dấu đánh dấu bắt đầu ảnh.

Dữ liệu trong phân đoạn APP0 bắt đầu bằng văn bản JFIF. Phân đoạn này lưu trữ những thông tin mà dữ liệu ảnh đã nén không chứa:

  • Phiên bản JFIF
  • Mật độ điểm ảnh theo chiều ngang và chiều dọc, với đơn vị độ phân giải là inch, centimet hoặc không có đơn vị
  • Tỉ lệ điểm ảnh, được chương trình tính từ 2 giá trị mật độ
  • Một ảnh xem trước nhỏ tùy chọn, gọi là thumbnail

JFIF cũng thiết lập mô hình màu. Ảnh JFIF có 1 kênh chỉ độ sáng hoặc 3 kênh trong không gian màu YCbCr.

Những tệp nào chứa nó

Loại MIME image/jpeg được định nghĩa cho ảnh JPEG ở định dạng JFIF. Phần mở rộng tệp .jpg, .jpeg, .jpe, .jif và .jfif đều thuộc định dạng này. Vì vậy, một tệp có tên kết thúc bằng .jfif chứa cùng loại ảnh như tệp .jpg.

Máy ảnh kỹ thuật số thường lưu ảnh JPEG ở định dạng Exif. Exif lưu siêu dữ liệu chủ yếu trong một phân đoạn APP1, và phân đoạn này cũng phải nằm ngay sau phần bắt đầu ảnh. Vì cả hai phân đoạn đều phải đứng trước, một tệp không thể đồng thời tuân theo cả JFIF và Exif.

Một số chương trình vẫn ghi một phân đoạn JFIF trước phân đoạn Exif. Trong tệp như vậy, bạn sẽ thấy cả phiên bản JFIF và phiên bản Exif.

Giá trị trông như thế nào

Phiên bản JFIF được lưu trong 2 byte. Byte thứ nhất chứa phiên bản chính, byte thứ hai chứa phiên bản phụ. Phiên bản 1.02 được lưu dưới dạng các byte 01 và 02.

ExifTool hiển thị trường này là JFIFVersion. Nó in số phiên bản chính, một dấu chấm và số phiên bản phụ gồm 2 chữ số. Các kho đăng ký định dạng liệt kê 3 phiên bản JFIF:

  • 1.00: phiên bản đầu của đặc tả
  • 1.01: phiên bản ngay trước 1.02
  • 1.02: phiên bản từ ngày 1 tháng 9 năm 1992

Giá trị đến từ đâu

Chương trình lưu tệp JPEG sẽ ghi phân đoạn APP0 và số phiên bản vào đó. ITU đã công bố JFIF là Khuyến nghị T.871 vào năm 2011, và ISO cùng IEC công bố cùng nội dung này là ISO/IEC 10918-5. Tiêu chuẩn này dựa trên phiên bản 1.02 và các tệp tuân theo nó phải lưu giá trị 1.02.

Các chương trình xây dựng trên thư viện libjpeg sẽ ghi 1.01 theo mặc định. Tài liệu của thư viện cho biết cần đặt 1.02 khi chương trình thêm một phân đoạn mở rộng từ phiên bản 1.02. Vì vậy một tệp được lưu ngày nay có thể hiển thị 1.01 hoặc 1.02.

Tại sao điều này quan trọng đối với tệp của bạn

Phiên bản cho chương trình biết nó có thể đọc dữ liệu JFIF hay không. Đặc tả cho biết tệp thường có thể được giải mã khi phiên bản chính của tệp trùng với phiên bản chính mà chương trình hỗ trợ.

Phiên bản cũng cho thấy tệp có thể chứa những loại thumbnail nào. Phân đoạn mở rộng gọi là JFXX chỉ được phép ở phiên bản 1.02 trở lên. Phân đoạn JFXX có thể chứa một thumbnail nén bằng JPEG hoặc một thumbnail không nén.

Một tệp JPEG không có phiên bản JFIF thì không có phân đoạn JFIF. Điều này là bình thường với các ảnh do máy ảnh lưu ở định dạng Exif.

Meta Keys