This will be required for MFT decoder transforms to work. They don't usually produce an output sample on every pushed input sample, and the session may need to request more sample from upstream and push them into the transform or it will not get any output and get stuck.
-- v2: mf/session: Request more data from upstream when requests are still pending. mf/session: Process pending transform nodes samples in a loop. mf/session: Move transform node ProcessInput calls to a separate helper. mf/session: Use helpers to push and pop samples for transform streams. mf/session: Use local variables to access transform node streams.