Last week someone sent me an iPhone clip and asked why Telegram wouldn't take it as a video avatar. The upload went through, the spinner finished, and then nothing. No error, no avatar, old photo still there. That silent failure is the whole reason this article exists.
The Silent Failure
iPhones have recorded in HEVC (H.265) by default since iOS 11. It saves storage, and it breaks in a lot of places that still expect H.264. Telegram's video avatar feature is one of them. Most clients accept the upload, show progress, and then quietly keep your old avatar. There's no toast and no log entry telling you the codec was the problem.
I lost an hour on this before I pulled the file into ffprobe and saw hev1 in the stream info. Once you know what Telegram actually wants, the fix is one ffmpeg command. Getting to that command took some digging, so here's all of it.
What Telegram Actually Requires







