The Video That Played Everywhere Except on Phones: A Codec Bug Hiding Behind a Healthy Server.
This is a submission for DEV's Summer Bug Smash: Smash Stories powered by Sentry . The symptom I run snipforge.video , an AI video editing SaaS, solo. One of its core features is share links: process a video, get a URL, send it to someone. A user reported that a shared video showed 0:00 and refused to play on their iPhone. I opened the same link on desktop Chrome and it played perfectly. Classic…
The shared video played perfectly on a desktop using Chrome, but refused to play on an iPhone. This was a perplexing bug for a solo founder since the person experiencing the issue was not the one who reported it. The serving path appeared healthy, leading the developers to suspect various other components such as Range request support, the moov atom, and Content-Type headers.
However, the actual culprit was the video codec: VP9, which is not supported by iPhone Safari. The container was an MP4, and the Content-Type was correctly set as video/mp4, but the codec inside was VP9. The developers implemented a fix that probed the actual codecs during the share pipeline's web-optimize step and re-encoded the file to H.264/AAC if necessary.
This fix solved the issue, and the developers learned the importance of logging raw probe output alongside the parsed result to avoid misinterpreting the format of tool output.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.