News

December 2, 2014

We've updated the release/11 branch today and are posting up tarballs for general consumption. Of note in this update are fixes to HEVC, H.264, MPEG12, Opus, MP3, and libavutil.

We would like to encourage distributors and system integrators to update and share their patches against our release branches.

See the Changelog file for a more extensive list of significant changes.

September 14, 2014

We are happy to update three release branches: Libav 10.5, Libav 9.17, and Libav 0.8.16, which address a number of critical functional and security issues (many of which have CVE identifiers assigned) that we have been made aware of.

In the 0.8 release branch, the message about the deprecation of the "ffmpeg" program has been reworded to avoid confusion with the FFmpeg project.

For further details on the backported changes, please refer to our verbose Changelog files:

We would like to encourage distributors and system integrators to update and share their patches against our release branches.

September 13, 2014

After several months of development, we are pleased to announce the release of Libav 11.

With this release we are trying to answer the numerous calls from our users for shorter development cycles. From now on we will aim for approximately two major releases per year.

The main highlights of this release include native Opus, VP7, OpenEXR, and On2 AVC decoders, HEVC encoding through libx265, new APIs for exporting ReplayGain and display transformation metadata and countless bug fixes. A large effort was also expended on internal cleanups which are not very visible to our users, but should make the codebase cleaner, safer and easier to maintain and extend. One point worth mentioning is refactoring the large monolithic framework for architecture-specific codec optimizations into small blocks, which reduces the size of configurations that selectively enable or disable certain codecs.

The avserver streaming tool, which has not been maintained for many years and was mostly broken, was removed from the tree. It was decided that it is a significant maintenance burden and that we do our users no service by pretending to support it, while we in fact do not.

Libav 11 is API-, but not ABI-compatible with the previous major release. This means that the code using our libraries needs to be rebuilt, but no source changes should be required. Note however, that a number of old APIs remain deprecated and will be dropped in the near future. All users are strongly encouraged to update their code as soon as possible. The doc/APIchanges file in the Libav source tree and the migration guide on the wiki should help with migration to the new APIs. If those are not sufficient, do not hesitate to contact us on IRC or through the user mailing list.

