ANN: y4m - Python video editing framework

DavidM nospam at
Sun Sep 30 05:17:03 CEST 2007

Hi all,

Just a quick message to announce the latest release (v0.1.1) of the
'y4m' framework.

What is 'y4m'?

y4m is a python framework for manipulating yuv4mpeg video streams.

Young but growing rapidly.

It offers an intuitive Python API for:

 - opening yuv4mpeg streams for reading from stdin or a file (or
   auto-converting from any other video format ffmpeg can cope with)

 - opening yuv4mpeg streams for writing to stdout or a file (or
   autoconverting to any other video format ffmpeg can handle)

 - reading/changing stream and frame attributes

 - manipulating frames at any level - as rows/columns, or as pixels,
   or as Y,Cb,Cr planes

 - performing basic editing operations, such as:
    - scaling
    - cropping
    - clipping (eg taking 15 secs of a stream after the first minute)
    - flipping
    - overlaying
    - cross-fading (also known as 'dissolve')
    - transparency
    - polygon fill
    - arbitrary rotation

 - simple keyframe interpolation

It also features a plugin architecture, whereby you can overcome the
performance penalties of python by invoking fast plugins written in C. 

The plugin interface offers a simple and powerful framework to support
writing your own plugins easily, and comes with several working example

y4m is a toolkit you can use for writing your own yuv4mpeg stdio
filters, or even building your own video editing software.

y4m is still in alpha, but works quite well on 32-bit architecture.

(I can't guarantee it on 64-bit just yet - at least not till I've pulled
out all the remaining (sizeof)int==(sizeof)(*) assumptions.  Anyone with
64-bit architecture is welcome to try it - I'd love to hear how you get
on with it.)

All feedback, suggestions, patches, bouquets, brickbats etc welcome.


More information about the Python-list mailing list