Never assume the API of libav* to be stable unless at least 1 week has passed since the last major version increase. The last version increases were: libavcodec: ? libavdevice: ? libavfilter: ? libavformat: ? libpostproc: ? libswscale: ? libavutil: 2009-03-08 API changes, most recent first: 2009-03-21 - r18116 - lavu 50.2.0 - av_random* The Mersenne Twister PRNG implemented through the av_random* functions was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions instead. 2009-03-08 - r17869 - lavu 50.0.0 - AVFifoBuffer av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write and av_fifo_realloc2. In addition, the order of the function arguments of av_fifo_generic_read were changed to match av_fifo_generic_write. The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by applications, they may not use sizeof() or directly access members. 2009-03-01 - r17682 - lavf 52.31.0 - Generic metadata API Introduce a new metadata API (see av_metadata_get() and friends). The old API is now deprecated and should not be used anymore. This especially includes the following structure fields: - AVFormatContext.title - AVFormatContext.author - AVFormatContext.copyright - AVFormatContext.comment - AVFormatContext.album - AVFormatContext.year - AVFormatContext.track - AVFormatContext.genre - AVStream.language - AVStream.filename - AVProgram.provider_name - AVProgram.name - AVChapter.title