On Wed Apr 9 00:27:39 2025 +0000, Nikolay Sivov wrote:
This is what I get on Win11:
14 mfplat.c:13880: Test failed: mp4/h-264 timestamps: sample 0: Unexpected sample time 0, expected 1333332 15 mfplat.c:13894: Test failed: mp4/h-264 timestamps: sample 0: Got unexpected hr 0xc00d36e6 when requesting DTS, expected 0. 16 mfplat.c:13898: Test failed: mp4/h-264 timestamps: sample 0: Unexpected sample dts -1, expected 666666 17 mfplat.c:13880: Test failed: mp4/h-264 timestamps: sample 1: Unexpected sample time 1333333, expected 2666665 18 mfplat.c:13898: Test failed: mp4/h-264 timestamps: sample 1: Unexpected sample dts 0, expected 999999 19 mfplat.c:13880: Test failed: mp4/h-264 timestamps: sample 2: Unexpected sample time 666666, expected 1999998 20 mfplat.c:13898: Test failed: mp4/h-264 timestamps: sample 2: Unexpected sample dts 0, expected 1333332 21 mfplat.c:13880: Test failed: mp4/h-264 timestamps: sample 3: Unexpected sample time 333334, expected 1666666 22 mfplat.c:13880: Test failed: mp4/h-264 timestamps: sample 4: Unexpected sample time 1000000, expected 2333332 23 mfplat.c:13898: Test failed: mp4/h-264 timestamps: sample 4: Unexpected sample dts 666667, expected 1999999
I haven't checked if it's from previous MR or this one, but likely related to one or another. [log.txt](/uploads/87fccdd7e90e50ac5b2cd9f37da5b5a1/log.txt)
Oh. I thought I had seen a game specific hack that required PTS to run to a certain value (in order for the game to progress after the video). So I had been thinking some applications had a dependency on this value. But in searching for that hack, I instead found this comment: ``` /* FIXME: sample time is inconsistent across windows versions, ignore it */ ```
So, in light of that (and your findings), I guess testing for a specific sample time makes no sense. Instead, maybe I should check the difference between PTS and DTS (possibly adding tolerance for being off by one due to different rounding techniques). I'll mark this as draft while I make that change.
The other thing I've been thinking I should test is the difference between Audio and Video PTS. Although that will require the creation of new test media as these media files only have Video. But that can be a future MR.