Merge commit 'b7f1010c8fce09096057528f7cd29589ea1ae7df'
[ffmpeg.git] / doc / APIchanges
index 0c9a455..1d6d34b 100644 (file)
@@ -7,12 +7,96 @@ libavdevice:   2011-04-18
 libavfilter:   2012-06-22
 libavformat:   2012-01-27
 libavresample: 2012-04-24
+libpostproc:   2011-04-18
+libswresample: 2011-09-19
 libswscale:    2011-06-20
 libavutil:     2011-04-18
 
 
 API changes, most recent first:
 
+2012-09-27 - a70b493 - lavd 54.3.100 - version.h
+  Add LIBAVDEVICE_IDENT symbol.
+
+2012-09-27 - a70b493 - lavfi 3.18.100 - version.h
+  Add LIBAVFILTER_IDENT symbol.
+
+2012-09-27 - a70b493 - libswr 0.16.100 - version.h
+  Add LIBSWRESAMPLE_VERSION, LIBSWRESAMPLE_BUILD
+  and LIBSWRESAMPLE_IDENT symbols.
+
+2012-09-06 - 29e972f - lavu 51.72.100 - parseutils.h
+  Add av_small_strptime() time parsing function.
+
+  Can be used as a stripped-down replacement for strptime(), on
+  systems which do not support it.
+
+2012-08-25 - 2626cc4 - lavf 54.28.100
+  Matroska demuxer now identifies SRT subtitles as AV_CODEC_ID_SUBRIP instead
+  of AV_CODEC_ID_TEXT.
+
+2012-08-13 - 5c0d8bc - lavfi 3.8.100 - avfilter.h
+  Add avfilter_get_class() function, and priv_class field to AVFilter
+  struct.
+
+2012-08-12 - a25346e - lavu 51.69.100 - opt.h
+  Add AV_OPT_FLAG_FILTERING_PARAM symbol in opt.h.
+
+2012-07-31 - 23fc4dd - lavc 54.46.100
+  Add channels field to AVFrame.
+
+2012-07-30 - f893904 - lavu 51.66.100
+  Add av_get_channel_description()
+  and av_get_standard_channel_layout() functions.
+
+2012-07-21 - 016a472 - lavc 54.43.100
+  Add decode_error_flags field to AVFrame.
+
+2012-07-20 - b062936 - lavf 54.18.100
+  Add avformat_match_stream_specifier() function.
+
+2012-07-14 - f49ec1b - lavc 54.38.100 - avcodec.h
+  Add metadata to AVFrame, and the accessor functions
+  av_frame_get_metadata() and av_frame_set_metadata().
+
+2012-07-10 - 0e003d8 - lavc 54.33.100
+  Add av_fast_padded_mallocz().
+
+2012-07-10 - 21d5609 - lavfi 3.2.0 - avfilter.h
+  Add init_opaque() callback to AVFilter struct.
+
+2012-06-26 - e6674e4 - lavu 51.63.100 - imgutils.h
+  Add functions to libavutil/imgutils.h:
+  av_image_get_buffer_size()
+  av_image_fill_arrays()
+  av_image_copy_to_buffer()
+
+2012-06-24 - c41899a - lavu 51.62.100 - version.h
+  version moved from avutil.h to version.h
+
+2012-04-11 - 359abb1 - lavu 51.58.100 - error.h
+  Add av_make_error_string() and av_err2str() utilities to
+  libavutil/error.h.
+
+2012-06-05 - 62b39d4 - lavc 54.24.100
+  Add pkt_duration field to AVFrame.
+
+2012-05-24 - f2ee065 - lavu 51.54.100
+  Move AVPALETTE_SIZE and AVPALETTE_COUNT macros from
+  libavcodec/avcodec.h to libavutil/pixfmt.h.
+
+2012-05-14 - 94a9ac1 - lavf 54.5.100
+  Add av_guess_sample_aspect_ratio() function.
+
+2012-04-20 - 65fa7bc - lavfi 2.70.100
+  Add avfilter_unref_bufferp() to avfilter.h.
+
+2012-04-13 - 162e400 - lavfi 2.68.100
+  Install libavfilter/asrc_abuffer.h public header.
+
+2012-03-26 - a67d9cf - lavfi 2.66.100
+  Add avfilter_fill_frame_from_{audio_,}buffer_ref() functions.
+
 2012-10-12 - xxxxxxx - lavu 51.44.0 - pixdesc.h
   Add functions for accessing pixel format descriptors.
   Accessing the av_pix_fmt_descriptors array directly is now