One specific API issue in libavformat deserves mentioning here. When using libavcodec for decoding or encoding and libavformat for demuxing or muxing, the standard practice was to use the stream codec context (AVStream.codec) for actual decoding or encoding. There are multiple problems with this pattern (the main one is that the decoder/demuxer or encoder/muxer are not necessarily synchronized and may overwrite each other's state), so it is now strongly discouraged and will likely be deprecated in the future. Users should instead allocate a separate decoding or encoding context and populate it from the demuxing codec context (or the reverse for encoding) with the avcodec_copy_context() function.

See the Changelog file for a more extensive list of significant changes.

You can download the new release, as usual, from our download page.

August 12, 2014

In preparation for the upcoming Libav 11 release, we have bumped the major versions of all the libraries we ship (libavcodec, libavformat, libavfilter, libavresample, libswscale, libavdevice and libavutil). This allowed us to enable some new features that required breaking ABI compatibility. Dynamically linked applications thus need to be rebuilt to use the current Git master or the upcoming release.

The API remains backward compatible, so no source changes should be required in the code that works with Libav 10. We note however, that a number of obsolete APIs remain deprecated and will be removed in the future. All users are strongly encouraged to update their code. A work in progress migration guide can be found at our wiki. If you are still having difficulty after reading the migration guide, please do not hesitate to file a report in our Bugzilla. We have a special category for porting issues.

August 10, 2014

We are happy to update two release branches: Today, we provide you with Libav 9.16, and Libav 0.8.15, which address a number of critical functional and security issues (many of which have CVE identifiers assigned) that we have been made aware of.

For further details on the backported changes, please refer to our verbose Changelog files:

We would like to encourage distributors and system integrators to update and share their patches against our release branches.

Aug 4, 2014

Today, we update our release series 10 with the release of Libav 10.3. This release contains several security and bug fixes. Among others, several bugs that lead to crashes during playback have been fixed in the H.264 and many other decoders.

This release contains many potentially security-relevant corrections. For details, please refer to the verbose Changelog file.

We encourage distributors and system integrators to update, and share their patches against our release branches.

Enjoy!

June 27, 2014

We are happy to update three release branches: Today, we provide you with Libav 10.2, Libav 9.14, and Libav 0.8.13, which address a number of critical functional and security issues that we have been made aware of. In particular, these releases address the recently discovered LZO issue.

For further details on the backported changes, please refer to our verbose Changelog files:

Distributors and system integrators are encouraged to update and share their patches against our release branches.

June 1, 2014

Today, we update our release series 0.8 with the release of Libav 0.8.12. This release contains several security and bug fixes. Among others, several bugs that lead to crashes during playback have been fixed in the H.264 and many other decoders.

This release contains many potentially security-relevant corrections. For details, please refer to the verbose Changelog file.

We intend to discontinue updates for the 0.8 release branch unless there is significant demand for a 0.8.13 release. If such a release becomes necessary in the future, please do not hesitate to get in contact with us, preferably via email or via a Bugzilla entry. Otherwise, this is most likely the last update of this release branch.

We encourage distributors and system integrators to update, and share their patches against our release branches.

Enjoy!

May 10, 2014

Today, we update our latest release series 10 with the release of Libav 10.1. This release contains several security and bug fixes.

This release contains many potentially security-relevant corrections. For details, please refer to the verbose Changelog file.

We encourage distributors and system integrators to update, and share their patches against our release branches.

Enjoy!

May 4, 2014

We've collected a number of security and stability patches recently, so today we are releasing Libav 9.13. Many thanks go out to Mateusz "j00ru" Jurczyk and Gynvael Coldwind for providing us many samples and patches, especially for the h264 decoder in this release. For details, please refer to the verbose Changelog file.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

March 23, 2014

After several months spent finalizing, we are now pleased to announce the release of Libav 10.

One of the main features of this release is the addition of reference-counted data buffers to Libav and their use in various structures. Specifically, the data buffers used by AVPacket and AVFrame can now be reference counted, which should allow to significantly simplify many use cases. In addition, reference-counted AVFrames> can now be used in libavfilter, avoiding the need for a separate libavfilter-specific frame structure. Frames can now be passed straight from the decoders into filters or from filters to encoders.

These additions made it necessary to bump the major versions of libavcodec, libavformat, libavdevice, libavfilter, and libavutil, which was accompanied by dropping some old deprecated APIs. These libraries are thus not ABI- or API- compatible with the previous release. All the other libraries (libavresample and libswscale) remain ABI- and API-compatible.

Another major point is the inclusion of the HEVC (AKA H.265, the successor of H.264) decoder in the main codebase. It was started in 2012 as a Libav Google Summer of Code project by Guillaume Martres and subsequently completed with the assistance of the OpenHEVC project and several Libav developers.

As usual, this release also contains support for other new formats, many smaller new features and countless bug fixes. We can highlight a native VP9 decoder, with encoding provided through libvpx, native decoders for WebP, JPEG 2000, and AIC, as well as improved WavPack support with encoding through libwavpack, support for more AAC flavors (LD - low delay, ELD - enhanced low delay), slice multithreading in libavfilter, or muxing chapters in ASF. Furthermore a few new filters have been introduced, namely compand, to change audio dynamics, framepack, to create stereoscopic videos, asetpts, to set audio pts, and interlace, to convert progressive video to interlaced. Finally there is more fine-grained detection of host and target libc, which should allow better portability to various cross compilation scenarios.

See the Changelog file for a fuller list of significant changes.

You can download the new release, as usual, from our download page.

March 14, 2014

We are happy to update three release branches: Today, we provide you with both, Libav 9.12 and Libav 0.8.11, in order to address a number of critical functional and security issues that we have been made aware of. Also, we cut the next milestone of our Libav 10 release branch, Libav Beta2, that incorporates many changes based on the feedback provided to us.

For further details on the backported changes, please refer to our verbose Changelog files:

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Enjoy!

February 18, 2014

We are pleased to announce that our next major release, Libav 10 "Eks", has been branched from git master and we are simultaneously releasing the first beta preview for that branch. If all goes well, the final release should follow shortly, after some polishing.

Please consult the release notes for the summary of the most important features of this release. Downstream projects may be interested in the migration guide which gives some pointers for adapting to the new APIs.

February 3, 2014

We are happy to update two release branches: Today, we provide you with both, Libav 9.11 and Libav 0.8.10, in order to address a number of critical functional and security issues that we have been made aware of.

For further details on the backported changes, please refer to our verbose Changelog files:

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Enjoy!

November 2, 2013

Today, we update our latest release series 0.8 with the release of Libav 0.8.9. This release contains several security and bug fixes. Among others, several bugs that lead to crashes during playback have been fixed in the H.264 and SVQ3 decoder.

This release contains many potentially security-relevant corrections. For details, please refer to the verbose Changelog file.

We encourage distributors and system integrators to update, and share their patches against our release branches.

Enjoy!

October 10, 2013

We've collected a number of security and stability patches recently, so today we are releasing Libav 9.10. For details, please refer to the verbose Changelog file.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

September 9, 2013

After the summer break and thanks to the Google Security Team, who have provided us with an additional batch of samples, we have been able to fix a number of security-relevant issues. Many of these fixes are now available in the current update, Libav 9.9. For details, please refer to the verbose Changelog file.

The older release branch will get updated in the following weeks.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

July 7, 2013

We are happy to update two release branches: Today, we provide you with both, Libav 9.8 and Libav 0.8.8, in order to address a number of critical functional and security issues that we have been made aware of.

For further details on the backported changes, please refer to our verbose Changelog files:

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Enjoy!

June 16, 2013

Once again and thanks to the Google Security Team, who have provided us with a number of samples, we have been able to fix a number of security-relevant issues. Many of these fixes are now available in the current update, Libav 9.7. For details, please refer to the verbose Changelog file.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

You can download the new release, as usual, from our download page.

May 12, 2013

Today, we are happy to present you updates to our latest two release branches: Libav 9.6, and Libav 0.8.7. Both point releases include a number of security and stability fixes. For details, please refer to the verbose Changelog files for version 9.6 and version 0.8.7.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

You can download the new release, as usual, from our download page.

April 21, 2013

Thanks to the Google Security Team, who have provided us with a number of samples, we have been able to fix a number of security-relevant issues. Many of these fixes are now available in the current update, Libav 9.5. For details, please refer to the verbose Changelog file.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

You can download the new release, as usual, from our download page.

March 23, 2013

We are proud to update two release branches: Today, we provide you with both, Libav 9.4 and Libav 0.8.6, in order to address a number of critical functional and security issues that we have been made aware of. For both releases, we are happy to confirm that the following CVE tracked issues have been fixed:

For further details on the backported changes, please refer to our verbose Changelog files:

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Enjoy!

March 2, 2013

We have been made aware of a security issue in our Vorbis decoder. Therefore, we push out a small and quick update, Libav 9.3, that fixes CVE-2013-0894. Besides this, we also include a small number of critical correction to our H.264, Flash Video and AC3 decoders. For details, please refer to the verbose Changelog file.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

You can download the new release, as usual, from our download page.

February 24, 2013

Today, we update our latest release series 9 with the release of Libav 9.2. This release contains a number of pro-active bug fixes, most of which lead to crashes in the library. While selecting them, special care has been applied to ensure that this update remains fully compatible to previous releases of this release branch. For details, please refer to the verbose Changelog file.

You can download the new release, as usual, from our download page.

February 16, 2013

We have just finalized another point release from our 0.5 release branch: Libav 0.5.10. This is another maintenance-only release that addresses a number of security issues, such as:

In addition, further bug fixes have been made:

Distributors and system integrators are encouraged to update and share their patches against our release branches.

We intend to discontinue updates for the 0.5 release branch unless there is significant demand for a 0.5.11 release. If such a release becomes necessary in the future, please do not hesitate to get in contact with us, preferably via email or via a Bugzilla entry. Otherwise, this is most likely the last update of this release branch.

February 9, 2013

Along with the previously mentioned deprecation of the 0.7 series, we are also planning to drop the 0.6 series, as announced several weeks ago on the development mailing list. If you are currently using this release, we strongly recommend you upgrade to 0.8 or 9.

February 2, 2013

Today, we update our latest release series 0.7 with the release Libav 0.7.7. As usual, this release includes a number of functional corrections and security fixes, such as:

Additional, further bug fixes have been made to the following codecs:

Other noteworthy changes include:

We intend to discontinue updates for the 0.7 release branch unless there is significant demand for a 0.7.8 release. If such a release becomes necessary in the future, please do not hesitate to get in contact with us, preferably via email or via a Bugzilla entry.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Enjoy!

January 13, 2013

Today, we update our latest release series 0.8 with the release of Libav 0.8.5. This release contains several security and bug fixes. Among others, several bugs that lead to crashes during playback have been fixed in the H.264 and SVQ3 decoder.

This release contains security fixes for the following CVEs:

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Enjoy!

January 07, 2013

Today, we push out a quick but important update 9.1. It fixes a segfault in libavresample on Windows 32bit platforms when compiling with MSVC or ICC 10.x, and fixes memory leaks in the Ogg demuxer.

You can download the new release, as usual, from our download page.

January 05, 2013

After several months spent making sure that a sufficient number of our downstreams is ready, we are now pleased to announce the release of Libav 9 "Plain Nine".

The first thing to note is that it is indeed 9, not 0.9. With this release, we change our versioning scheme to follow our workflow better. This means that the leading zero, present in our previous version numbers, is dropped. Version numbers from now on will be in major.minor form, with major releases updating the major component and stable releases the minor component.

A new library arrived in Libav during this development cycle -- its name is libavresample and it handles audio conversion and mixing. All users are encouraged to use it instead of the old, now deprecated, audio conversion API in libavcodec.

The libpostproc library now resides in a separate tree. It was fully independent of the other Libav libraries, not used by any of the tools, and saw very little development. For these reasons we have decided that it has no place in Libav. A standalone Git tree is available at VideoLAN for people wishing to use libpostproc.

The major versions of the libavcodec, libavformat and libavfilter libraries have been bumped, so they are not API or ABI compatible with the 0.8 release.

This release brings a number of significant changes in the libavfilter library. Firstly, all the API dealing with filter internals is no longer public. The result is that creating user-side filters will not be supported until libavfilter is more mature. Secondly, full audio filtering support is now available along with a set of basic audio filters. We hope that their number will soon grow significantly. The avconv transcoding tool has of course been extended to handle audio filtering as well. There were a number of other API changes, most importantly the addition of the buffer sink public API.

In the libavcodec library, one of the most notable changes is added support for planar audio (i.e. not interleaved). Many decoders and encoders, which previously did inefficient (de)interleaving internally, now only work with planar audio formats. Libavresample can be used for optimized conversion between interleaved and planar formats.

Of big interest to our Windows users, Libav now supports building with the MSVC compiler. Since MSVC does not support C99 features used extensively by Libav, this has been accomplished using a converter that turns C99 code to C89. See here for more detailed documentation on building Libav with MSVC.

As usual, this release also contains support for some new formats, many smaller new features and countless bug fixes. We can highlight Opus decoding / encoding through libopus, encoders for Apple ProRes and Ut Video, 24-bit FLAC encoding, WMA Lossless and RealAudio Lossless decoders, fragmented MOV/MP4 and ISMV (Smooth Streaming) muxers, a large number of RTMP improvements and support for cover art in ID3v2, WMA, MP4 and FLAC.

See the Changelog file for a list of significant changes.

You can download the new release, as usual, from our download page.

December 21 2012

Another two months of developing, testing and polishing later, we are proud to announce the next beta release. We still hesitate to finalize the "Plain 9" because it seems that many of our downstream users have still not caught up. This is meant as a courtesy to our users and redistributors to ensure a painless upgrade.

This tarball comes with the following changes:

You can download the new release, as usual, from our download page

October 23 2012

We are still on track with our next major release codename "Plain 9". Today, we update our beta release with 9_beta2 based on the feedback and testing that we got.

Compared to the changes listed in the beta_1 announcement, the following items come in addition:

You can download the new release, as usual, from our download page

October 22 2012

Today, we update our latest release series 0.8 with the release of Libav 0.8.4. This release contains several security and bug fixes.

The following bugs in our Bugzilla have been fixed:

This release contains security fixes for the following CVEs:

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Enjoy!

October 11, 2012

With the next upcoming release, we change our versioning scheme to follow our workflow better. This means that the leading zero, present in our previous version numbers, is dropped. Version numbers from now on will be in major.minor form, with major releases updating the major component and stable releases the minor component. With this in mind, we are happy to provide a first preview of our next release version 9.

A new library arrived in Libav during this development cycle -- its name is libavresample and it handles audio conversion and mixing. All users are encouraged to use it instead of the old, now deprecated, audio conversion API in libavcodec.

The libpostproc library now resides in a separate tree. It was fully independent of the other Libav libraries, not used by any of the tools and saw very little development. For these reasons we decided that it has no place in Libav. A standalone Git tree is available at VideoLAN for people wishing to use libpostproc.

The major versions of the libavcodec, libavformat and libavfilter libraries have been bumped, so they are not API or ABI compatible with the 0.8 release. The ffmpeg transcoding tool, kept for compatibility in 0.8, has also been dropped.

This release brings a number of significant changes in the libavfilter library. Firstly, all the API dealing with filter internals is no longer public. The result is that creating user-side filters will not be supported until libavfilter is more mature. Secondly, full audio filtering support is now available along with a set of basic audio filters. We hope that their number will soon grow significantly. The avconv transcoding tool has of course been extended to handle audio filtering as well. There were a number of other API changes, most importantly the addition of the buffer sink public API.

In the libavcodec library, one of the most notable changes is added support for planar audio (i.e. not interleaved). Many decoders and encoders, that previously did inefficient (de)interleaving internally, now only work with planar audio formats. Libavresample can be used for optimized conversion between interleaved and planar formats.

Of big interest to our Windows users can be newly added support for building with the MSVC compiler. Since MSVC does not support C99 features used extensively by Libav, this has been accomplished using a converter that turns C99 code to C89. See here for more detailed documentation on building Libav with MSVC.

As usual, this release also contains support for some new formats, many smaller new features and countless bug fixes. We can highlight Opus decoding / encoding through libopus, encoders for Apple ProRes and Ut Video, WMA Lossless and RealAudio Lossless decoders, fragmented MOV/MP4 and ISMV (Smooth Streaming) muxers, a large number of RTMP improvements and support for cover art in ID3v2, WMA, MP4 and FLAC.

See the Changelog file for a list of significant changes.

Please note that our policy on bug reports has not changed. We still only accept bug reports against HEAD of the Libav trunk repository. If you are experiencing issues with any formally released version of Libav, please try a current version of the development code to check if the issue still exists. If it does, make your report against the development code following the usual bug reporting guidelines.

You can download the new release, as usual, from our download page

October 05, 2012

The libavresample library is now declared stable. There will be no more API- or ABI-incompatible changes until the next major bump.

July 28, 2012

The libavfilter library is hereby declared stable. This means there will be no more API- or ABI-incompatible changes until the next major bump.

June 22, 2012

The major version of the libavfilter library has been bumped. This means that ABI and API compatibility has been broken and some deprecated functions and structures have been removed.

Most of those were related to filter internals, which are now private. User-side filters are no longer officially supported until libavfilter reaches a more mature state.

The libavfilter ABI is now declared unstable until further notice (stabilizing it should take a couple of weeks at most).

June 9, 2012

We have been busy lately! Today, we are updating all 4 of our release trees.

Fresh from the release team we are introducing 0.8.3, 0.7.6, 0.6.6 and 0.5.9.

The following bugs in our Bugzilla have been fixed:

Several bugs and crashes have been fixed in the following codecs: AAC, ADPCM, ATRAC3, CELP, DPCM, DXVA2, H.263, H.264, Kega, KMVC, Motion Pixels, MJPEG-B, PNG, QDM2, Shorten, Westwood VQA

Several bugs and crashes have been fixed in the following formats: ASF, DV, EA & EAtqi, ID3v2, NSV

These releases contain security fixes for the following CVEs:

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Enjoy!

May 22, 2012

As every year some members from our crew will be trolling^Wattending LinuxTag in Berlin this week. Meet us at our booth, have a chat and if you have broken samples, bring them along and watch us trying to fix them.

May 4 2012

Today, we update our latest release series 0.8 with the release of Libav 0.8.2. This release contains a security fix for vqavideo filed as CVE-2012-0947.

The following bug in our Bugzilla has been fixed:

Several bugs and crashes have been fixed in the following codecs: AAC, APE, H.263, H.264, Indeo 4, Mimic, MJPEG, Motion Pixels Video, RAW, TTA, VC1, VQA, WMA Voice, vqavideo (CVE-2012-0947).

Several bugs and crashes have been fixed in the following formats: ASF, ID3v2, MOV, xWMA

This release additionally updates the following codecs to the bytestream2 API, and therefore benefits from additional overflow checks: truemotion2, utvideo, vqavideo.

This release now properly reads from .avpreset files.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Enjoy!

Apr 8 2012

Today, we update our latest release series 0.7 with the release Libav 0.7.5. As usual, this release includes a number of functional corrections and security fixes, such as:

Several bugs and crashes have been fixed in the following codecs: 4xm, AAC, AC3, ADPCM.C, ALS, ANM, AVS, Atrac3, Bink, Bitmap Brothers JV, COOK, CamStudio, Cinepak, DCA, DSI CIN, EA CMV, FLAC, Fraps FPS1, H263, H264, Huffyuv, KMVC, Kega Game Video, LCL, MJPEG, MPEG1/2 encoder, Motion Pixels, Musepack SV7, Musepack SV8, Nellymoser, QCELP, QDM2, QT RPZA, QT SVQ3, Qt RLE, QuickDraw, RAW, RV10, RV34, SIPR, Shorten, Smacker, SubRib, TIFF, Tiertex Limited SEQ, Truemotion2, V.Flash PTX, VC1, VMware Screen Codec, VP5, VP6, VP8, Vorbis, WMA, WMA PRO, WMA Voice, WavPack, Westwood SNDx, Wing Commander/Xan.

Several bugs and crashes have been fixed in the following formats: 4xm, ASF, AVS, DV, FLV, Matroska, Musepack SV8, MPEG, MXF, NSV, RM, Segafilm, Smacker, Sierra SOL, SWF.

Several bugs and crashes have been fixed in the following filters: avfiltergraph, lavfi, vf_unsharp, vf_scale, vf_pad, vf_yadif, vf_yadif.

Libswscale has a fix for a potential overflow with large image sizes.

Please see the file doc/APIChanges and the Doxygen documentation for further information.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Mar 16 2012

Libav has been accepted as mentoring organization for Google Summer of Code. Here is the Google SoC Libav page.

We have a list of proposed project ideas available so, if you think you might be interested, head over there to see if there is any project on which you wish to work and for which you may wish to make an application. The list is still in flux, and you're free to come up with your own ideas, but note that proposals should be closely tied to the progression of Libav's code base.

If you're a student who thinks you have what it takes, please read how it works and contact us on our libav-devel mailing list or on IRC in the channel #libav-devel.

The sooner you start communicating with us and working within our code base, the sooner both you and we will ascertain your suitability and you will get used to our development methodology. You have until the application deadline to complete your small task. Good luck!

Mar 15 2012

Today, we update our latest release series 0.8 with the release Libav 0.8.1. As usual, this release includes a number of functional corrections and security fixes, such as:

The following bugs in our Bugzilla have been fixed:

Several bugs and crashes have been fixed in the following codecs: AAC, AC-3, ADPCM, AMR (both NB and WB), ATRAC3, CAVS, Cook, camstudio, DCA, DPCM, DSI CIN, DV, EA TGQ, FLAC, fraps, G.722 (both encoder and decoder), H.264, huvffyuv, BB JV decoder, Indeo 3, KGV1, LCL, the libx264 wrapper, MJPEG, mp3on4, Musepack, MPEG1/2, PNG, QDM2, Qt RLE, ROQ, RV10, RV30/RV34//RV40, shorten, smacker, subrip, SVQ3, TIFF, Truemotion2, TTA, VC1, VMware Screen codec, Vorbis, VP5, VP6, WMA, Westwood SNDx, XXAN.

This release additionally updates the following codecs to the bytestream2 API, and therefore benefit from additional overflow checks: XXAN, ALG MM, TQG, SMC, Qt SMC, ROQ, PNG

Several bugs and crashes have been fixed in the following formats: AIFF, ASF, DV, Matroska, NSV, MOV, MPEG-TS, Smacker, Sony OpenMG, RM, SWF.

Libswscale has a fix for a potential overflow with large image sizes.

The following APIs have been added:

Please see the file doc/APIChanges and the Doxygen documentation for further information.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Feb 28 2012

The tree is hereby declared stable again. There will be no more API or ABI compatibility breaks until the next major bump.

Jan 27 2012

Major versions of the libavformat and libavcodec libraries have been bumped, thus breaking ABI and API compatibility with the recent 0.8 release. As usual, the ABI should be considered unstable until further notice (a few weeks at most).

This step allows us to remove a large amount of obsolete code (over 3000 lines). Users who still did not update to the latest API must do so now to be able to use this new major version. The bump also allows us to enable protocol private options in libavformat and fix some outstanding problems with options passing in the libx264 wrapper.

Furthermore, the legacy ffmpeg conversion tool has been removed. Only avconv is available now. Shared builds of Libav now also disable the avserver tool. avserver can only be linked with Libav statically because it uses internal library symbols (volunteers to fix this are very welcome).

Jan 21 2012

We are pleased to announce the availability of our next major release Libav 0.8, which is codenamed "Forbidden Fruit". Unlike our last major release, this release is a binary compatible drop-in replacement for the 0.7 release series.

This release continues the API cleanups that have begun with the previous release. While it remains binary compatible with 0.7, many parts of the public API were deprecated and will be removed in the git master and later releases. Please consult the doc/APIchanges file to see intended replacements for the deprecated APIs.

Furthermore, our work on the 'ffmpeg' command-line tool has resulted in major revisions to its interface. In order to not break existing scripts and applications, we have chosen to introduce a new tool called 'avconv', and keep the traditional 'ffmpeg' frontend for end-user's convenience. An earlier news entry compares how 'avconv' differs from 'ffmpeg'.

Additionally, this release introduces a number of new interesting codecs such as the Apple ProRes, Flash Screen Video 2 and Windows Media Image, and muxers such as LATM or CELT in Ogg, among many others. Moreover, our H.264 decoder has been improved to decode 4:2:2 material and our libx264 wrapper now allows to produce 4:2:2 and 4:4:4 video.

The 0.8 branch will see maintenance and small feature updates in the future, similar to previous release branches. Please request changes such as bug fixes and new features on our bug tracker.

Jan 11 2012

Since our last point release last month, three security issues have come to our attention. All of them, along with the corresponding fixes, originate from the Chromium Project, but apply to Libav as well. In detail, they have been published as CVE-2011-3892, CVE-2011-3893, and CVE-2011-3895. Therefore, we have updated all three stable branches with the new releases Libav 0.7.4, Libav 0.6.5, and Libav 0.5.7. As always, all releases contain mostly security fixes only with the intention to not introduce disturbing or interfering changes.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Additionally, please use the opportunity to give Libav 0.8_beta2 a try. Compared to the first beta release, this snapshot has seen a number of bug fixes. Note that since libpostproc has not been maintained for quite a while, it is considered deprecated from now on and thus, no longer built by default. In case your applications still require it, you can re-enable the compilation of the post-processing library with the --enable-postproc configure switch at this time, but the library may disappear in a later release of Libav.

Dec 30 2011

As a step towards the next major release 0.8, we are asking for feedback on our beta release. This gives you the opportunity to test and tell us your opinion on what will be included in the next major release. Unlike our last release, this release is a binary compatible drop-in replacement for the 0.7 release series.

December 25 2011

Just in time for Christmas, we have updated our three release branches: Libav 0.7.3, Libav 0.6.4, and Libav 0.5.6. All releases contain mostly security fixes only with the intention to not introduce disturbing or interfering changes. 0.6.4 contains in addition a number of other carefully selected functional fixes from the 0.7 release branch. As an extra bonus, the 0.7.3 release contains a backported API avcodec_open2(). This allows newer versions of the external library libx264 to work with Libav's libavcodec and libavformat libraries again.

In detail, all releases feature fixes for the VP3 decoder (CVE-2011-4352), SVQ1 decoder (CVE-2011-4579), DoS in the VP5/VP6 decoders (CVE-2011-4353), the QDM2 decoder (CVE-2011-4351), and a buffer overflow in the Sierra VMD decoder CVE-2011-4364. For a full list of changes, please refer to the respective Changelog files.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

November 21 2011

Libav is participating in this year's Google Code-in (GCI) under the umbrella of our friends from the VideoLAN organization. Google Code-in is the pre-university version of Google Summer of Code, where Libav has successfully participated in the last few years. We are looking forward to mentoring pupils and introducing them to free and open source software. Happy hacking!

Nov 05 2011

Today, we update two of our stable branches: Libav 0.6.3, and Libav 0.5.5. Both are mostly security related updates, with the intention to not introduce disturbing or interfering changes. This allows distributors and system integrators to update their libraries at low risk of unexpected problems.

For the 0.5.5 release, the following issues have been fixed:

For the 0.6.3 release, the following additional changes have been done:

As always, distributors and system integrators are encouraged to update and share their patches against our release branches.

Sept 30 2011

We have just released Libav 0.7.2, the latest release from the 0.7 branch. This is a security focused release that addresses the following issues:

Additional bug fixes and improvements in the build system, H.264 and VP3/Theora decoder, ARM support and audio codecs are present. A detailed list of changes can be seen in the git log for release 0.7.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

September 27 2011

avconv is now declared stable. Any incompatible syntax changes from now on will be preceded by a deprecation period, when both old and new syntax will work.

August 09 2011

Updated on 12.09.2011.

For consistency with our new name we have renamed ffplay to avplay, ffserver to avserver and ffprobe to avprobe. Their behavior is the same, just the names were changed.

With ffmpeg (the command line tool) we decided to use this opportunity to fix some longstanding usability problems, which involves breaking compatibility. Therefore we have added a new tool named avconv which is based on ffmpeg, but has a different (hopefully more powerful and easier to use) syntax for some options. ffmpeg will be kept in its current state for some time, so no scripts or frontends using it will break. However it will not be developed further.

Differences between avconv and ffmpeg are:

Note that the avconv interface is not considered stable yet. More incompatible changes may come in the following weeks. We will announce here when avconv is stable.

July 21 2011

We have just released Libav 0.7.1, the latest release from the 0.7 branch. This is a maintenance-only release that addresses the following issues:

A detailed list of changes can be seen in the git log.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

June 20 2011

Long overdue but finally finished, we are happy to announce the first release from the Libav 0.7 release branch. Since the last beta version, we have taken feedback from our users into account and integrated H.264/MPEG frame-level multithreading.

The 0.7 branch will see maintenance and small feature updates in the future, similar to previous release branches. Please request changes such as bug fixes and new features on our new bug tracker.

This release enables frame-based multithreaded decoding for a number of codecs, including VP8, H.263 and H.264. Additionally, there has been a major cleanup of both internal and external APIs. For this reason, the major versions of all libraries have been bumped. On the one hand, this means that 0.7 can be installed side-by-side with previous releases, on the other hand, in order to benefit from the new features, applications need to be recompiled.

Other important changes are additions of decoders including, but not limited to, AMR-WB, single stream LATM/LOAS, G.722 ADPCM, a native VP8 decoder and HE-AACv2. Additionally, many new de/muxers such as WebM in Matroska, Apple HTTP Live Streaming, SAP, IEC 61937 (S/PDIF) have been added. See the Changelog file for a list of significant changes.

May 12 2011

We are happy to announce our latest beta release Libav 0.7 beta2. Since the last beta version, we've integrated 9bit and 10bit per sample support in the H.264 decoder, AVX optimizations (available on, for example, Sandy Bridge processors), an DPX image encoder, and SMPTE AES3 audio decoding. Moreover, we have finished cleaning up the API from unnecessary compatibility cruft for the upcoming 0.7 release. In other words, with this beta release the tree is officially declared stable again.

Apr 19 2011

We are still on track with doing the next major release 0.7. As a number of dependent projects have asked for faster releases, we now provide our users with blessed snapshots of the current state of development in Libav in form of the Libav 0.7 beta1 release. This gives you the opportunity to test and write us your opinion on what will be included in the next major release. Please note that major versions (and thus the SONAME) of all libraries have just been bumped which allows co-installation with 0.6.

Apr 18 2011

In preparation for the upcoming 0.7 release, major versions of all the libraries in Libav (libavcodec, libavformat, libavdevice, libavutil, libavfilter, libswscale and libpostproc) were just bumped. This means that some deprecated code was disabled and will be removed shortly, thus breaking binary and API compatibility with 0.6.

The tree is hereby declared unstable for a short time so we can finish all the incompatible changes.

Apr 13 2011

In the past few months, we did a large-scale cleanup of the formerly semi-public IO API in libavformat. As a result:

If you are using the ByteIOContext API in your application, adapting to the changes should be straightforward and consist mostly of renames.

We will maintain compatibility for the 0.7 release, everything deprecated now is planned to be removed shortly before 0.8. If you cannot find an adequate replacement for a deprecated part of the API you are using or have any problems while switching to the buffered API, please contact us and we will try to solve your problem. Refer to the doc/APIChanges file for details.

Mar 25, 2011

We are pleased to announce that only weeks after its inception, Libav has already been integrated into major Linux distributions such as Ubuntu, Gentoo, Debian and OpenEmbedded. We encourage other distros to review our mission statement and consider including Libav as system libraries as well.

Mar 18, 2011

We have just pushed another point release from our 0.6 release branch: Libav 0.6.2. This is another maintenance-only release addressing two security issues.

From now on, we will be using our new project name libav. But don't worry, compared to the preceding release 0.6.1, the only functional changes are the two security fixes for the VC1 and APE decoders. This means that libav provides a painless drop-in replacement for existing FFmpeg installations.

Moreover, we are proud to accompany this source release with executables and libraries for the win32 platform. These binaries include H.264 encoding using the bundled x264 library. Enjoy!

Distributors and system integrators are encouraged to update and share their patches against our release branches.

Mar 17, 2011

We have just pushed another point release from our 0.5 release branch: FFmpeg 0.5.4. This is another maintenance-only release that addresses a number of security issues.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

March 13, 2011

We, as a group of FFmpeg developers, have decided to continue developing FFmpeg under the name Libav. All existing infrastructure will be transferred to the libav.org domain.

Website:  www.libav.org
Git:  git://git.libav.org/libav.git (see libav.org/download.html)
FATE:  fate.libav.org
Roundup:  https://roundup.libav.org/
Patchwork:  patches.libav.org
Mailinglists:  lists.libav.org (developer list: libav-devel@libav.org)

You can update your git repository using the following command:

git remote set-url origin 'git://git.libav.org/libav'

For now we are still reachable over FFmpeg's mailing lists and IRC channels but we will migrate to libav.org counterparts. For a transition period both the website and source might still contain references to FFmpeg. These will disappear over time, except where historically relevant.

February 24, 2011

FFmpeg development has moved to Git, and the SVN repository is no longer updated. The SVN repository may be removed in a near future, so you're recommended to use a Git repository instead.

The last revision committed to SVN was r26402 on 2011-01-19 and replaced the svn:external libswscale with a standalone copy.

Oct 18, 2010

We have just pushed the first point release from our 0.6 release branch: FFmpeg 0.6.1. This is a maintenance-only release that addresses a small number of bugs and security issues. It also adds a newer version of the AAC decoder, which enables the playback of HE-AAC v2 media.

We have also taken the time make another point release our 0.5 branch: FFmpeg 0.5.3. It is a maintenance-only release that addresses a security issue and a minor set of bugs.

Distributors and system integrators are encouraged to update and share their patches against our release branches.

June 15, 2010

A bit longer than actually expected, but finally, we are proud to announce a new release: FFmpeg 0.6. Check out the release notes and changelog.

It is codenamed "Works with HTML5" as the special focus of this release were improvements for the new multimedia elements in HTML5. The H.264 and Theora decoders are now significantly faster and the Vorbis decoder has seen important updates. This release supports Google's newly released libvpx library for the VP8 codec and the Matroska demuxer was extended to support the WebM container.

This release includes again an extensive number of changes; some of its highlights are:

June 2, 2010

We are pleased to announce that FFmpeg will be present at LinuxTag in Berlin June 9-12 where we will be showing some spectacular demos. There will also be some trolls.

May 25, 2010

We have just pushed out another point release from our 0.5 release branch: FFmpeg 0.5.2. This is a maintenance-only release that addresses a small number of security and portability issues. Distributors and system integrators are encouraged to update and share their patches against this branch.

March 19, 2010

Once again, FFmpeg has been accepted to take part in the Google Summer of Code 2010. Here is the Google SoC FFmpeg page.

We have a list of proposed project ideas available so, if you think you might be interested, head over there to see if there is any project on which you wish to work and for which you may wish to make an application. The list is still in flux, and you're free to come up with your own ideas, but note that proposals should be closely tied to the progression of FFmpeg's code base.

We would like prospective students to show us that they've got what it takes to be a contributor to FFmpeg. If you think you're suited, then please complete a small task before submitting your Summer-of-Code proposal. Note that many of the proposed Summer-of-Code projects have specific tasks that you would want to work on, since they would show us that you're comfortable in that particular piece of our codebase that relates to your specific project. Send patches to the mailing list for review, so that you will learn about our patch review process, inline replying (because we don't like top-posting on our mailing lists) and general interactions with our developer base.

