So basically, Apple is one of those companies who read the first part of age-old RFC motto of “be standards compliant” and stopped there before reading the second part that says “but tolerate others’ non-compliance” resulting in their products being rather… xnal about what they do play and refuse to play.
DoVi profile 5 streams need to be signalled as either dvhe or dvh1. and of course the Pear people only allow one of those, not either, and they picked dvh1, meanwhile SF’s mux signals it as hev1 (don’t know why, maybe ffmpeg is playing dumb) so you need to re-wrap the MP4 produced by SF to be iCompatible:-
ffmpeg -i SF_PRODUCED.MP4 -c copy -tag:v:0 dvh1 -brand mp42 -strict -1 NEW_FILE_NAME.MP4
the key here is
-tag:v:0 dvh1 -strict -1
that does the proper signalling, and -tag:v:0 only tags the actual video stream, without the :0 part, ffmpeg will try to tag your cover art image as well and fail-out
-brand mp42
is because files produced by ffmpeg by defaults are non-standards compliant and they won’t fix it because “muh, it still works!”
This works for both ATV and D+ and any other service that provides DoVi profile 5 streams, if you have a DoVi profile 8 stream, you need to swap dvh1with hvc1