@@ -62,10 +146,6 @@ API changes, most recent first:
   51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY.
   91e59fe - Add avcodec_descriptor_get_by_name().
 
-
-2012-08-08 - 1d9c2dc - lavu 51.39 - avutil.h
-  Don't implicitly include libavutil/common.h in avutil.h
-
 2012-08-08 - 987170c - lavu 51.38 - dict.h
   Add av_dict_count().
 
@@ -84,9 +164,6 @@ API changes, most recent first:
 2012-07-29 - 681ed00 - lavf 54.13.0 - avformat.h
   Add AVFMT_FLAG_NOBUFFER for low latency use cases.
 
-2012-07-20 - b70d89a - lavfi 3.0.0 - avfilter.h
-  Add avfilter_unref_bufferp().
-
 2012-07-10 - 5fade8a - lavu 51.37.0
   Add av_malloc_array() and av_mallocz_array()
 
@@ -115,10 +192,6 @@ API changes, most recent first:
 2012-05-25 - 154486f - lavu 51.31.0 - opt.h
   Add av_opt_set_bin()
 
-2012-05-26 - e9cef89 - lavf 54.3.0
-  Add AVFMT_TS_NONSTRICT format flag to indicate that a muxer supports
-  non-increasing monotone timestamps.
-
 2012-05-15 - lavfi 2.17.0
   Add support for audio filters
   ac71230/a2cd9be - add video/audio buffer sink in a new installed
@@ -165,16 +238,34 @@ API changes, most recent first:
 
 2012-04-14 - lavfi 2.16.0 - avfiltergraph.h
   d7bcc71 Add avfilter_graph_parse2().
-  91d3cbe Add avfilter_inout_alloc() and avfilter_inout_free().
 
 2012-04-08 - 4d693b0 - lavu 51.27.0 - samplefmt.h
   Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()
 
-2012-04-05 - 5cc51a5 - lavu 51.26.0 - audioconvert.h
-  Add av_get_default_channel_layout()
+2012-03-21 - b75c67d - lavu 51.43.100
+  Add bprint.h for bprint API.
+
+2012-02-21 - 9cbf17e - lavc 54.4.100
+  Add av_get_pcm_codec() function.
+
+2012-02-16 - 560b224 - libswr 0.7.100
+  Add swr_set_matrix() function.
+
+2012-02-09 - c28e7af - lavu 51.39.100
+  Add a new installed header libavutil/timestamp.h with timestamp
+  utilities.
+
+2012-02-06 - 70ffda3 - lavu 51.38.100
+  Add av_parse_ratio() function to parseutils.h.
+
+2012-02-06 - 70ffda3 - lavu 51.38.100
+  Add AV_LOG_MAX_OFFSET macro to log.h.
 
-2012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h
-  Add av_set_cpu_flags_mask().
+2012-02-02 - 0eaa123 - lavu 51.37.100
+  Add public timecode helpers.
+
+2012-01-24 - 0c3577b - lavfi 2.60.100
+  Add avfilter_graph_dump.
 
 2012-03-05 - lavc 54.8.0
   6699d07 Add av_get_exact_bits_per_sample()
@@ -230,10 +321,6 @@ API changes, most recent first:
           muxers supporting it (av_write_frame makes sure it is called
           only for muxers with this flag).
 
-------------------------------8<-------------------------------------
-                   0.8 branch was cut here
------------------------------>8--------------------------------------
-
 2012-01-15 - lavc 53.34.0
   New audio encoding API:
   b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio
@@ -245,22 +332,26 @@ API changes, most recent first:
 2012-01-12 - 3167dc9 - lavfi 2.15.0
   Add a new installed header -- libavfilter/version.h -- with version macros.
 
-2011-01-03 - b73ec05 - lavu 51.21.0
-  Add av_popcount64
+2011-12-08 - a502939 - lavfi 2.52.0
+  Add av_buffersink_poll_frame() to buffersink.h.
 
-2011-12-25 - lavfi 2.14.0
-  e1d9dbf Add a new installed header - buffersrc.h
-  It contains a new function av_buffersrc_buffer() that allows passing
-  frames to the 'buffer' filter, but unlike av_vsrc_buffer_add_frame()
-  it allows for direct rendering.
-  1c9e340 Add avfilter_copy_frame_props() for copying properties from
-  AVFrame to AVFilterBufferRef.
+2011-12-08 - 26c6fec - lavu 51.31.0
+  Add av_log_format_line.
 
-2011-12-25 - lavc 53.31.0
-  Add the following new fields to AVFrame:
-    b58dbb5 sample_aspect_ratio
-    3a2ddf7 width, height
-    8a4a5f6 format
+2011-12-03 - 976b095 - lavu 51.30.0
+  Add AVERROR_BUG.
+
+2011-11-24 - 573ffbb - lavu 51.28.1
+  Add av_get_alt_sample_fmt() to samplefmt.h.
+
+2011-11-03 - 96949da - lavu 51.23.0
+  Add av_strcasecmp() and av_strncasecmp() to avstring.h.
+
+2011-10-20 - b35e9e1 - lavu 51.22.0
+  Add av_strtok() to avstring.h.
+
+2011-01-03 - b73ec05 - lavu 51.21.0
+  Add av_popcount64
 
 2011-12-18 - 8400b12 - lavc 53.28.1
   Deprecate AVFrame.age. The field is unused.
@@ -348,49 +439,134 @@ API changes, most recent first:
   - 641c7af new functions - av_opt_child_next, av_opt_child_class_next
     and av_opt_find2()
 
-2011-09-03 - fb4ca26 - lavc 53.10.0
-                       lavf 53.6.0
+2011-09-22 - a70e787 - lavu 51.17.0
+  Add av_x_if_null().
+
+2011-09-18 - 645cebb - lavc 53.16.0
+  Add showall flag2
+
+2011-09-16 - ea8de10 - lavfi 2.42.0
+  Add avfilter_all_channel_layouts.
+
+2011-09-16 - 9899037 - lavfi 2.41.0
+  Rename avfilter_all_* function names to avfilter_make_all_*.
+
+  In particular, apply the renames:
+  avfilter_all_formats         -> avfilter_make_all_formats
+  avfilter_all_channel_layouts -> avfilter_make_all_channel_layouts
+  avfilter_all_packing_formats -> avfilter_make_all_packing_formats
+
+2011-09-12 - 4381bdd - lavfi 2.40.0
+  Change AVFilterBufferRefAudioProps.sample_rate type from uint32_t to int.
+
+2011-09-12 - 2c03174 - lavfi 2.40.0
+  Simplify signature for avfilter_get_audio_buffer(), make it
+  consistent with avfilter_get_video_buffer().
+
+2011-09-06 - 4f7dfe1 - lavfi 2.39.0
+  Rename libavfilter/vsink_buffer.h to libavfilter/buffersink.h.
+
+2011-09-06 - c4415f6 - lavfi 2.38.0
+  Unify video and audio sink API.
+
+  In particular, add av_buffersink_get_buffer_ref(), deprecate
+  av_vsink_buffer_get_video_buffer_ref() and change the value for the
+  opaque field passed to the abuffersink init function.
+
+2011-09-04 - 61e2e29 - lavu 51.16.0
+  Add av_asprintf().
+
+2011-08-22 - dacd827 - lavf 53.10.0
+  Add av_find_program_from_stream().
+
+2011-08-20 - 69e2c1a - lavu 51.13.0
+  Add av_get_media_type_string().
+
+2011-09-03 - fb4ca26 - lavc 53.13.0
+                       lavf 53.11.0
                        lsws  2.1.0
   Add {avcodec,avformat,sws}_get_class().
 