The sooner you start communicating with us and working within our code base, the sooner both you and we will ascertain your suitability and you will get used to our development methodology. You have until the application deadline to complete your small task. Good luck!

March 2, 2010

We have just pushed out a point release from our 0.5 release branch: FFmpeg 0.5.1. This release fixes security, packaging and licensing issues for FFmpeg 0.5, but it is a maintenance only release; no new codecs, formats or other feature are being introduced. The full details are spelled out in the the release notes and changelog.

There have been security fixes for the ASF, Ogg and MOV/MP4 demuxers as well as the FFv1, H.264, HuffYUV, MLP, MPEG audio and Snow decoders. libswscale can now be compiled in LGPL mode, albeit with x86 optimizations disabled. Some non-free bits in a test program were replaced. The AC-3 decoder is now completely LGPL. AMR-NB/WB support is now possible in free software through the OpenCORE libraries.

To help packagers, the x264 glue code was updated to work with newer versions and symbol versioning was backported, as was the lock management API. The symbol versioning change is enabled on platforms that support it. This allows users to upgrade from 0.5.1 to the upcoming 0.6 release without having to recompile their applications. While this release is both API and ABI compatible with 0.5, please note that distributors have to recompile applications against 0.5.1 in order to make seamless upgrades to 0.6 possible.

March 1, 2010

We have been busy over the past few months. Among other things, the results are an Indeo 5 video decoder as well as audio decoders for AMR-NB, Sipro, MPEG-4 ALS and WMA Voice, complete support for Bink, CDG and IFF PBM/ILBM bitmaps, an RTSP muxer, Blu-ray (PGS) subtitle support, a protocol for file concatenation and the ffprobe tool for extracting information from multimedia files.

September 23, 2009

In 1992 Sony introduced the first Minidisc player. 17 years later it is now possible to transfer and play back the raw ATRAC data from the actual digital disc with the help of FFmpeg, tools developed by the Linux Minidisc project and official hardware (MZ-RH1). So if you have lots of digital recordings stored on Minidisc now is the time to archive it all.

One of the last entrenchments of proprietary multimedia has fallen: Windows Media Audio Pro support is finally available in FFmpeg. It decodes all known samples flawlessly and is considerably faster than the binary decoder from Microsoft. A big thank you goes out to all the reverse engineers and programmers who made this possible. It really was a herculean effort.

August 24, 2009

Just a very short time after its launch (~10 years), FFmpeg now supports decoding of TwinVQ (remember .vqf files?). Now FOSS enthusiasts can finally contribute to the late 90's discussion if it sounds better than MP3 or not.

July 24, 2009

FFmpeg has removed support for libamr as of svn revision 19365. It has been replaced with support for libopencore-amr. Naturally the configure options have changed. The libamr options have been removed and there are two new options to take their place:

The reason for this change is that the libamr license was non-free, while libopencore-amr is licensed under an Apache 2 license. The change was discussed at length on the developer mailing list during May, June, and July. This has several effects:

May 7, 2009

FFmpeg was granted 9 slots to fill with applicants. After the gruelling application and qualification process, we will be running the following tasks this year:

Congratulations to all the successful applicants. Work hard, communicate well and prosper! Good luck!

March 26, 2009

Once again, FFmpeg has been accepted to take part in the Google Summer of Code 2009. Here is the Google SoC FFmpeg page.

We have a list of proposed project ideas available so, if you think you might be interested, head over there to see if there is any project on which you wish to work and for which you may wish to make an application. The list is still in flux, and you're free to come up with your own ideas, but note that proposals should be closely tied to the progression of FFmpeg's code base.

If you're a student who thinks you have what it takes, we require that prospective students complete some degree of small task before they will be considered to take part in the program for FFmpeg. Take a look at the list, pick something to do, learn about inline replying because we don't like top-posting on our mailing lists and then tell us on the FFmpeg-devel mailing list your small task of choice.

