83 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
Release Notes
 | 
						|
=============
 | 
						|
 | 
						|
* 0.8 "Forbidden Fruit"
 | 
						|
 | 
						|
General notes
 | 
						|
-------------
 | 
						|
 | 
						|
This release continues the API cleanups that have begun with the
 | 
						|
previous release. While it is 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. Please see the Changelog file for details 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.
 | 
						|
 | 
						|
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.
 | 
						|
 | 
						|
 | 
						|
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:
 | 
						|
 | 
						|
* new audio decoding API which decodes from an AVPacket to an AVFrame and
 | 
						|
is able to use AVCodecContext.get_buffer() in the similar way as video decoding.
 | 
						|
 | 
						|
* new audio encoding API which encodes from an AVFrame to an AVPacket, thus
 | 
						|
allowing it to properly output timing information and side data.
 | 
						|
 | 
						|
* rewritten AVOptions API with better built-in support for private options.
 | 
						|
 | 
						|
* private options support for demuxers [avformat_open_input()], muxers
 | 
						|
[avformat_write_header()], encoders and decoders [avcodec_open2()].
 | 
						|
As a result, many format- or codec-specific fields and flags in AVFormatContext
 | 
						|
and AVCodecContext were deprecated -- notably most of CODEC_FLAG2_* and many
 | 
						|
CODEC_FLAG_*.
 | 
						|
 | 
						|
* new API for custom IO interrupt callbacks.
 | 
						|
 | 
						|
* #include cleanup in libavutil -- libavutil/avutil.h no longer includes all
 | 
						|
the other headers in libavutil, they must be included manually. One specific
 | 
						|
result is that libavutil/mathematics.h is no longer included from
 | 
						|
libavcodec/avcodec.h, which is a common source of errors.
 | 
						|
 | 
						|
Please see the file doc/APIchanges for details along with
 | 
						|
similar programmer-centric information.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
Other notable changes
 | 
						|
---------------------
 | 
						|
 | 
						|
Libavcodec and libavformat built as shared libraries now hide non-public
 | 
						|
symbols. This will break applications using those symbols. Possible solutions
 | 
						|
are, in order of preference:
 | 
						|
1) Try finding a way of accomplishing the same with public API.
 | 
						|
2) If there is no corresponding public API, but you think there should be,
 | 
						|
post a request on the user mailing list or IRC channel.
 | 
						|
3) Finally if your program needs access to Libav internals for some special
 | 
						|
reason then the best solution is to link statically.
 | 
						|
 | 
						|
Please see the Changelog file for a more detailed list of changes.
 |