Just for the record, concerning that link:
https://forum.videolan.org/viewtopic.php?f=32&t=136452
We are unable to start several vlc instances using vdpau within the same application.. we have also tried with nvidia quadro series, that is supposed to handle unlimited number of h264 streams with vdpau. The vdpau accelerated video decoding works ok for a single vlc instance, but for several vlc instances, the video becomes choppy / corrupted.
On the other hand, launching *individual* vlc client programs, they all seem to use vdpau simultaneously and correctly (no choppiness, etc.)
I wonder if anyone has achieved running several vlc instances all using vpdau correctly with C(++) ?
If so, the problem might be python itself, and the "global interpreter lock" (GIL) - i.e. the reason why multithreading in python sucks.. on the other hand, video decoding without vdpau works ok with several vlc instances. I don't know how this is handled with ctypes.. I remember that in swig, one can release/acquire the gil within the C code..