The sooner you start communicating with us and working within our code base, the sooner both you and we will ascertain your suitability and you will get used to our development methodology. You have until the application deadline to complete your small task. Good luck!

March 23, 2009

A new mailing list has been created for ffserver users. The list is intended to create an environment for discussion amongst ffserver users so that they can better receive support and support each other. Interested parties can subscribe and view the archives via the contact page.

March 10, 2009

It has been a very long time since we last made a release and many did not think we would make one again but, back by popular demand, we are proud to announce a new release: FFmpeg 0.5. Check out the release notes and changelog.

It is codenamed "half-way to world domination A.K.A. the belligerent blue bike shed" to give an idea where we stand in the grand scheme of things and to commemorate the many fruitful discussions we had during its development.

This release includes a very extensive number of changes, but some of the highlights are:

March 4, 2009

Google are again running their Summer of Code program and, as usual, we will be applying for a project position. As such we will need strong project proposals and qualification tasks for the students to complete.

To all the students out there who want to work on FFmpeg over the summer, the sooner you begin to contribute to the project the better. Working on digital multimedia software is not the easiest task and getting code into FFmpeg's trunk repository demands significant rigor and commitment.

Until we are officially accepted into the program, you could take a look at the list of small tasks we have and try to complete one of those. Support for development of FFmpeg is available via the FFmpeg-devel mailing list or IRC.

