아이폰 사파리 브라우저도 AVIF 움짤 지원 시작! Safari on iOS 16.4 업데이트부터

드디어 아이폰에서 AVIF 움짤이 표시되는 것을 확인했습니다.

아이폰의 iOS 16.5 소식을 보고 습관처럼 Can I use 사이트에서 호환성을 확인해보았는데 Safari on iOS 16.4부터 animated AVIF sequences 미지원 표시가 사라져있는 것을 확인했습니다.

iOS 16.4 업데이트 후에 곧바로 AVIF 움짤부터 확인해봤지만 보이지 않았는데 릴리즈 노트에서도 수정된 내용이 있으니 확인해본 결과 드디어 AVIF가 보이는 것을 확인했습니다. 다만 모든 AVIF 움짤이 보이는 것이 아니었습니다. 다양한 방법으로 AVIF 움짤을 만들어서 확인해보았습니다.

다양한 AVIF 움짤 만드는 방법

실제로는 더 다양한 방법이 있겠지만 지금까지 제가 움직이는 AVIF 움짤 이미지를 만드는 데에 사용해본 방법은 5가지입니다.

꿀캠 - 반디소프트의 움짤 녹화, 편집 GUI 프로그램

무료 버전에는 워터마크, 시간 제한 등의 제약이 있지만 유료 프로그램답게 다양한 기능을 제공하며 업데이트도 꾸준한 꿀캠. WebP도 이르게 지원했고 AVIF도 2021년 중반에 업데이트 되었습니다.

ezgif - 움짤 편집, 변환 사이트

프레임 제한, 느린 처리 속도 같은 제약이 있고 무엇보다 기본 화질이 별로지만 사이트에 접속하면 바로 이용할 수 있어 편리하고 워터마크가 없어 주로 움짤 변환을 위해 사용하는 사이트입니다. AVIF 지원.

FastFlix(SVT-AV1) - 다양한 포맷을 지원하는 GUI 인코더

HEVC, AV1 등 다양한 포맷을 지원해 제가 CPU 인코딩 성능을 테스트할 목적으로 사용하는 프로그램인데 최근에 AVIF 지원이 추가되었습니다. FFmpeg에서 libsvtav1를 사용하는 것이나 마찬가지지만 기본 설정이 SVT-AV1이고 GUI 프로그램이라 따로 뺐습니다.

FFmpeg(libaom-av1)

FFmpeg는 작년부터 AVIF를 지원하기 시작했습니다. 따로 지정하지 않으면 변환할 때에 libaom-av1 코덱을 사용합니다.

avifenc

공식? AVIF 인코더입니다. 구글 문서에서도 avifenc를 사용하는 방법을 소개하고 있으니 가장 표준에 가깝지 않나 싶습니다. 움짤 변환에는 ffmpeg로 영상을 파이프하는 과정을 거칩니다.

아이폰 XS iOS 16.4 Safari로 AVIF 이미지 확인

위 5가지 방법으로 만든 AVIF 움짤 중 iOS 16.4로 업데이트한 아이폰 XS의 사파리 브라우저에서 제대로 표시되는 것은 일부였습니다.

꿀캠, ezgif

이전 사파리처럼 AVIF 이미지는 물음표로 표시됩니다. iOS 16.4 업데이트 후에 확인했던 AVIF 움짤이 꿀캠으로 만들었던 이미지였습니다.

FFmpeg(libaom-av1)

드디어 아이폰 Safari에서 animated AVIF 이미지가 표시됩니다! 하지만 무슨 필터를 씌운 듯이 색표현 문제가 있는 것을 볼 수 있습니다.

FastFlix, avifenc

FastFlix와 avifenc로 만든 AVIF 시퀀스 이미지도 사파리에서 표시되며 libaom-av1처럼 색이 심하게 왜곡되지도 않았습니다.

원본, avifenc, SVT-AV1

하지만 SVT-AV1 코덱도 색문제가 없는 것은 아니었습니다. 원본은 조금 붉은색인데 SVT-AV1으로 만든 AVIF 이미지에서는 엷어졌습니다. avifenc로 만든 AVIF는 원본과 거의 비슷하여 구별하기 어렵습니다.

그럼 avifenc을 이용한다면 아이폰 Safari 브라우저에서 AVIF 움짤을 제대로 볼 수 있게 된 것인가? 그렇지 않았습니다.

안드로이드, 아이폰 AVIF 움짤 호환 문제

avifenc, SVT-AV1으로 만든 AVIF 움짤이 아이폰 사파리 브라우저에서 움직이기는 하지만 WebP와 유사한 문제가 있습니다. 아래 영상은 avifenc로 만든 AVIF를 왼쪽의 안드로이드 스마트폰 엑스페리아 10 Mark IV와 오른쪽의 iOS 16.4로 업데이트한 아이폰 XS로 재생해본 것입니다.

매끄럽게 재생되지 않고 끊기는 문제입니다. 처음에는 조금 느린가 싶다가 프레임이 지나갈수록 점점 더 느려져 4초짜리 움짤을 재생하는데 32초가 걸립니다. 인내심이 필요하며 긴 움짤을 보는 것은 포기해야할 겁니다.

안드로이드도 완벽하지는 않습니다. 아이폰에서는 긴 1회 재생이 끝나면 매끄럽게 움직이는데 엑스페리아 10 마크 4는 조금 끊김이 느껴집니다. 확인해보니 프레임의 1/4 정도가 표시되지 않습니다. 꿀캠이나 ezgif에서 만든 이미지, 아이폰에서 물음표로 표시되는 AVIF 움짤에서는 발생하지 않았습니다.

안드로이드

아이폰 iOS

꿀캠, ezgif

문제 없음?

표시되지 않음

libaom-av1

프레임 생략

색 왜곡, 프레임 늘어짐

SVT-AV1

avifenc

프레임 늘어짐

제가 확인해본 상황 중 모바일에서 AVIF 움짤을 문제없이 볼 수 있는 건 안드로이드 스마트폰에서 꿀캠이나 ezgif로 만든 이미지를 볼 때뿐입니다.

드디어 아이폰도 AVIF 움짤을 볼 수 있게 되었습니다. 하지만 일부 이미지만 볼 수 있으며 그마저도 WebP 움짤처럼 뚝뚝 끊기는 문제가 있습니다. 그리고 이번에 안드로이드 스마트폰에서는 꿀캠, ezgif를 사용한 움짤만 매끄럽게 재생된다는 것도 새로 알게되었습니다.

아이폰에서도 AVIF 움짤이 보이게 되었다는 점은 기쁘지만 문제점이 있습니다. 어쩌면 꿀캠에서 완화시키는 업데이트를 해줄 수도 있겠지만 웹에서 AVIF를 보기까지는 시간이 좀 걸릴 듯합니다.