-2011-09-03 - c11fb82 - lavu 51.10.0
+2011-08-03 - c11fb82 - lavu 51.15.0
   Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function.
 
+2011-08-14 - 323b930 - lavu 51.12.0
+  Add av_fifo_peek2(), deprecate av_fifo_peek().
+
 2011-08-26 - lavu 51.9.0
-  - f2011ed Add av_fifo_peek2(), deprecate av_fifo_peek().
   - add41de..abc78a5 Do not include intfloat_readwrite.h,
     mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h.
 
-2011-08-16 - 48f9e45 - lavf 53.4.0
+2011-08-16 - 48f9e45 - lavf 53.8.0
   Add avformat_query_codec().
 
-2011-08-16 - bca06e7 - lavc 53.8.0
+2011-08-16 - bca06e7 - lavc 53.11.0
   Add avcodec_get_type().
 
-2011-08-06 - 2f63440 - lavf 53.4.0
+2011-08-06 - 2f63440 - lavf 53.7.0
   Add error_recognition to AVFormatContext.
 
-2011-08-02 - 9d39cbf - lavc 53.7.1
+2011-08-02 - 9d39cbf - lavc 53.9.1
   Add AV_PKT_FLAG_CORRUPT AVPacket flag.
 
-2011-07-10 - a67c061 - lavf 53.3.0
+2011-07-16 - b57df29 - lavfi 2.27.0
+  Add audio packing negotiation fields and helper functions.
+
+  In particular, add AVFilterPacking enum, planar, in_packings and
+  out_packings fields to AVFilterLink, and the functions:
+  avfilter_set_common_packing_formats()
+  avfilter_all_packing_formats()
+
+2011-07-10 - a67c061 - lavf 53.6.0
   Add avformat_find_stream_info(), deprecate av_find_stream_info().
   NOTE: this was backported to 0.7
 
-2011-07-10 - 0b950fe - lavc 53.6.0
+2011-07-10 - 0b950fe - lavc 53.8.0
   Add avcodec_open2(), deprecate avcodec_open().
   NOTE: this was backported to 0.7
 
   Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and
   avcodec_alloc_context2().
 
+2011-07-01 - b442ca6 - lavf 53.5.0 - avformat.h
+  Add function av_get_output_timestamp().
+
+2011-06-28 - 5129336 - lavu 51.11.0 - avutil.h
+  Define the AV_PICTURE_TYPE_NONE value in AVPictureType enum.
+
+2011-06-19 - fd2c0a5 - lavfi 2.23.0 - avfilter.h
+  Add layout negotiation fields and helper functions.
+
+  In particular, add in_chlayouts and out_chlayouts to AVFilterLink,
+  and the functions:
+  avfilter_set_common_sample_formats()
+  avfilter_set_common_channel_layouts()
+  avfilter_all_channel_layouts()
+
+2011-06-19 - 527ca39 - lavfi 2.22.0 - AVFilterFormats
+  Change type of AVFilterFormats.formats from int * to int64_t *,
+  and update formats handling API accordingly.
+
+  avfilter_make_format_list() still takes a int32_t array and converts
+  it to int64_t. A new function, avfilter_make_format64_list(), that
+  takes int64_t arrays has been added.
+
+2011-06-19 - 44f669e - lavfi 2.21.0 - vsink_buffer.h
+  Add video sink buffer and vsink_buffer.h public header.
+
+2011-06-12 - 9fdf772 - lavfi 2.18.0 - avcodec.h
+  Add avfilter_get_video_buffer_ref_from_frame() function in
+  libavfilter/avcodec.h.
+
+2011-06-12 - c535494 - lavfi 2.17.0 - avfiltergraph.h
+  Add avfilter_inout_alloc() and avfilter_inout_free() functions.
+
+2011-06-12 - 6119b23 - lavfi 2.16.0 - avfilter_graph_parse()
+  Change avfilter_graph_parse() signature.
+
 2011-06-23 - 67e9ae1 - lavu 51.8.0 - attributes.h
   Add av_printf_format().
 