December 20, 2008

RealVideo 3.0 decoder added. Still working the bugs out, please test and report any problems.

December 20, 2008

The FFmpeg project would like to recognize and thank the people at Picsearch for their help improving FFmpeg recently. The Picsearch team makes extensive use of FFmpeg and provided feedback to FFmpeg in the form of thousands of files that either crash FFmpeg or use unsupported/unknown codecs. The FFmpeg development team is putting this information to work in order to improve FFmpeg for everyone.

We know that there are other organizations using FFmpeg on a large scale to process diverse input types. The FFmpeg team invites those organizations to provide similar feedback about problems encountered in the wild.

December 3, 2008

A bunch of new formats have recently been added to FFmpeg, namely a QCELP/PureVoice speech decoder, a floating point PCM decoder and encoder, a Nellymoser ASAO encoder, an Electronic Arts TGQ decoder, Speex decoding via libspeex, an MXF muxer, an ASS/SSA subtitle demuxer and muxer and our AC-3 decoder has been extended with E-AC-3 support. Last but not least we now have a decoder for RealVideo 4.0.

September 8, 2008

FFmpeg is undergoing major changes in its API/ABI. The last valid revision for libavcodec version 51 is r15261.

August 21, 2008

The AAC decoder from FFmpeg Summer of Code 2006 has finally been cleaned up and is now in FFmpeg trunk. It supports Main and Low Complexity profile AAC but does not yet support HE AAC v1 (LC + SBR) or v2 (LC + SBR + PS), though implementation of this support is underway. It is considerably faster than FAAD and you should expect further performance improvements and bug fixes in the coming weeks.

