Closed toddfreese closed 3 years ago
I can't spot the difference between your code and mine, except for line 2-3, which is functionally the same. What exactly are you presenting here?
In your code:
if (SUCCEEDED(mSwitcher->CreateIterator(IID_IBMDSwitcherInputSuperSource, (void**)&mSuperSource))) {
You are trying to get the SS Iterator on mSwitcher which is incorrect. It always returns none.
You need to QueryInterface on an IBMDSwitcherInput input.
result = input->QueryInterface(IID_IBMDSwitcherInputSuperSource, (void**)&ssObj);
Correct me if I'm wrong, but your code does not see any super sources. I tested it on : 1 ME, 4ME and Constellation units.
Ah, you are correct, that makes sense. I haven't used SuperSource before, I'll get this updated and hopefully it will fix
I will test this in the next couple days.
Actually the testing needed is for my sake, not yours. I haven't released the fix yet, just keeping track of where different issues are.
Ok, might be fixed in version 4.0.0. Still need to run some more tests. Feel free to test yourself and see.
Ok, confirmed supersource control is now working
The current code to get the number of SuperSources & Boxes does not work on a Constellation. This must have changed sometime in an SDK update. Based on the SDK docs, I don't think it will work on any other switcher either since it seems you have to query the interface. Am I missing something about this?
The following code works on my Constellation:
This goes after finding the aux inputs: