One of the great things about being a software engineer is the wide range of problems you can apply yourself to. Some of these projects may be work/study-related, but a lot of them are just for fun. Grad school was an awesome time to have side projects, and with the rise of sites like and, setting up a project and sharing it with the world was easier than ever. Now that I’m free from the clutches of grad school, I can actually talk about some of the fun side projects I’ve been doing over the years.

One of the earliest projects I worked on was updating some tutorials for the FFmpeg library. For those that don’t know, FFmpeg is a library for converting video between different formats, and much more. When I first started working with the library, I found a set of excellent tutorials that were unfortunately out of date. While working my way through the tutorials, I found myself updating deprecated parts of code and fixing trivial bugs here and there. By the time I was done, I realized that other people might have to go through the same mild annoyances that I did, and decided to share the updated tutorials on github.

So, here they are.

As an aside, the maintainer of the original tutorials finally got around to updating them and incorporated some of the changes I made. Unfortunately, I will go down in FFmpeg tutorial history as chelyaev. My grad school supervisors didn’t like me working on the tutorials and demanded that I stop. I did the work using an alias to keep them happy.