Python mediadecoder is a library that decodes video (and in the future also stand-alone audio) files of any popular modern format. The decoder enables you to easily build your own video player in Python and incorporate it into your own application. Mediadecoder delivers you each video frame as a string or numpy array, which you can then render on a texture or display with any other method that you see fit. Sound playback is done with help of the pyaudio or sounddevice libraries.

Under the hood, python-mediadecoder currently uses moviepy and imageio for the actual heavy-lifting, which in turn use the popular FFMPeg library. Implementations that can also use GStreamer 1.x and pyav are planned for the future.

One purpose for which this library is already used is the media_player_mpy player for the OpenSesame experiment builder.