AVIF를 JPEG로 변환할 때 사라지는 데이터: 투명도, 광색역, 파일 크기
AVIF는 HEIF 기반의 차세대 이미지 형식으로, 동일한 화질에서 JPEG보다 평균 50% 작은 파일 크기를 제공한다. 또한 알파 채널(투명도)과 10비트 이상의 광색역(wide color gamut)을 지원한다. 그러나 이 페이지에서 AVIF를 JPEG로 변환하면 이 두 가지 정보가 모두 손실된다. JPEG는 8비트 sRGB만 다루며 알파 채널이 없기 때문이다. 또한 AVIF의 강력한 압축 덕분에 원본이 이미 매우 작은 경우, 변환된 JPEG가 오히려 더 커질 수 있다. 이 페이지는 이러한 현상을 “Larger” 라벨로 표시한다.
변환 엔진은 브라우저 내장 디코더를 사용한다. AVIF 디코딩은 대부분의 최신 브라우저에서 지원되지만, 이 도구는 AVIF를 읽기만 하고 출력은 JPEG로 고정된다.
품질 슬라이더의 작동 방식과 세대 손실
JPEG 품질 슬라이더는 40%에서 100%까지 1% 단위로 조절 가능하다. 40% 미만이나 100% 초과 값은 허용되지 않는다. 이 슬라이더는 JPEG 인코더의 양자화 테이블을 제어한다. 값이 낮을수록 고주파 성분을 더 많이 버리므로 파일 크기는 작아지지만 블록화 현상(blocking artifact)과 링잉(ringing)이 증가한다. 100%는 최소 압축(거의 무손실 수준)이지만 여전히 손실 압축이므로 반복해서 저장하면 세대 손실(generation loss)이 누적된다. 따라서 변환된 JPEG를 다시 편집하고 저장하는 것은 피해야 한다.
원본 AVIF가 이미 손실 압축되어 있을 수 있다. AVIF 자체도 손실/무손실 모드를 지원하지만, 이 페이지에서 읽어들인 파일이 손실 AVIF라면 JPEG 변환 시 2차 손실이 발생한다. 결과적으로 화질 저하가 두 배로 일어난다.
입력과 출력: 오류 처리 및 라벨 규칙
파일 업로드 시 다음과 같은 오류 메시지가 나타난다.
| 조건 | 메시지 |
|---|---|
| 파일이 손상되었거나 비어 있거나 이미지가 아님 | "이 파일을 이미지로 열 수 없습니다. 파일이 손상되었거나 비어 있거나 올바른 이미지가 아닐 수 있습니다." |
| 변환 중 예외 발생 | "변환에 실패했습니다. 다른 이미지나 형식을 시도해 주세요." |
| 최대 이미지 수 초과 | "Choose up to ‹max› images at a time." |
변환 성공 시 각 이미지에 대해 원본 파일 크기, 변환 파일 크기, 크기 비교 라벨("Saved" 또는 "Larger")이 표시된다. "Saved"는 변환 파일이 원본보다 작을 때, "Larger"는 클 때 붙는다. 총계는 Total: ‹원본 크기› -> ‹변환 크기› 형태로 나타난다.
최대 허용 이미지 수는 20개이다.
일괄 변환과 ZIP 다운로드
두 개 이상의 이미지를 변환하면 "Download all (.zip)" 버튼이 나타난다. 각 이미지에는 개별 Download 버튼이 있어 단일 파일로도 내려받을 수 있다. ZIP 파일은 브라우저에서 생성되며 서버로 전송되지 않는다.
라벨 정보는 개별 다운로드와 ZIP 다운로드 모두 유지되지 않는다. 압축 파일 내부는 원래 파일명을 유지하지만 확장자는.jpg로 변경된다.
클라이언트 측 처리의 프라이버시 장점과 기술적 한계
모든 변환은 사용자 기기의 브라우저 메모리에서 이루어진다. 업로드 버튼을 눌러도 실제로 서버에 파일이 전송되는 경우는 없다. 이는 민감한 이미지(의료, 법률, 개인 사진)를 다루는 사용자에게 적합하다.
단, 브라우저 성능에 의존하므로 큰 해상도의 AVIF(예: 8K 사진)를 여러 장 처리할 경우 메모리 사용량이 증가할 수 있다. JPEG 인코딩은 모든 브라우저에서 지원되므로 폴백(fallback)이 필요하지 않다.
FAQ
Q: AVIF에 투명한 배경이 있는데 JPEG로 변환하면 어떻게 되나요? A: 투명도가 완전히 사라집니다. 원본에서 알파 채널로 표현된 투명 영역은 변환 시 검은색으로 채워집니다. 미리 배경색을 지정할 수 있는 기능은 이 페이지에 없습니다.
Q: 변환된 JPEG가 원본 AVIF보다 더 큰 이유는 무엇인가요? A: AVIF가 JPEG보다 훨씬 효율적으로 압축하기 때문입니다. 예를 들어, 단색 배경의 간단한 그래픽은 AVIF에서 10KB, JPEG 80% 품질에서 30KB가 될 수 있습니다. "Larger" 라벨이 이를 알려줍니다.
Q: 품질을 100%로 설정하면 무손실인가요? A: 아닙니다. JPEG 100%는 손실 압축의 최소 설정일 뿐입니다. 변환 시 원본 AVIF의 모든 세부 정보를 유지하지 못합니다. 특히 AVIF의 10비트 색상은 8비트 sRGB로 양자화되면서 계조가 끊어질 수 있습니다.
Q: 여러 파일을 한 번에 변환할 수 있나요? A: 최대 20개의 이미지를 한 번에 변환할 수 있습니다. 변환 후 ZIP으로 일괄 다운로드할 수 있습니다.
Q: 오류 메시지가 "이 파일을 이미지로 열 수 없습니다"라고 나오면 어떻게 하나요? A: 선택한 파일이 손상되었거나 비어 있거나 유효한 이미지 형식이 아닐 수 있습니다. 파일 확장자가 .avif인지 확인하십시오. 이미지 뷰어에서 해당 파일이 정상적으로 열리는지 확인한 후 다시 시도하십시오.
Q: 변환된 JPEG를 다시 AVIF로 되돌릴 수 있나요? A: 품질 저하가 누적되므로 권장하지 않습니다. JPEG로 저장된 이미지는 이미 손실된 데이터(알파, 광색역, 세부 정보)를 복구할 수 없습니다. 원본 AVIF를 보관하는 것이 좋습니다.