I’m a BSc Mathematics and Physics graduate from the University of Warwick who has changed direction to the world of software development.
My overriding interests surround audio and video compression, digital signal processing, information theory and other multimedia data compression related topics. I enjoy working on open source software in my spare time and am looking to become more involved with FFmpeg in particular. I am also interested, but less experienced, in 3D graphics and more generally interested in scientific-related computing.
I can be contacted at 
Hi Rob,
I am an encoder at a fascilities house and I need to learn about ffmpeg. While I understand encoding practice I dont have a development background. Could you recommend any resources that would be usefull for a novice coder but experienced encoder?
thanks
Well, I can tell you what I did. After being interested in digital video compression for a long time and doing lots and lots of testing, I finally got into programming and learned C. Someone on IRC gave me some coding tasks and helped me figure out my mistakes. Then I started making contributions to the interfaces in MPlayer and FFmpeg for the codecs in which I was most interested – Xvid and x264.
A member of the FFmpeg/MPlayer community suggested that I apply to take part in Google Summer of Code for FFmpeg in 2006 to work on a codec of some sort. I ended up working on an AMR-NB decoder from scratch and later cleaned up the AAC decoder and wrote most of the HE AAC v1 extension. Now I’m hacking on various multimedia related projects in various different areas from demuxers to codecs to non-linear video editors and so on.
I’ve only really used Kernighan and Ritchie: The C Programming Language as a reference when doing something particularly complicated with pointers to arrays or arrays of pointers that I couldn’t recall.
It sounds like you’re starting out from a similar place to where I was a few years ago on my path. The main points of which I would suggest you take note are: find something you’re interested in, learn about it, find something you’re interested to contribute, work on it and don’t be afraid to ask questions of the project’s community and most of all, don’t give up.
The FFmpeg community is notorious for appearing rather harsh to first time contributors. When a group of experienced, intelligent and meticulous people get together to work on something like this with a project leader who is very picky about the code they accept into their project, one’s best friends are patience and persistence.
So in short, find something you like and get stuck in. I’d suggest getting on IRC to get support from other FFmpeg developers. #ffmpeg and #ffmpeg-devel (the latter for questions related to the development of something within FFmpeg itself) on irc.freenode.net.
Hope that helps!
thanks Rob.