On Tue Aug 8 12:51:36 2023 +0000, Rémi Bernon wrote:
Nothing that I know about is using it but I thought it could be useful to figure how it works if we want to parallelize transform processing. Right now one blocker point is that all the session async operations are serialized anyway because of the session CS. However, having written more tests I can also see that the native session default behavior is to serialize everything, including possibly concurrent transform processing when there's completely separate streams (Note: when WORKQUEUE_ID attributes are set, you can have concurrent transform processing). This feels a bit ineffective and I'm a bit worried that serializing decoders could hurt the playback experience, but maybe I should just wait and see how it goes.
Regarding the request pattern, I understand that we don't have to implement native pattern, but at the same time we have to decide over a strategy for requesting more samples, and native one is as good as any. Having these tests also provides tools for some other MFT behavior testing.
I don't mind reducing them if you feel they are too exhaustive, or maintaining them myself, eventually moving them to transform.c if you feel better about it, just tell me.