It appears there is a sort of a limitation (read: “a bug”) in Media Foundation MPEG-4 File Source implementation when it comes to reading long fragmented MP4 files.
When respective media source is used to read a file (for which, by the way, it does not offer seeking), the source issues a MF_SOURCE_READERF_ENDOFSTREAM
before reaching actual end of file.
When some software sees a full hour of video in the file…


… Media Foundation primitive, after reading frame 00:58:35.1833333
, issues “oh gimme a break” event and reports end of stream.