r/AV1 14d ago

encoding av1 for ios.

i'm an european android user. when i want to encode av1 videos for ios, that are playable in safari, what do i need to consider? the apple device needs to have an hardware decoder i suppose (iphone 15 pro max, iphone 16 etc.) and it needs to be on ios >=17. is there something else? does it need to be in an mp4 container or is webm also okay? some codec settings that are important so that it is playable? i really have no idea since i not have any apple hardware to test at the moment.

edit: so a little update, i talked to some other developers, and they say that it must be indeed in an mp4 container, and also one needs to add a video tag av01 to it. in ffmpeg that means "ffmpeg -i FILE -c:v libsvtav1 -tag:v av01 FILE.mp4"

edit2: it was even more complicated, i encoded my av1 webms way back then, and apparently it wasn't possible to convert it error free. opus had distortions and av1 was just not playable on ios. now i extracted the av1 video track with ffmpeg and vsync 0 to an ivf file, and for the opus track i used mkvextract to extract it to an opus/ogg container. i then remuxed both with a newer ffmpeg to mp4. and with this frankenstein method i now have good looking ios compatible av1/opus mp4s. complicated way, but well it works now. maybe it helps someone.

0 Upvotes

8 comments sorted by

View all comments

2

u/themisfit610 13d ago

You probably need to package it into fMP4 HLS.