-------------------------------8<-------------------------------------
-                   0.7 branch was cut here
------------------------------>8--------------------------------------
-
 2011-06-16 - 05e84c9, 25de595 - lavf 53.2.0 - avformat.h
   Add avformat_open_input and avformat_write_header().
   Deprecate av_open_input_stream, av_open_input_file,
@@ -404,34 +580,97 @@ API changes, most recent first:
 2011-06-10 - cb7c11c - lavu 51.6.0 - opt.h
   Add av_opt_flag_is_set().
 
-2011-06-08 - d9f80ea - lavu 51.5.0 - AVMetadata
+2011-06-10 - c381960 - lavfi 2.15.0 - avfilter_get_audio_buffer_ref_from_arrays
+  Add avfilter_get_audio_buffer_ref_from_arrays() to avfilter.h.
+
+2011-06-09 - d9f80ea - lavu 51.8.0 - AVMetadata
   Move AVMetadata from lavf to lavu and rename it to
   AVDictionary -- new installed header dict.h.
   All av_metadata_* functions renamed to av_dict_*.
 
-2011-06-07 - a6703fa - lavu 51.4.0 - av_get_bytes_per_sample()
+2011-06-07 - a6703fa - lavu 51.8.0 - av_get_bytes_per_sample()
   Add av_get_bytes_per_sample() in libavutil/samplefmt.h.
   Deprecate av_get_bits_per_sample_fmt().
 
-2011-06-05 - b39b062 - lavu 51.3.0 - opt.h
+2011-06-05 - b39b062 - lavu 51.8.0 - opt.h
   Add av_opt_free convenience function.
 
-2011-05-28 - 0420bd7 - lavu 51.2.0 - pixdesc.h
+2011-06-06 - 95a0242 - lavfi 2.14.0 - AVFilterBufferRefAudioProps
+  Remove AVFilterBufferRefAudioProps.size, and use nb_samples in
+  avfilter_get_audio_buffer() and avfilter_default_get_audio_buffer() in
+  place of size.
+
+2011-06-06 - 0bc2cca - lavu 51.6.0 - av_samples_alloc()
+  Switch nb_channels and nb_samples parameters order in
+  av_samples_alloc().
+
+2011-06-06 - e1c7414 - lavu 51.5.0 - av_samples_*
+  Change the data layout created by av_samples_fill_arrays() and
+  av_samples_alloc().
+
+2011-06-06 - 27bcf55 - lavfi 2.13.0 - vsrc_buffer.h
+  Make av_vsrc_buffer_add_video_buffer_ref() accepts an additional
+  flags parameter in input.
+
+2011-06-03 - e977ca2 - lavfi 2.12.0 - avfilter_link_free()
+  Add avfilter_link_free() function.
+
+2011-06-02 - 5ad38d9 - lavu 51.4.0 - av_force_cpu_flags()
+  Add av_cpu_flags() in libavutil/cpu.h.
+
+2011-05-28 - e71f260 - lavu 51.3.0 - pixdesc.h
   Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate
   avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor.
 
-2011-05-25 - 30315a8 - lavf 53.1.0 - avformat.h
+2011-05-25 - 30315a8 - lavf 53.3.0 - avformat.h
   Add fps_probe_size to AVFormatContext.
 
-2011-05-18 - 64150ff - lavc 53.4.0 - AVCodecContext.request_sample_fmt
+2011-05-22 - 5ecdfd0 - lavf 53.2.0 - avformat.h
+  Introduce avformat_alloc_output_context2() and deprecate
+  avformat_alloc_output_context().
+
+2011-05-22 - 83db719 - lavfi 2.10.0 - vsrc_buffer.h
+  Make libavfilter/vsrc_buffer.h public.
+
+2011-05-19 - c000a9f - lavfi 2.8.0 - avcodec.h
+  Add av_vsrc_buffer_add_frame() to libavfilter/avcodec.h.
+
+2011-05-14 - 9fdf772 - lavfi 2.6.0 - avcodec.h
+  Add avfilter_get_video_buffer_ref_from_frame() to libavfilter/avcodec.h.
+
+2011-05-18 - 64150ff - lavc 53.7.0 - AVCodecContext.request_sample_fmt
   Add request_sample_fmt field to AVCodecContext.
 
