From 26f71ef48c0b6fb9f278528c8251850a76bcd3fe Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Tue, 17 Jan 2012 12:42:34 +0100 Subject: RELEASE_NOTES: mention some notable API changes in 0.8 --- doc/RELEASE_NOTES | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) (limited to 'doc/RELEASE_NOTES') diff --git a/doc/RELEASE_NOTES b/doc/RELEASE_NOTES index b5ced86e85..218a81b544 100644 --- a/doc/RELEASE_NOTES +++ b/doc/RELEASE_NOTES @@ -9,10 +9,7 @@ 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. Note that a couple of header includes have been cleaned -up, which may require code changes in your applications. In particular, -the header "libavutil/mathematics.h" is no longer included from -"libavcodec/avcodec.h". Please consult the doc/APIchanges file to see +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 @@ -42,7 +39,30 @@ 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. Please see the file doc/APIchanges for details along with +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. -- cgit v1.2.3 From bbf0023bb6865777d97cfb33043d3478c863d031 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Tue, 17 Jan 2012 13:38:35 +0100 Subject: RELEASE_NOTES: mention hiding private symbols in shared builds. --- doc/RELEASE_NOTES | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'doc/RELEASE_NOTES') diff --git a/doc/RELEASE_NOTES b/doc/RELEASE_NOTES index 218a81b544..8c642b9e4d 100644 --- a/doc/RELEASE_NOTES +++ b/doc/RELEASE_NOTES @@ -70,4 +70,13 @@ 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. -- cgit v1.2.3