Stream outputs cannot drain in `Delete` anymore
Stream outputs modules draining in pf_del
and implementing flush are now broken by design since eb34fd0a.
The patch ensure that the input decoder is either drained or flushed before deletion. This is completely legit on the typical playback scenario but cannot work with stream outputs for the simple reason that they currently don't have a draining callback and are forced to drain at track deletion.
I suggest we introduce a drain callback in the stream output API, this idea is often brought in sout API discussions but is always postponed because draining in del
was just working and convenient. Now we have a good reason to implement it.
The other way around is to avoid flushing at EOF specifically for stream outputs, it would fix the regression but would add another annoying layer of conditions in the core