82 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| Release Notes
 | |
| =============
 | |
| 
 | |
| * 10 "Eks"
 | |
| 
 | |
| General notes
 | |
| -------------
 | |
| 
 | |
| 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) should be both 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 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.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| 
 | |
| API changes
 | |
| -----------
 | |
| 
 | |
| A number of additional APIs have been introduced and some existing functions
 | |
| have been deprecated and are scheduled for removal in the next release.
 | |
| Significant API changes include:
 | |
| 
 | |
| [libavutil]
 | |
| + added the reference-counted buffers API (buffers.h)
 | |
| + moved the AVFrame struct to libavutil and added a new API for working with
 | |
|   reference-counted AVFrames (frame.h)
 | |
| 
 | |
| [libavcodec]
 | |
| + added an API for working with reference-counted AVPackets (av_packet_*)
 | |
| +- converted VDPAU to the hwaccel framework; the old way of using VDPAU is no
 | |
|    longer supported
 | |
| - old audio encoding and decoding APIs removed
 | |
| - old video encoding API removed
 | |
| - deprecated enum CodecID removed (enum AVCodecID should be used instead)
 | |
| - deprecated audio resampling API removed (libavresample should be used
 | |
|   instead)
 | |
| 
 | |
| [libavfilter]
 | |
| +- replaced AVFilterBufferRef with AVFrame; AVFilterBufferRef and everything
 | |
|    related to it still exists, but is deprecated
 | |
| + converted all filters to use the AVOptions system for configuration, it is
 | |
|   now possible to query the supported options, their values and set them
 | |
|   directly with av_opt_*
 | |
| + added a slice multithreading framework
 | |
| +- merged avfiltergraph.h to avfilter.h, using AVFilterGraph is now explicitly
 | |
|    mandatory (it was implicitly required even before); added new API for
 | |
|    allocating and initializing filters
 | |
| 
 | |
| Please see the file doc/APIchanges for details along with similar
 | |
| programmer-centric information.
 |