Nén có mất dữ liệu và không mất dữ liệu
Một ý tưởng giải thích phần lớn sự nhầm lẫn xung quanh việc chuyển đổi tệp, và chỉ mất hai phút để hiểu đúng.
Đăng ngày
Sự khác biệt
Nén không mất dữ liệu làm tệp nhỏ đi bằng cách mô tả nó hiệu quả hơn. Giải nén và bạn nhận lại chính xác những gì đã đưa vào, từng bit. ZIP, PNG và FLAC đều hoạt động như vậy.
Nén có mất dữ liệu làm tệp nhỏ đi bằng cách bỏ bớt thông tin — cụ thể là thông tin mà con người ít có khả năng nhận ra là thiếu. JPG, MP3, AAC và H.264 đều hoạt động như vậy, và chúng tạo ra tệp nhỏ hơn nhiều so với những gì nén không mất dữ liệu có thể làm, chính vì chúng được phép loại bỏ.
Mất mát là vĩnh viễn, và đó là phần mọi người bỏ sót
Một khi bộ mã hóa có mất dữ liệu đã loại bỏ thứ gì đó, nó mất đi vĩnh viễn. Không phép chuyển đổi nào sau đó khôi phục được. Chuyển MP3 sang FLAC tạo ra một tệp lớn, không mất dữ liệu nhưng chứa chính xác những khuyết điểm của MP3 — nó ngăn thêm hư hại, nhưng không hoàn tác được cái nào.
Đây là hiểu lầm phổ biến nhất về chuyển đổi tệp, và nó khiến mọi người mất công việc thật: một bức ảnh được mở, chỉnh sửa và lưu lại dạng JPG nhiều lần sẽ xuống cấp một chút mỗi lần, lúc đầu không thấy, sau đó thì rõ ràng.
Chuyển mã làm hư hại chồng chất
Chuyển giữa hai định dạng có mất dữ liệu — MP3 sang OGG, hoặc M4A sang MP3 — nghĩa là giải mã âm thanh đã qua một bộ mã hóa rồi cho qua bộ thứ hai. Hai bộ có những giả định khác nhau về điều gì an toàn để loại bỏ, nên bộ thứ hai làm hỏng phần mà bộ thứ nhất đã làm mỏng đi.
Quy tắc thực tế: luôn mã hóa từ bản gốc tốt nhất bạn có. Nếu bạn vẫn còn WAV hoặc FLAC, hãy mã hóa từ đó thay vì từ một MP3 bạn tạo trước đó.
Khi nào những điều này không quan trọng
Rất nhiều lúc, nó thật sự không quan trọng. Một MP3 192 kbps tạo từ đĩa CD không thể phân biệt với bản gốc với phần lớn người nghe trên phần lớn thiết bị. Một JPG chất lượng 0,92 của ảnh kỳ nghỉ không thể phân biệt với bản gốc ở kích thước xem thông thường. Ám ảnh về suy giảm qua các thế hệ ở một tệp bạn chỉ nghe một lần trong ô tô là công sức lãng phí.
Sự khác biệt quan trọng khi tệp là một bản gốc — thứ bạn sẽ chỉnh sửa lại, lưu trữ hoặc mã hóa lại sau này. Hãy giữ bản gốc không mất dữ liệu. Phân phối các bản sao có mất dữ liệu. Thói quen đơn giản đó tránh được gần như mọi vấn đề trong bài này.
Mỗi định dạng thuộc nhóm nào
Không mất dữ liệu: PNG, BMP, FLAC, WAV, và các định dạng dữ liệu — CSV, JSON, YAML — nơi một ký tự bị thay đổi sẽ là lỗi chứ không phải sự đánh đổi.
Có mất dữ liệu: JPG, WebP ở chế độ thường dùng, MP3, AAC, Vorbis, Opus, và mọi codec video phổ biến bao gồm H.264 và VP8.
Hãy tự thử cả hai loại: nén ảnh với cài đặt có mất dữ liệu, hoặc chuyển WAV sang FLAC để xem nén không mất dữ liệu làm âm thanh nhỏ đi mà không đổi một mẫu nào.