AVIF everywhere? 토론은 인코딩 CPU 25배와 JPEG XL 비교로 갈렸다
- AVIF는 인코딩에 JPEG보다 CPU를 약 25배 더 쓴다는 지적이 나옴. 0.5초면 되던 이미지 업로드가 12초 걸린다는 사례도 붙음
- AVIF는 AV1 기반 컨테이너라 AV1 특허 분쟁 위험을 그대로 안고 있다는 질문이 나왔고, 스틸 이미지는 AV1의 일부만 쓰니 위험이 더 낮을 수 있다는 답이 이어짐
- JPEG XL의 강점은 기존 JPEG을 무손실로 변환하는 것 하나이고, 같은 용량 대비 화질은 AVIF가 앞선다는 비교가 나옴. 무손실에서는 WebP와 JXL이 낫다는 의견도 있음
- HDR을 지원하는 건 AVIF와 JXL이고 WebP는 지원하지 않아 HDR 이미지에서 선택지가 좁음. 아이폰 HEIC는 문서화가 부실한 별도 포맷이라는 지적도 나옴
- 글은 유튜브가 2027년 이른 시점에 AV2로 넘어갈 준비를 한다는 점을 근거로 들지만, 이미지와 비디오는 다르고 우리는 유튜브가 아니라는 반론이 나옴. AV1 디코딩 부하로 구형 PC가 버벅인 사례도 언급됨
Hacker News 의견들
AVIF가 아니라 JPEG XL 얘기 아니냐? 웹 용도로 둘 비교한 글도 있었는데.
JXL의 진짜 강점은 기존 JPEG을 무손실로 그대로 옮기는 것 하나뿐임. 같은 용량 대비 화질은 AVIF가 확실히 낫더라.
JXL은 인코더 개선 여지가 크다고 봄. 최저 비트레이트 쪽 한계 말고는 결국 인코더에 인력이랑 돈이 얼마나 들어갔느냐 싸움인 것 같음. 나는 AVIF 쓰지만 JXL에 괜히 미련이 남음.
내 사진 포트폴리오 사이트는 AVIF 덕에 더 좋은 화질을 더 빨리 보여줌. 워드프레스용 AVIF 플러그인도 하나 링크해둠.
그 플러그인이 프런트에서 JPEG를 갈아치우는 방식이라 문제임. 지금은 거의 모든 브라우저가 AVIF를 지원하니까 JPEG 올린 사람은 전부 다시 인코딩된 이미지를 받게 됨. JXL이면 무손실인데.
이미지 받을 때마다 webp면 바로 webp to png 검색부터 함. 쓰는 서비스나 툴이 지원을 안 하니까. Fire TV 스틱도 안 됨. 그래도 nginx에서는 되는 포맷 다 서빙하게 해놨음.
그럴 땐 squoosh.app에 넣으면 열린 표준 이미지는 거의 다 변환됨. 포토샵도 webp 지원한 지 오래라 요즘 webp 때문에 막히는 일은 거의 없더라.
일반 JPEG도 훨씬 더 압축할 수 있음. jpegli 같은 것 보면. 근데 인터넷 전체로 보면 이미지보다 비디오가 훨씬 중요해서 이미지는 비교도 안 됨.
이제 습관적으로 WebP 쓰기 시작한 참인데, 개인 리사이즈 툴에 AVIF 지원을 추가했음. 주로 스크린샷에 쓰는데 그건 WebP가 더 나음.
구글 jpegli 인코더 써봤음? 대부분 이미지에서 webp랑 비슷하게 나옴. 색 수 적은 이미지는 quantized png가 제일 나음.
AVIF가 HDR을 지원하는 게 바꿀 이유더라. 근데 HDR 자체가 지금 엉망임. 아이폰 HEIC는 문서도 부실한 이상한 포맷이고 WebP는 HDR 지원이 아예 없음.
유튜브가 2027년에 AV2로 넘어간다고 하니 우리도 이미지를 봐야 하지 않냐는 논리인데, 이미지랑 비디오는 다르고 우리는 유튜브가 아님.
AVIF가 AV1 기반이니까, 유튜브의 AV1 사용이 이미 주류가 됐으니 이미지도 그렇게 가자는 뜻 아님?
AV1이 대역폭은 많이 아끼지만 디코딩 자원을 더 먹음. 구형 PC에서 팔레문 쓰는 사람이 갑자기 CPU를 잡아먹는다고 해서 봤더니 유튜브가 AV1을 보내고 있었음. 브라우저에서 AV1 끄니까 H.264로 돌아가서 해결됐음.
키프레임 기반 이미지 포맷 그만 좀 늘렸으면. 비디오 서빙 인프라를 하나도 안 쓰는 반쪽짜리 포맷만 자꾸 나옴.
AVIF도 AV1 특허 위험을 그대로 안고 있나? 스트리밍 사이트 상대로 소송 시도가 있다고 들었는데.
스틸 이미지라 AV1의 일부만 쓰니까 위험은 좀 낮을 수도 있음. 그리고 그런 위험 때문에 포맷을 안 쓰는 건 말이 안 됨. 내일 누가 뭘로 소송 걸지 모르는 거니까.
AVIF는 인코딩할 때 JPEG보다 CPU를 25배쯤 먹음. 전기세 내는 입장이면 고려할 만함. 업로드가 0.5초면 될 게 12초 걸림.