The actors that can do both vid-gpu to vid-cpu cannot automatically switch from one to another
-
I guess I have potentially found a bug that @Michel asked me to report it.
Issue:
The actors that can do both vid-gpu to vid-cpu cannot automatically switch from one to another after it's connected to more than one actor.
(Just to clarify what I'm referring as the automatic switching from gpu to cpu, you know how new actors in izzy 2.0 are default as vid-gpu but if you link it to cpu based actor, then it automatically switches to vid-cpu)
For example:
1. Picture Player (vid-gpu) --> Difference (vid-cpu) = Picture Player (vid-cpu) --> Difference (vid-cpu). In this case, Picture Player automatically switches to cpu, and izzy allow you to connect the two actors.
2. Picture Player (vid-gpu) --> Video Mixer (vid-gpu) --> Projector (vid-gpu)
In this scenario, all these 2.0 actors are capable of doing both gpu & cpu, so they stayed on gpu without an issue.
3. Now if we try to disconnect Picture Player and connect Difference to Video Mixer, Izzy doesn't allow you, it stays on vid-gpu even though both actors are capable of cpu mode.
Difference (vid-cpu) --> X Video Mixer (vid-gpu) --> Projector (vid-gpu)
But if we disconnect Video Mixer from Projector, then Izzy allows you to connect it, and automatically switches to vid-cpu.
Difference (vid-cpu) --> Video Mixer (vid-cpu) x Projector (vid-gpu)
Then you when you connect Video Mixer back to the Projector, the Projector automatically switches to vid-cpu, then you have solved this chain to vid-cpu.
Difference (vid-cpu) --> Video Mixer (vid-cpu) --> Projector (vid-cpu)
Reasons needing to solve it:
I have a scenario where I've already connected many actors together (which are capable of both cpu and gpu), but they're linked as vid-cpu, where I would like to force them to switch to vid-gpu.
Solution right now:
So far the only solution that I found is to disconnect all of the actors and then connect each of them with a vid-gpu actor so it switches. I wonder if there are faster way than this?
-
This is an interesting issue.
Since the actors correct behaviour is to be set to a type once connected to the initial type.However, I can see how if something in the chain is removed, and all trailing actors in the chain can handle both types, that the input could become mutable again.