-2011-05-10 - 188dea1 - lavc 53.3.0 - avcodec.h
+2011-05-10 - 188dea1 - lavc 53.6.0 - avcodec.h
   Deprecate AVLPCType and the following fields in
   AVCodecContext: lpc_coeff_precision, prediction_order_method,
   min_partition_order, max_partition_order, lpc_type, lpc_passes.
   Corresponding FLAC encoder options should be used instead.
 
+2011-05-07 - 9fdf772 - lavfi 2.5.0 - avcodec.h
+  Add libavfilter/avcodec.h header and avfilter_copy_frame_props()
+  function.
+
+2011-05-07 - 18ded93 - lavc 53.5.0 - AVFrame
+  Add format field to AVFrame.
+
+2011-05-07 - 22333a6 - lavc 53.4.0 - AVFrame
+  Add width and height fields to AVFrame.
+
+2011-05-01 - 35fe66a - lavfi 2.4.0 - avfilter.h
+  Rename AVFilterBufferRefVideoProps.pixel_aspect to
+  sample_aspect_ratio.
+
+2011-05-01 - 77e9dee - lavc 53.3.0 - AVFrame
+  Add a sample_aspect_ratio field to AVFrame.
+
+2011-05-01 - 1ba5727 - lavc 53.2.0 - AVFrame
+  Add a pkt_pos field to AVFrame.
+
+2011-04-29 - 35ceaa7 - lavu 51.2.0 - mem.h
+  Add av_dynarray_add function for adding
+  an element to a dynamic array.
+
 2011-04-26 - bebe72f - lavu 51.1.0 - avutil.h
   Add AVPictureType enum and av_get_picture_type_char(), deprecate
   FF_*_TYPE defines and av_get_pict_type_char() defined in
@@ -483,9 +722,6 @@ API changes, most recent first:
     333e894 deprecate url_open_protocol
     e230705 deprecate url_poll and URLPollEntry
 
-2011-04-10 - lavu  50.40.0 - pixfmt.h
-  Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
-
 2011-04-08 - lavf 52.106.0 - avformat.h
   Minor avformat.h cleanup:
     a9bf9d8 deprecate av_guess_image2_codec
@@ -510,7 +746,6 @@ API changes, most recent first:
     d9d86e0 rename url_fprintf -> avio_printf
     59f65d9 deprecate url_setbufsize
     3e68b3b deprecate url_ferror
-    66e5b1d deprecate url_feof
     e8bb2e2 deprecate url_fget_max_packet_size
     76aa876 rename url_fsize -> avio_size
     e519753 deprecate url_fgetc
@@ -534,6 +769,9 @@ API changes, most recent first:
 2011-03-25 - 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type
   Add audio_service_type field to AVCodecContext.
 
+2011-03-17 - e309fdc - lavu 50.40.0 - pixfmt.h
+  Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
+
 2011-03-02 - 863c471 - lavf  52.103.0 - av_pkt_dump2, av_pkt_dump_log2
   Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
   source stream timebase for outputting timestamps. Deprecate
@@ -600,6 +838,12 @@ API changes, most recent first:
 2011-02-02 - dfd2a00 - lavu 50.37.0 - log.h
   Make av_dlog public.
 
+2011-01-31 - 7b3ea55 - lavfi 1.76.0 - vsrc_buffer
+  Add sample_aspect_ratio fields to vsrc_buffer arguments
+
+2011-01-31 - 910b5b8 - lavfi 1.75.0 - AVFilterLink sample_aspect_ratio
+  Add sample_aspect_ratio field to AVFilterLink.
+
 2011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps
   Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples.