nrkno / sofie-atem-connection

Sofie ATEM Connection: A Part of the Sofie TV Studio Automation System
https://github.com/nrkno/Sofie-TV-automation/
MIT License
129 stars 36 forks source link

Atem Multivew StateChange Flooding #132

Closed laurensvane closed 1 year ago

laurensvane commented 1 year ago
Julusian commented 1 year ago

Yeah this is a known issue with the constellation hd range. They are resending all the multiviewer windows on every frame, resulting in the flood you see here. I have previously confirmed that it is not this library at fault, and the atem is sending this data to the library every frame.

This library isnt doing any diffing when receiving changes from the atem, we are trusting it to be sensible.

I was hoping blackmagic would have released a fix by now as this was first reported to them in April when these models first shipped..

laurensvane commented 1 year ago

I thought it would a an Atem issue, but couldn't find any indication it was. I also reported this issue to Blackmagic Support, hopefully this will help. Our Atem also stops responding when we have some disconnects from clients close after each other, i think because the atem needs to send a lot of data to the connections which are closed but not already timed out.

rohanwright commented 1 year ago

Has there been any luck with this bug? There's been at least one firmware update but it doesn't seem to stop spitting out MV change.

Julusian commented 1 year ago

@rohanwright only the 4ME has had a firmware update, the 2ME and 1ME still only have the firmware they shipped with.

For Companion this bug is being worked around by wrapping any updates to the multiviewer windows in a debounce, to limit how often it is processed. Its not perfect, but it avoids this being a large performance drain until it is fixed (if they ever do)

rohanwright commented 1 year ago

Yeah ok, we have a 4ME but it didn't solve anything. I emailed the Blackmagic team and they said they are aware of the issue but are still working on it. Hopefully they figure something out soon.

Julusian commented 1 year ago

Blackmagic still haven't fixed this bug, but I have finally gotten around to a proper mitigation in this library. When the library receives that specific command, it will check if applying it to the state will change anything, instead of blindly applying and reporting there was a change.

This will be included in the next release (v3.3.0) when that is made

thomascantrellsea commented 11 months ago

First of all, Julian thank you for the fix. From my head of master github build of companion, things do seem a ton better.

One other thing, BMD has release 9.2.1 firmware for the 1ME/2ME/4ME HD on Thursday (2023-08-21). The last update to the 2ME HD was 8.7 in April/May 2022. It's possible from early packet captures that they may have fixed the bug.

Julusian commented 11 months ago

Yes, it appears in a quick test that the 9.2.1 firmware resolves this bug.

laurensvane commented 11 months ago

Also updated one of my atem constellations HD 2ME here, and i can't reproduce the behavour i described. So it seems like this bug has been fixed.