Well, I suppose since either solution requires at least some effort from player developers, your opt-out solution would be fine too. But perhaps a mutex would be much simpler for players to implement?
I think it would be best to change the auto-loading of the providers by the consumer from a requirement to a recommendation. Then at least a consumer has the freedom to decide if auto-loading is desired in any given situation. The function/mutex to disable auto-loading is of course mandatory.
Perhaps consumers should also create a mutex to signal their presence. Suppose that LAV Video becomes a consumer in the future. Then for example (xy-)VSFilter could check for such a mutex and decide to refuse to join the graph.
Speaking of mutexes, they should contain a unique ID of the current graph. Otherwise undesirable behavior might occur with multiple simultaneous graphs.
|