Draft: amstream: Stop stream while running CreateSample. Feedback needed. :-)
Some programs run CreateSample with a surface that contains a non-compatible format while the stream is in a running state, causing SetFormat to fail because it can't reconnect the source and sink while the stream is running.
A game that reproduces this behavior and crashes is Close Combat 3. I was able to verify that this patch fixes the game, however I was not able to create a test case.
I got stuck trying to find a surface format that is supported by the test.avi source and triggers the nodes to reconnect in SetFormat. The only thing I was able to do is to pass a surface with a resolution smaller than the video, this works on Windows, however in Wine it doesn't work even if the stream is stopped.
I tried messing around with different pixel formats but I was not able to get the test working neither.