Also, FFmpeg now has floating point PCM support and supports MLP/TrueHD decoding (FFmpeg SoC 2008 should bring us an encoder), Apple Lossless Audio encoding (FFmpeg SoC 2008) MVI demuxing and Motion Pixels Video decoding, D-Cinema audio muxing, Electronic Arts CMV and TGV decoding and MAXIS EA XA demuxing/decoding.

June 16, 2008

UAB "DKD" (dkd.lt) have released a Nellymoser ASAO compatible decoder and encoder under the LGPL. This will aid the development of a native encoder in FFmpeg, and right now a GSoC student is working hard on just that task. A great thanks to UAB "DKD" for this contribution to the FFmpeg community.

June 11, 2008

We have added an Oma demuxer, the QuickTime variant of an IMA ADPCM encoder, a VFW grabber, an iPod/iPhone-compatible MP4 muxer, a Mimic decoder, an MSN TCP Webcam stream demuxer as well as demuxers and decoders for the following fringe formats: RL2, IFF, 8SVX, BFI.

February 7, 2008

We have added Ogg and AVM2 (Flash 9) SWF muxers, TechnoTrend PVA and Linux Media Labs MPEG-4 (LMLM4) demuxers, PC Paintbrush PCX and Sun Rasterfile decoders.

November 11, 2007

FFmpeg now supports XIntra8 frames, meaning that finally all WMV2 samples and some WMV3 samples that showed blocky color artifacts can be decoded correctly.

October 22, 2007

Beam Software SIFF demuxer and video decoder support added.

October 15, 2007

FFmpeg gets support for the Nellymoser speech codec used in flash.

October 9, 2007

Apart from a DNxHD encoder, PAFF decoding support for H.264 was committed to SVN.

September 29, 2007

AMV audio and video decoding has arrived.

September 13, 2007

In about half a year of work since the last update we have added among other things: DXA and Monkey's Audio demuxer and decoder, DNxHD, Atrac3 and AC-3 decoders, QTRLE encoder, NUT and Matroska muxers.

July 14, 2007

FFmpeg got 8 projects this year in the Google Summer of Code program.

March 09, 2007

Nine months without news but with heavy development. A few select highlights are decoders for VC-1/WMV3/WMV9, VMware, VP5, VP6 video and WavPack, IMC, DCA audio and a WMA encoder.