I’m writing a super simple video player using Python, PyGST, and PyGTK. This python app is containerized with Docker, and the videos to be played are 4K, so hardware acceleration is needed.
Here is a description of the issue I’m having:
When my script is run with a smaller video as a source on the regular docker runtime, the video plays inside the GTK window without a problem (it plays inside a
DrawingArea and uses
When run with a 4K video on the regular docker runtime, the playback stutters (obviously, since there is no acceleration), and stays inside the GTK
However, when running it on the nvidia runtime using the
--runtime nvidia flag, the video plays smoothly BUT outside of the application window (
DrawingArea), and takes over the whole screen.
I need to be able to render other views on top of the video, so I’m looking for a way to ensure that the video will play in the window. I’ve spent days reading and trying different things, and I believe that the problem has to do with the fact that the
sync-message::element message is never emitted by the GST playbin. This only happens with the nvidia runtime…
Any pointers are greatly appreciated.