Can anybody point me in the right direction on how to create a new QMovie "provider" in PySide?
I have a video stream that I want to display as simply as possible (no audio, just a sequence of frames with an unknown and variable framerate). This example seems perfect except that my video is coming from an unconventional source. It's not a file but a network stream in a format that is not standardized. I can easily write code that receives each frame and my idea is to create a "QMovie provider" so that I can just display this stream on a label like in the example above.
My first thought was to just subclass QMovie and overwrite a few functions there but I started having second thoughts about that when reading the documentation since I don't know what I should do about the "device" my instance would be reading from.
I noticed in the aforementioned documentation that QMovie uses QImageReader so my next thought was to extend that class and have it read frames from my stream. That poses similar questions however, for example, what should I do with the "supportedImageFormats()" function?
I've been experimenting with just directly updating the image on my QLabel every time I receive a new frame but then I've been getting the error "QPixmap: It is not safe to use pixmaps outside the GUI thread".
So basically I'm a little stumped and would really appreciate any pointers or tutorials on how to get a QLabel to display my video stream in a PySide application.