PyAV Documentation

PyAV aims to be a Pythonic binding for FFmpeg or Libav. We aim to provide all of the power and control of the underlying library, but manage the gritty details for you as much as possible.

Currently we provide the basics of:

Basic Demo

import av

container = av.open('/path/to/video.mp4')
video = next(s for s in container.streams if s.type == b'video')

for packet in container.demux(video):
    for frame in packet.decode():
        frame.to_image().save('/path/to/frame-%04d.jpg' % frame.index)

Indices and Tables