Cannot show streamed video with cv2.imshow

Hi, I tried running your streaming demo:

but when the execution comes to the line:
cv2.imshow(“Olympe Streaming Example”, cv2frame)
it crashes with the following output:
QObject::moveToThread: Current thread (0x7f68b8004a30) is not the object’s thread (0x7f68b8058de0).
Cannot move to target thread (0x7f68b8004a30)

Do you have any suggestions to why it fails? The first thought is that the yuv stream callback is received in another thread than the main thread and that cv2.imshow can only be executed on the main thread. But in that case I would assume that you also would have noticed this when creating the demo, and I have not found any other topics on the forum that points to this error. So, my feeling is that it is something else.
I am running towards Sphinx simulated Anafi.

Hi @smicker,

The Olympe video streaming example has been updated with the 1.2.0 GroundSDK/Olympe version just released today.
Some rather important video streaming bugfixes have also landed in this release.
Could you please update (repo sync) and rebuild Olympe following the installation procedure from there? Thanks

Nicolas

Thanks for the update. Unfortunately that did not help for me. But I think this is not your fault since I have now tried a very short standalone program that basically just calls cv2.imshow(), and I get the same problem with that. I have got information from others with this problem that it might be because of a conflict between different QT installations on the system.

1 Like