I dedicated some time to [ffmpeg v6.x bindings](https://github.com/mantielero/ffmpeg6.nim). I wrapped it using [futhark](https://github.com/PMunch/futhark) and also some specific parts I use [c2nim](https://github.com/nim-lang/c2nim) and just copy/paste the code.
The binding is just this file: [libav.nim ](https://github.com/mantielero/ffmpeg6.nim/blob/main/src/wrapperFuthark/libav.nim). But then I created some helper functions under [lib/](https://github.com/mantielero/ffmpeg6.nim/tree/main/src/lib). Finally, just as a proof of concept I tried to do something similar to VapourSynth by means of using ffmpeg. For that I created the folder [vs/](https://github.com/mantielero/ffmpeg6.nim/tree/main/src/vs) and created an example: [vs01_frames.nim](https://github.com/mantielero/ffmpeg6.nim/blob/main/examples/vs01_frames.nim). Just an experiment, but I like the idea. There are a number of prior efforts: * [ffmpeg.nim](https://github.com/momeemt/ffmpeg.nim) by `momeemt` for ffmpeg5.x (about 2 years old). * [nimffmpeg](https://github.com/mashingan/nimffmpeg) by `mashingan` for ffmpeg4.x I think (some examples updated 2 years ago, but the project looks a bit older). * [nim-ffmpeg](https://github.com/ahirner/nim-ffmpeg) by `ahirner` for ffmpeg 3.3.3 (about 7 years old). I have only played with mine in Linux (ArchLinux). I am not very good on mantaining things. So just in case it can serve others.