On Tue Nov 26 13:52:15 2024 +0000, Nikolay Sivov wrote:
Why do we need to keep this pair of samples at all? Do we know from the tests that this sink always keeps two of them?
That's right. I wrote the following tests to explore what Windows was doing: [svr_tests.patch](/uploads/445c54d660f272fde21e8eef710509db/svr_tests.patch)
I found Windows requests two samples as part of a pre-roll, and then will request a new sample every-time it returns `S_OK` to `IMFMediaEngineEx::OnVideoStreamTick`. If it drops a sample (due to the second sample being "ready"), then it will request a second sample on receipt of the first.