``` + /* TODO: according to native tests, filter positions should be updated per sample. */ ``` I don't understand what this means? The tests imply that querying the filters is wrong—the source video you're using is 1 fps, but GetCurrentPosition() returns something more granular than that. Rather, as test_graph_seeking() shows, the current position is computed from the reference clock. The actual problem here seems to be that the updates to stream_elapsed and current_pos done in Pause() need to also be done in Stop(). As for the tests, I'd prefer adding tests to test_graph_seeking(), which tests this mechanism on a bit lower level anyway and already has tests nearly identical to the ones we need. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10885#note_139906