]> git.sesse.net Git - ffmpeg/blob - doc/APIchanges
lavu: add a framework for handling hwaccel frames
[ffmpeg] / doc / APIchanges
1 Never assume the API of libav* to be stable unless at least 1 month has passed
2 since the last major version increase.
3
4 The last version increases were:
5 libavcodec:    2015-08-28
6 libavdevice:   2015-08-28
7 libavfilter:   2015-08-28
8 libavformat:   2015-08-28
9 libavresample: 2015-08-28
10 libswscale:    2015-08-28
11 libavutil:     2015-08-28
12
13
14 API changes, most recent first:
15
16 2016-xx-xx - lavu 55.6.0
17   xxxxxxx buffer.h - Add av_buffer_pool_init2().
18   xxxxxxx hwcontext.h - Add a new installed header hwcontext.h with a new API
19                         for handling hwaccel frames.
20
21 2016-xx-xx - xxxxxxx - lavf 57.3.0 - avformat.h
22   Add AVFormatContext.opaque, io_open and io_close, allowing custom IO
23   for muxers and demuxers that open additional files.
24
25 2015-xx-xx - xxxxxxx - lavc 57.12.0 - avcodec.h
26   Add AVCodecDescriptor.profiles and avcodec_profile_name().
27
28 2015-xx-xx - xxxxxxx - lavc 57.11.0 - avcodec.h dirac.h
29   xxxxxxx - Add av_packet_add_side_data().
30   xxxxxxx - Add AVCodecContext.coded_side_data.
31   xxxxxxx - Add AVCPBProperties API.
32   xxxxxxx - Add a new public header dirac.h containing
33             av_dirac_parse_sequence_header()
34
35 2015-xx-xx - xxxxxxx - lavc 57.9.1 - avcodec.h
36   Deprecate rtp_callback without replacement, i.e. it won't be possible to
37   get image slices before the full frame is encoded any more. The libavformat
38   rtpenc muxer can still be used for RFC-2190 packetization.
39
40 2015-11-xx - xxxxxxx - lavc 57.9.0 - avcodec.h
41   Add AV_PKT_DATA_FALLBACK_TRACK for making fallback associations between
42   streams.
43
44 2015-11-xx - xxxxxxx - lavf 57.1.0 - avformat.h
45   Add av_stream_new_side_data().
46
47 2015-11-xx - xxxxxxx - lavu 55.3.0 - xtea.h
48     Add av_xtea_le_init and av_xtea_le_crypt
49
50 2015-11-xx - xxxxxxx - lavfi 6.1.0 - avfilter.h
51     Add a frame_rate field to AVFilterLink
52
53 2015-xx-xx - xxxxxxx - lavc 57.6.0 - avcodec.h
54
55 2015-xx-xx - lavc 57.7.0 - avcodec.h
56   xxxxxx - Deprecate av_free_packet(). Use av_packet_unref() as replacement,
57            it resets the packet in a more consistent way.
58   xxxxxx - Deprecate av_dup_packet(), it is a no-op for most cases.
59            Use av_packet_ref() to make a non-refcounted AVPacket refcounted.
60   xxxxxx - Add av_packet_alloc(), av_packet_clone(), av_packet_free().
61            They match the AVFrame functions with the same name.
62
63 2015-xx-xx - xxxxxxx - lavc 57.5.0 - avcodec.h
64   Add data and linesize array to AVSubtitleRect, to be used instead of
65   the ones from the embedded AVPicture.
66
67 2015-xx-xx - xxxxxxx - lavc 57.0.0 - qsv.h
68   Add an API for allocating opaque surfaces.
69
70 2015-xx-xx - xxxxxxx - lavu 55.2.0 - dict.h
71   Change return type of av_dict_copy() from void to int, so that a proper
72   error code can be reported.
73
74 2015-09-29 - 948f3c1 - lavc 57.0.0 - avcodec.h
75   Change type of AVPacket.duration from int to int64_t.
76
77 2015-09-18 - e3d4784 - lavc 57.2.0 - d3d11va.h
78   Add av_d3d11va_alloc_context(). This function must from now on be used for
79   allocating AVD3D11VAContext.
80
81 2015-09-07 - lavu 55.0.0
82   b8b5d82 - Change type of AVPixFmtDescriptor.flags from uint8_t to uint64_t.
83   6b3ef7f - Change type of AVComponentDescriptor fields from uint16_t to int
84             and drop bit packing.
85   2268db2 - Add step, offset, and depth to AVComponentDescriptor to replace
86             the deprecated step_minus1, offset_plus1, and depth_minus1.
87
88 2015-07-31 - lavu 54.17.0
89   7a7df34 - Add av_blowfish_alloc().
90   ae36545 - Add av_rc4_alloc().
91   5d8bea3 - Add av_xtea_alloc().
92   d9e8b47 - Add av_des_alloc().
93
94 2015-07-29 - 7e38340 - lavu 54.16.0 - hmac.h
95   Add AV_HMAC_SHA224 and AV_HMAC_SHA256.
96
97 2015-07-27 - lavc 56.35.0 - avcodec.h
98   7c6eb0a - Rename CODEC_FLAG* defines to AV_CODEC_FLAG*.
99   def9785 - Rename CODEC_CAP_* defines to AV_CODEC_CAP_*.
100   059a934 - Rename FF_INPUT_BUFFER_PADDING_SIZE and FF_MIN_BUFFER_SIZE
101             to AV_INPUT_BUFFER_PADDING_SIZE and AV_INPUT_BUFFER_MIN_SIZE.
102
103 2015-07-20 - 5d3addb - lavc 56.33.0 - avcodec.h
104   Add AV_PKT_DATA_QUALITY_FACTOR to export the quality value of an AVPacket.
105
106 2015-07-02 - 1316df7 - lavu 56.15.0
107   Add av_version_info().
108
109 2015-07-01 - 0d449c8 - lavfi 5.1.0 - version.h
110              0f87f9b - lavd 55.2.0 - version.h
111   Add library identification symbols, LIBAVFILTER_IDENT and LIBAVDEVICE_IDENT.
112
113 2015-06-07 - 252d620 - lavf 56.20.0 - avio.h
114   Add avio_put_str16be.
115
116 2015-05-13 - f7cafb5 - lavu 54.14.0 - cpu.h
117   Add AV_CPU_FLAG_AVXSLOW.
118
119 2015-05-13 - e7c5e17 - lavc 56.23.0
120   Add av_vda_default_init2.
121
122 2015-04-19 - c253340 - lavu 54.12.0
123   Add AV_LOG_TRACE for extremely verbose debugging.
124
125 2015-04-07 - 27f2746 - lavu 54.11.0
126   Add av_small_strptime().
127
128 2015-03-29 - 6fe2641 - lavc 56.22.0
129   Add FF_PROFILE_DTS_EXPRESS.
130
131 2015-03-29 - c484561 - lavu 54.10.0
132   Add AV_PIX_FMT_MMAL for MMAL hardware acceleration.
133
134 2015-02-19 - 31d2039 - lavc 56.13
135   Add width, height, coded_width, coded_height and format to
136   AVCodecParserContext.
137
138 2015-02-19 - 5b1d9ce - lavu 54.9.0
139   Add AV_PIX_FMT_QSV for QSV hardware acceleration.
140
141 2015-01-27 - 728685f - lavc 56.12.0, lavu 54.8.0 - avcodec.h, frame.h
142   Add AV_PKT_DATA_AUDIO_SERVICE_TYPE and AV_FRAME_DATA_AUDIO_SERVICE_TYPE for
143   storing the audio service type as side data.
144
145 2015-01-14 - e2ad0b6 - lavu 54.6.0 - imgutils.h
146   Add utility functions for image manipulation: av_image_get_buffer_size()
147   av_image_fill_arrays() and av_image_copy_to_buffer().
148
149 2014-12-25 - c220a60 - lavc 56.10.0 - vdpau.h
150   Add av_vdpau_get_surface_parameters().
151
152 2014-12-25 - 6c99c92 - lavc 56.9.0 - avcodec.h
153   Add AV_HWACCEL_FLAG_ALLOW_HIGH_DEPTH flag to av_vdpau_bind_context().
154
155 2014-12-25 - 57b6704 - lavc 56.8.0 - avcodec.h
156   Add AVCodecContext.sw_pix_fmt.
157
158 2014-11-07 - 1384df6 - lavf 56.06.3 - avformat.h
159   Add AVFormatContext.avoid_negative_ts.
160
161 2014-11-06 - 5e80fb7 - lavc 56.6.0 - vorbis_parser.h
162   Add a public API for parsing vorbis packets.
163
164 2014-10-24 - 1bd0bdc - lavu 54.5.0 - time.h
165   Add av_gettime_relative().
166
167 2014-10-15 - 7ea1b34 - lavc 56.5.0 - avcodec.h
168   Replace AVCodecContext.time_base used for decoding
169   with AVCodecContext.framerate.
170
171 2014-10-15 - d565fef1- lavc 56.4.0 - avcodec.h
172   Add AV_HWACCEL_FLAG_IGNORE_LEVEL flag to av_vdpau_bind_context().
173
174 2014-10-13 - 2df0c32 - lavc 56.03.0 - avcodec.h
175   Add AVCodecContext.initial_padding. Deprecate the use of AVCodecContext.delay
176   for audio encoding.
177
178 2014-10-08 - 5a419b2 - lavu 54.04.0 - pixdesc.h
179   Add API to return the name of frame and context color properties.
180
181 2014-10-06 - e3e158e - lavc 56.2.0 - vdpau.h
182   Add av_vdpau_bind_context(). This function should now be used for creating
183   (or resetting) a AVVDPAUContext instead of av_vdpau_alloc_context().
184
185 2014-08-25 - b263f8f - lavf 56.03.0 - avformat.h
186   Add AVFormatContext.max_ts_probe.
187
188 ------------------------------8<-------------------------------------
189                    11 branch was cut here
190 ----------------------------->8--------------------------------------
191
192 2014-08-28 - 9301486 - lavc 56.1.0 - avcodec.h
193   Add AV_PKT_DATA_STEREO3D to export container-level stereo3d information.
194
195 2014-08-13 - 8ddc326 - lavu 54.03.0 - mem.h
196   Add av_strndup().
197
198 2014-08-13 - a8c104a - lavu 54.02.0 - opt.h
199   Add av_opt_get_dict_val/set_dict_val with AV_OPT_TYPE_DICT to support
200   dictionary types being set as options.
201
202 2014-08-13 - afbd4b8 - lavf 56.01.0 - avformat.h
203   Add AVFormatContext.event_flags and AVStream.event_flags for signaling to
204   the user when events happen in the file/stream.
205
206 2014-08-10 - fb1ddcd - lavr 2.1.0 - avresample.h
207   Add avresample_convert_frame() and avresample_config().
208
209 2014-08-10 - fb1ddcd - lavu 54.1.0 - error.h
210   Add AVERROR_INPUT_CHANGED and AVERROR_OUTPUT_CHANGED.
211
212 2014-08-08 - d35b94f - lavc 55.57.4 - avcodec.h
213   Deprecate FF_IDCT_XVIDMMX define and xvidmmx idct option.
214   Replaced by FF_IDCT_XVID and xvid respectively.
215
216 2014-08-07 - bb78903 - lsws 2.1.3 - swscale.h
217   sws_getCachedContext is not going to be removed in the future.
218
219 2014-08-07 - ad1ee5f - lavc 55.57.3 - avcodec.h
220   reordered_opaque is not going to be removed in the future.
221
222 2014-08-04 - e9abafc - lavu 53.22.0 - pixfmt.h
223   Add AV_PIX_FMT_YA16 pixel format for 16 bit packed gray with alpha.
224
225 2014-08-04 - e96c3b8 - lavu 53.21.1 - avstring.h
226   Rename AV_PIX_FMT_Y400A to AV_PIX_FMT_YA8 to better identify the format.
227   An alias pixel format and color space name are provided for compatibility.
228
229 2014-08-04 - d2962e9 - lavu 53.21.0 - pixdesc.h
230   Support name aliases for pixel formats.
231
232 2014-08-03 - 1ef9e83 - lavc 55.57.2 - avcodec.h
233 2014-08-03 - 1ef9e83 - lavu 53.20.0 - frame.h
234   Deprecate AVCodecContext.dtg_active_format and use side-data instead.
235
236 2014-08-03 - 9f17685 - lavc 55.57.1 - avcodec.h
237   Deprecate unused FF_IDCT_IPP define and ipp avcodec option.
238   Deprecate unused FF_DEBUG_PTS define and pts avcodec option.
239   Deprecate unused FF_CODER_TYPE_DEFLATE define and deflate avcodec option.
240   Deprecate unused FF_DCT_INT define and int avcodec option.
241   Deprecate unused avcodec option scenechange_factor.
242
243 2014-07-29 - 69e7336 - lavu 53.19.0 - avstring.h
244   Make name matching function from lavf public as av_match_name().
245
246 2014-07-28 - c5fca01 - lavc 55.57.0 - avcodec.h
247   Add AV_CODEC_PROP_REORDER to mark codecs supporting frame reordering.
248
249 2014-07-09 - a54f03b - lavu 53.18.0 - display.h
250   Add av_display_matrix_flip() to flip the transformation matrix.
251
252 2014-07-09 - f6ee61f - lavc 55.56.0 - dv_profile.h
253   Add a public API for DV profile handling.
254
255 2014-06-20 - 9e500ef - lavu 53.17.0 - imgutils.h
256   Add av_image_check_sar().
257
258 2014-06-20 - 874390e - lavc 55.55.0 - avcodec.h
259   Add av_packet_rescale_ts() to simplify timestamp conversion.
260
261 2014-06-18 - 194be1f - lavf 55.20.0 - avformat.h
262   The proper way for providing a hint about the desired timebase to the muxers
263   is now setting AVStream.time_base, instead of AVStream.codec.time_base as was
264   done previously. The old method is now deprecated.
265
266 2014-06-01 - 0957b27 - lavc 55.54.0 - avcodec.h
267   Add AVCodecContext.side_data_only_packets to allow encoders to output packets
268   with only side data. This option may become mandatory in the future, so all
269   users are recommended to update their code and enable this option.
270
271 2014-06-01 - 8c02adc - lavu 53.16.0 - frame.h, pixfmt.h
272   Move all color-related enums (AVColorPrimaries, AVColorSpace, AVColorRange,
273   AVColorTransferCharacteristic, and AVChromaLocation) inside lavu.
274   Add AVFrame fields for them on the next lavu major bump.
275
276 2014-05-28 - b2d4565 - lavr 1.3.0 - avresample.h
277   Add avresample_max_output_samples
278
279 2014-05-28 - 6d21259 - lavf 55.19.0 - avformat.h
280   Add strict_std_compliance and related AVOptions to support experimental
281   muxing.
282
283 2014-05-20 - c23c96b - lavf 55.18.0 - avformat.h
284   Add av_stream_get_side_data() to access stream-level side data
285   in the same way as av_packet_get_side_data().
286
287 2014-05-19 - bddd8cb - lavu 53.15.0 - frame.h, display.h
288   Add AV_FRAME_DATA_DISPLAYMATRIX for exporting frame-level
289   spatial rendering on video frames for proper display.
290
291 2014-05-19 - bddd8cb - lavc 55.53.0 - avcodec.h
292   Add AV_PKT_DATA_DISPLAYMATRIX for exporting packet-level
293   spatial rendering on video frames for proper display.
294
295 2014-05-19 - a312f71 - lavf 55.17.1 - avformat.h
296   Deprecate AVStream.pts and the AVFrac struct, which was its only use case.
297   Those fields were poorly defined and not meant to be public, so there is
298   no replacement for them.
299
300 2014-05-18 - fd05602 - lavc 55.52.0 - avcodec.h
301   Add avcodec_free_context(). From now on it should be used for freeing
302   AVCodecContext.
303
304 2014-05-15 - 0c1959b - lavf 55.17.0 - avformat.h
305   Add AVFMT_FLAG_BITEXACT flag. Muxers now use it instead of checking
306   CODEC_FLAG_BITEXACT on the first stream.
307
308 2014-05-11 - 66e6c8a - lavu 53.14.0 - pixfmt.h
309   Add AV_PIX_FMT_VDA for new-style VDA acceleration.
310
311 2014-05-01 - a2941c8 - lavc 55.50.3 - avcodec.h
312   Deprecate CODEC_FLAG_MV0. It is replaced by the flag "mv0" in the
313   "mpv_flags" private option of the mpegvideo encoders.
314
315 2014-05-01 - 6484149 - lavc 55.50.2 - avcodec.h
316   Deprecate CODEC_FLAG_GMC. It is replaced by the "gmc" private option of the
317   libxvid encoder.
318
319 2014-05-01 - b2c3171 - lavc 55.50.1 - avcodec.h
320   Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the
321   "mpv_flags" private option of the mpegvideo encoders.
322
323 2014-05-01 - 5fcceda - avcodec.h
324   Deprecate CODEC_FLAG_INPUT_PRESERVED. Its functionality is replaced by passing
325   reference-counted frames to encoders.
326
327 2014-04-28 - ed4b757 - lavc 55.50.0 - dxva2.h
328   Add FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO for old Intel GPUs.
329
330 2014-04-22 - 502512e - lavu 53.13.0 - avutil.h
331   Add av_get_time_base_q().
332
333 2014-04-17 - 0983d48 - lavu 53.12.0 - crc.h
334   Add AV_CRC_16_ANSI_LE crc variant.
335
336 2014-04-07 - 8b17243 - lavu 53.11.0 - pixfmt.h
337   Add AV_PIX_FMT_YVYU422 pixel format.
338
339 2014-04-04 - 8542f9c - lavu 53.10.0 - replaygain.h
340   Full scale for peak values is now 100000 (instead of UINT32_MAX) and values
341   may overflow.
342
343 2014-04-03 - 7763118 - lavu 53.09.0 - log.h
344   Add AV_LOG(c) macro to have 256 color debug messages.
345
346 2014-03-24 - d161ae0 - lavu 53.08.0 - frame.h
347   Add av_frame_remove_side_data() for removing a single side data
348   instance from a frame.
349
350 2014-03-24 - 5a7e35d - lavu 53.07.0 - frame.h, replaygain.h
351   Add AV_FRAME_DATA_REPLAYGAIN for exporting replaygain tags.
352   Add a new header replaygain.h with the AVReplayGain struct.
353
354 2014-03-24 - 5a7e35d - lavc 55.36.0 - avcodec.h
355   Add AV_PKT_DATA_REPLAYGAIN for exporting replaygain tags.
356
357 2014-03-24 - 25b3258 - lavf 55.13.0 - avformat.h
358   Add AVStream.side_data and AVStream.nb_side_data for exporting stream-global
359   side data (e.g. replaygain tags, video rotation)
360
361 2014-03-24 - 0e2c3ee - lavc 55.35.0 - avcodec.h
362   Give the name AVPacketSideData to the previously anonymous struct used for
363   AVPacket.side_data.
364
365 2014-03-16 - 1481d24 - lavu 53.06.0 - pixfmt.h
366   Add RGBA64 pixel format and variants.
367
368 2014-02-24 - 1155fd0 - lavu 53.05.0 - frame.h
369   Add av_frame_copy() for copying the frame data.
370
371 2014-02-22 - 7e86c27 - lavr 1.2.0 - avresample.h
372   Add avresample_is_open() for checking whether a resample context is open.
373
374 2014-02-19 - c3ecd96 - lavu 53.04.0  - opt.h
375   Add AV_OPT_FLAG_EXPORT and AV_OPT_FLAG_READONLY to mark options meant (only)
376   for reading.
377
378 2014-02-19 - 6bb8720 - lavu 53.03.01 - opt.h
379   Deprecate unused AV_OPT_FLAG_METADATA.
380
381 ------------------------------8<-------------------------------------
382                    10 branch was cut here
383 ----------------------------->8--------------------------------------
384
385 2014-02-15 - c98f316 - lavu 53.3.0 - frame.h
386   Add AV_FRAME_DATA_DOWNMIX_INFO value to the AVFrameSideDataType enum and
387   downmix_info.h API, which identify downmix-related metadata.
388
389 2014-02-04 - d9ae103 - lavf 55.11.0 - avformat.h
390   Add AVFormatContext.max_interleave_delta for controlling amount of buffering
391   when interleaving.
392
393 2014-01-20 - 93c553c - lavc 55.32.1 - avcodec.h
394   Edges are not required anymore on video buffers allocated by get_buffer2()
395   (i.e. as if the CODEC_FLAG_EMU_EDGE flag was always on). Deprecate
396   CODEC_FLAG_EMU_EDGE and avcodec_get_edge_width().
397
398 2014-01-05 - 5b4797a - lavu 53.2.0 - frame.h
399   Add AV_FRAME_DATA_MATRIXENCODING value to the AVFrameSideDataType enum, which
400   identifies AVMatrixEncoding data.
401
402 2014-01-05 - 5c437fb - lavu 53.1.0 - channel_layout.h
403   Add values for various Dolby flags to the AVMatrixEncoding enum.
404
405 2013-12-20 - 2a41826 - lavc 55.30.0 - avcodec.h
406   Add HEVC profiles
407
408 2013-12-11 - b9fb59d,9431356,d7b3ee9 - lavc 55.28.1 - avcodec.h
409   av_frame_alloc(), av_frame_unref() and av_frame_free() now can and should be
410   used instead of avcodec_alloc_frame(), avcodec_get_frame_defaults() and
411   avcodec_free_frame() respectively. The latter three functions are deprecated.
412
413 2013-12-09 - 7e244c6- - lavu 52.20.0 - frame.h
414   Add AV_FRAME_DATA_STEREO3D value to the AVFrameSideDataType enum and
415   stereo3d.h API, that identify codec-independent stereo3d information.
416
417 2013-11-26 - 1eaac1d- - lavu 52.19.0 - frame.h
418   Add AV_FRAME_DATA_A53_CC value to the AVFrameSideDataType enum, which
419   identifies ATSC A53 Part 4 Closed Captions data.
420
421 2013-11-14 - cce3e0a - lavu 52.18.0 - mem.h
422   Move av_fast_malloc() and av_fast_realloc() for libavcodec to libavutil.
423
424 2013-11-14 - 8941971 - lavc 55.27.0 - avcodec.h
425   Deprecate AVCodecContext.error_rate, it is replaced by the 'error_rate'
426   private option of the mpegvideo encoder family.
427
428 2013-11-14 - 728c465 - lavc 55.26.0 - vdpau.h
429   Add av_vdpau_get_profile().
430   Add av_vdpau_alloc_context(). This function must from now on be
431   used for allocating AVVDPAUContext.
432
433 2013-11-04 - cd8f772 - lavc 55.25.0 - avcodec.h
434   Add ITU-R BT.2020 and other not yet included values to color primaries,
435   transfer characteristics and colorspaces.
436
437 2013-10-31 - 28096e0 - lavu 52.17.0 - frame.h
438   Add AVFrame.flags and AV_FRAME_FLAG_CORRUPT.
439
440 2013-09-28 - 0767bfd - lavfi 3.11.0 - avfilter.h
441   Add AVFilterGraph.execute and AVFilterGraph.opaque for custom slice threading
442   implementations.
443
444 2013-09-21 - e208e6d - lavu 52.16.0 - pixfmt.h
445   Add interleaved 4:2:2 8/10-bit formats AV_PIX_FMT_NV16 and
446   AV_PIX_FMT_NV20.
447
448 2013-09-16 - 3feb3d6 - lavu 52.15.0 - mem.h
449   Add av_reallocp.
450
451 2013-08-10 - 5a9a9d4 - lavc 55.16.0 - avcodec.h
452   Extend AVPacket API with av_packet_unref, av_packet_ref,
453   av_packet_move_ref, av_packet_copy_props, av_packet_free_side_data.
454
455 2013-08-05 - f824535 - lavc 55.13.0 - avcodec.h
456   Deprecate the bitstream-related members from struct AVVDPAUContext.
457   The bistream buffers no longer need to be explicitly freed.
458
459 2013-08-05 - 549294f - lavc 55.12.0 - avcodec.h
460   Deprecate the CODEC_CAP_HWACCEL_VDPAU codec capability. Use CODEC_CAP_HWACCEL
461   and select the AV_PIX_FMT_VDPAU format with get_format() instead.
462
463 2013-08-05 - a0ad5d0 - lavu 52.14.0 - pixfmt.h
464   Deprecate AV_PIX_FMT_VDPAU_*. Use AV_PIX_FMT_VDPAU instead.
465
466 2013-08-02 - a8b1927 - lavc 55.11.0 - avcodec.h
467   Add output_picture_number to AVCodecParserContext.
468
469 2013-06-24 - 95d5246 - lavc 55.10.0 - avcodec.h
470   Add MPEG-2 AAC profiles
471
472 2013-06-04 - fc962d4 - lavu 52.13.0 - mem.h
473   Add av_realloc_array and av_reallocp_array
474
475 2013-05-24 - 129bb23 - lavfi 3.10.0 - avfilter.h
476   Add support for slice multithreading to lavfi. Filters supporting threading
477   are marked with AVFILTER_FLAG_SLICE_THREADS.
478   New fields AVFilterContext.thread_type, AVFilterGraph.thread_type and
479   AVFilterGraph.nb_threads (accessible directly or through AVOptions) may be
480   used to configure multithreading.
481
482 2013-05-24 - 2a6eaea - lavu 52.12.0 - cpu.h
483   Add av_cpu_count() function for getting the number of logical CPUs.
484
485 2013-05-24 - b493847 - lavc 55.7.0 - avcodec.h
486   Add picture_structure to AVCodecParserContext.
487
488 2013-05-15 - e6c4ac7 - lavu 52.11.0 - pixdesc.h
489   Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*.
490
491 2013-04-03 - 507b1e4 - lavc 55.4.0 - avcodec.h
492   Add field_order to AVCodecParserContext.
493
494 2013-04-19 - 5e83d9a - lavc 55.2.0 - avcodec.h
495   Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output.
496
497 2013-04-11 - lavfi 3.8.0
498   38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate
499             avfilterhraph.h, user applications should include just avfilter.h
500   bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and
501             avfilter_graph_add_filter().
502   1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the
503             filter.
504   48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter().
505   1ba95a9 - Add avfilter_init_dict().
506   7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags.
507   7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs.
508   fa2a34c - Add avfilter_next(), deprecate av_filter_next().
509             Deprecate avfilter_uninit().
510
511 2013-04-09 - lavfi 3.7.0 - avfilter.h
512   b439c99 - Add AVFilter.priv_class for exporting filter options through the
513             AVOptions API in the similar way private options work in lavc and lavf.
514   8114c10 - Add avfilter_get_class().
515   Switch all filters to use AVOptions.
516
517 2013-03-19 - 2c328a9 - lavu 52.9.0 - pixdesc.h
518   Add av_pix_fmt_count_planes() function for counting planes in a pixel format.
519
520 2013-03-16 - 42c7c61 - lavfi 3.6.0
521   Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count.
522
523 2013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.0, lavf 55.0.0,
524 lavd 54.0.0, lavfi 3.5.0
525   8e401db, 1cec062 - add a new API for reference counted buffers and buffer
526                      pools (new header libavutil/buffer.h).
527   1afddbe - add AVPacket.buf to allow reference counting for the AVPacket data.
528             Add av_packet_from_data() function for constructing packets from
529             av_malloc()ed data.
530   7ecc2d4 - move AVFrame from lavc to lavu (new header libavutil/frame.h), add
531             AVFrame.buf/extended_buf to allow reference counting for the AVFrame
532             data. Add new API for working with reference-counted AVFrames.
533   759001c - add the refcounted_frames field to AVCodecContext to make audio and
534             video decoders return reference-counted frames. Add get_buffer2()
535             callback to AVCodecContext which allocates reference-counted frames.
536             Add avcodec_default_get_buffer2() as the default get_buffer2()
537             implementation.
538             Deprecate AVCodecContext.get_buffer() / release_buffer() /
539             reget_buffer(), avcodec_default_get_buffer(),
540             avcodec_default_reget_buffer(), avcodec_default_release_buffer().
541             Remove avcodec_default_free_buffers(), which should not have ever
542             been called from outside of lavc.
543             Deprecate the following AVFrame fields:
544                 * base -- is now stored in AVBufferRef
545                 * reference, type, buffer_hints -- are unnecessary in the new API
546                 * hwaccel_picture_private, owner, thread_opaque -- should not
547                   have been acessed from outside of lavc
548                 * qscale_table, qstride, qscale_type, mbskip_table, motion_val,
549                   mb_type, dct_coeff, ref_index -- mpegvideo-specific tables,
550                   which are not exported anymore.
551   7e35037 - switch libavfilter to use AVFrame instead of AVFilterBufferRef. Add
552             av_buffersrc_add_frame(), deprecate av_buffersrc_buffer().
553             Add av_buffersink_get_frame() and av_buffersink_get_samples(),
554             deprecate av_buffersink_read() and av_buffersink_read_samples().
555             Deprecate AVFilterBufferRef and all functions for working with it.
556
557 2013-03-17 - 12c5c1d - lavu 52.8.0 - avstring.h
558   Add av_isdigit, av_isgraph, av_isspace, av_isxdigit.
559
560 2013-02-23 - 9f12235 - lavfi 3.4.0 - avfiltergraph.h
561   Add resample_lavr_opts to AVFilterGraph for setting libavresample options
562   for auto-inserted resample filters.
563
564 2013-01-25 - 38c1466 - lavu 52.7.0 - dict.h
565   Add av_dict_parse_string() to set multiple key/value pairs at once from a
566   string.
567
568 2013-01-25 - b85a5e8 - lavu 52.6.0 - avstring.h
569   Add av_strnstr()
570
571 2013-01-15 - 8ee288d - lavu 52.5.0 - hmac.h
572   Add AVHMAC.
573
574 2013-01-13 - 44e065d - lavc 54.36.0 - vdpau.h
575   Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding.
576
577 2013-01-12 - 169fb94 - lavu 52.4.0 - pixdesc.h
578   Add AV_PIX_FMT_VDPAU flag.
579
580 2013-01-07 - 074a00d - lavr 1.1.0
581   Add avresample_set_channel_mapping() for input channel reordering,
582   duplication, and silencing.
583
584 ------------------------------8<-------------------------------------
585                    9 branch was cut here
586 ----------------------------->8--------------------------------------
587
588 2012-12-29 - lavu 52.3.0
589   d8fd06c - Add av_basename() and av_dirname().
590   c1a02e8 - Add av_pix_fmt_get_chroma_sub_sample and deprecate
591             avcodec_get_chroma_sub_sample.
592
593 2012-11-11 - 5980f5d - lavu 52.2.0 - audioconvert.h
594   Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated.
595
596 2012-11-05 - dfde8a3 - lavu 52.1.0 - intmath.h
597   Add av_ctz() for trailing zero bit count
598
599 2012-10-21 - a893655 - lavu 51.45.0 - error.h
600   Add AVERROR_EXPERIMENTAL
601
602 2012-10-12 - d2fcb35 - lavu 51.44.0 - pixdesc.h
603   Add functions for accessing pixel format descriptors.
604   Accessing the av_pix_fmt_descriptors array directly is now
605   deprecated.
606
607 2012-10-11 - 9a92aea - lavu 51.43.0 - aes.h, md5.h, sha.h, tree.h
608   Add functions for allocating the opaque contexts for the algorithms,
609   deprecate the context size variables.
610
611 2012-10-10 - b522000 - lavf 54.18.0 - avio.h
612   Add avio_closep to complement avio_close.
613
614 2012-10-08 - 78071a1 - lavu 51.42.0 - pixfmt.h
615   Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*.
616   To provide backwards compatibility, PixelFormat is now #defined as
617   AVPixelFormat.
618   Note that this can break user code that includes pixfmt.h and uses the
619   'PixelFormat' identifier. Such code should either #undef PixelFormat
620   or stop using the PixelFormat name.
621
622 2012-10-05 - e7ba5b1 - lavr 1.0.0 - avresample.h
623   Data planes parameters to avresample_convert() and
624   avresample_read() are now uint8_t** instead of void**.
625   Libavresample is now stable.
626
627 2012-09-24 - a42aada - lavc 54.28.0 - avcodec.h
628   Add avcodec_free_frame(). This function must now
629   be used for freeing an AVFrame.
630
631 2012-09-12 - 8919fee - lavu 51.41.0 - audioconvert.h
632   Added AV_CH_LOW_FREQUENCY_2 channel mask value.
633
634 2012-09-04 - 686a329 - lavu 51.40.0 - opt.h
635   Reordered the fields in default_val in AVOption, changed which
636   default_val field is used for which AVOptionType.
637
638 2012-08-30 - a231832 - lavc 54.26.1 - avcodec.h
639   Add codec descriptor properties AV_CODEC_PROP_LOSSY and
640   AV_CODEC_PROP_LOSSLESS.
641
642 2012-08-18 - lavc 54.26 - avcodec.h
643   Add codec descriptors for accessing codec properties without having
644   to refer to a specific decoder or encoder.
645
646   c223d79 - Add an AVCodecDescriptor struct and functions
647             avcodec_descriptor_get() and avcodec_descriptor_next().
648   51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY.
649   91e59fe - Add avcodec_descriptor_get_by_name().
650
651
652 2012-08-08 - 1d9c2dc - lavu 51.39 - avutil.h
653   Don't implicitly include libavutil/common.h in avutil.h
654
655 2012-08-08 - 987170c - lavu 51.38 - dict.h
656   Add av_dict_count().
657
658 2012-08-07 - 104e10f - lavc 54.25 - avcodec.h
659   Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*.
660   To provide backwards compatibility, CodecID is now #defined as AVCodecID.
661   Note that this can break user code that includes avcodec.h and uses the
662   'CodecID' identifier. Such code should either #undef CodecID or stop using the
663   CodecID name.
664
665 2012-08-03 - 239fdf1 - lavu 51.37.1 - cpu.h
666                        lsws 2.1.1   - swscale.h
667   Rename AV_CPU_FLAG_MMX2  ---> AV_CPU_FLAG_MMXEXT.
668   Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT.
669
670 2012-07-29 - 681ed00 - lavf 54.13.0 - avformat.h
671   Add AVFMT_FLAG_NOBUFFER for low latency use cases.
672
673 2012-07-20 - b70d89a - lavfi 3.0.0 - avfilter.h
674   Add avfilter_unref_bufferp().
675
676 2012-07-10 - 5fade8a - lavu 51.37.0
677   Add av_malloc_array() and av_mallocz_array()
678
679 2012-06-22 - d3d3a32 - lavu 51.34.0
680   Add av_usleep()
681
682 2012-06-20 - ae0a301 - lavu 51.33.0
683   Move av_gettime() to libavutil, add libavutil/time.h
684
685 2012-06-09 - 3971be0 - lavr 0.0.3
686   Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing.
687
688 2012-06-12 - 9baeff9 - lavfi 2.23.0 - avfilter.h
689   Add AVFilterContext.nb_inputs/outputs. Deprecate
690   AVFilterContext.input/output_count.
691
692 2012-06-12 - 84b9fbe - lavfi 2.22.0 - avfilter.h
693   Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those
694   should now be used instead of accessing AVFilterPad members
695   directly.
696
697 2012-06-12 - b0f0dfc - lavu 51.32.0 - audioconvert.h
698   Add av_get_channel_layout_channel_index(), av_get_channel_name()
699   and av_channel_layout_extract_channel().
700
701 2012-05-25 - 154486f - lavu 51.31.0 - opt.h
702   Add av_opt_set_bin()
703
704 2012-05-26 - e9cef89 - lavf 54.3.0
705   Add AVFMT_TS_NONSTRICT format flag to indicate that a muxer supports
706   non-increasing monotone timestamps.
707
708 2012-05-15 - lavfi 2.17.0
709   Add support for audio filters
710   ac71230/a2cd9be - add video/audio buffer sink in a new installed
711                     header buffersink.h
712   720c6b7 - add av_buffersrc_write_frame(), deprecate
713             av_vsrc_buffer_add_frame()
714   ab16504 - add avfilter_copy_buf_props()
715   9453c9e - add extended_data to AVFilterBuffer
716   1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays()
717
718 2012-05-09 - lavu 51.30.0 - samplefmt.h
719   142e740 - add av_samples_copy()
720   6d7f617 - add av_samples_set_silence()
721
722 2012-05-09 - a5117a2 - lavc 54.13.1
723   For audio formats with fixed frame size, the last frame
724   no longer needs to be padded with silence, libavcodec
725   will handle this internally (effectively all encoders
726   behave as if they had CODEC_CAP_SMALL_LAST_FRAME set).
727
728 2012-05-07 - 828bd08 - lavc 54.13.0 - avcodec.h
729   Add sample_rate and channel_layout fields to AVFrame.
730
731 2012-05-01 - 4010d72 - lavr 0.0.1
732   Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8.
733
734 2012-04-25 - 3527a73 - lavu 51.29.0 - cpu.h
735   Add av_parse_cpu_flags()
736
737 2012-04-24 - c8af852 - lavr 0.0.0
738   Add libavresample audio conversion library
739
740 2012-04-20 - 0c0d1bc - lavu 51.28.0 - audio_fifo.h
741   Add audio FIFO functions:
742     av_audio_fifo_free()
743     av_audio_fifo_alloc()
744     av_audio_fifo_realloc()
745     av_audio_fifo_write()
746     av_audio_fifo_read()
747     av_audio_fifo_drain()
748     av_audio_fifo_reset()
749     av_audio_fifo_size()
750     av_audio_fifo_space()
751
752 2012-04-14 - lavfi 2.16.0 - avfiltergraph.h
753   d7bcc71 Add avfilter_graph_parse2().
754   91d3cbe Add avfilter_inout_alloc() and avfilter_inout_free().
755
756 2012-04-08 - 4d693b0 - lavu 51.27.0 - samplefmt.h
757   Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()
758
759 2012-04-05 - 5cc51a5 - lavu 51.26.0 - audioconvert.h
760   Add av_get_default_channel_layout()
761
762 2012-03-20 - 3c90cc2 - lavfo 54.2.0
763   Deprecate av_read_packet(), use av_read_frame() with
764   AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags
765
766 2012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h
767   Add av_set_cpu_flags_mask().
768
769 2012-03-05 - lavc 54.8.0
770   6699d07 Add av_get_exact_bits_per_sample()
771   9524cf7 Add av_get_audio_frame_duration()
772
773 2012-03-04 - 44fe77b - lavc 54.7.0 - avcodec.h
774   Add av_codec_is_encoder/decoder().
775
776 2012-03-01 - 442c132 - lavc 54.3.0 - avcodec.h
777   Add av_packet_shrink_side_data.
778
779 2012-02-29 - dd2a4bc - lavf 54.2.0 - avformat.h
780   Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC,
781   used for dealing with attached pictures/cover art.
782
783 2012-02-25 - c9bca80 - lavu 51.24.0 - error.h
784   Add AVERROR_UNKNOWN
785   NOTE: this was backported to 0.8
786
787 2012-02-20 - e9cda85 - lavc 54.2.0
788   Add duration field to AVCodecParserContext
789
790 2012-02-20 - 0b42a93 - lavu 51.23.1 - mathematics.h
791   Add av_rescale_q_rnd()
792
793 2012-02-08 - 38d5533 - lavu 51.22.1 - pixdesc.h
794   Add PIX_FMT_PSEUDOPAL flag.
795
796 2012-02-08 - 52f82a1 - lavc 54.01.0
797   Add avcodec_encode_video2() and deprecate avcodec_encode_video().
798
799 2012-02-01 - 316fc74 - lavc 54.01.0
800   Add av_fast_padded_malloc() as alternative for av_realloc() when aligned
801   memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZE
802   zero-padded bytes at the end.
803
804 2012-01-31 - dd6d3b0 - lavf 54.01.0
805   Add avformat_get_riff_video_tags() and avformat_get_riff_audio_tags().
806   NOTE: this was backported to 0.8
807
808 2012-01-31 - af08d9a - lavc 54.01.0
809   Add avcodec_is_open() function.
810   NOTE: this was backported to 0.8
811
812 2012-01-30 - 8b93312 - lavu 51.22.0 - intfloat.h
813   Add a new installed header libavutil/intfloat.h with int/float punning
814   functions.
815   NOTE: this was backported to 0.8
816
817 2012-01-25 - lavf 53.22.0
818   f1caf01 Allow doing av_write_frame(ctx, NULL) for flushing possible
819           buffered data within a muxer. Added AVFMT_ALLOW_FLUSH for
820           muxers supporting it (av_write_frame makes sure it is called
821           only for muxers with this flag).
822
823 ------------------------------8<-------------------------------------
824                    0.8 branch was cut here
825 ----------------------------->8--------------------------------------
826
827 2012-01-15 - lavc 53.34.0
828   New audio encoding API:
829   b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio
830           encoders.
831   5ee5fa0 Add avcodec_fill_audio_frame() as a convenience function.
832   b2c75b6 Add avcodec_encode_audio2() and deprecate avcodec_encode_audio().
833           Add AVCodec.encode2().
834
835 2012-01-12 - 3167dc9 - lavfi 2.15.0
836   Add a new installed header -- libavfilter/version.h -- with version macros.
837
838 2011-01-03 - b73ec05 - lavu 51.21.0
839   Add av_popcount64
840
841 2011-12-25 - lavfi 2.14.0
842   e1d9dbf Add a new installed header - buffersrc.h
843   It contains a new function av_buffersrc_buffer() that allows passing
844   frames to the 'buffer' filter, but unlike av_vsrc_buffer_add_frame()
845   it allows for direct rendering.
846   1c9e340 Add avfilter_copy_frame_props() for copying properties from
847   AVFrame to AVFilterBufferRef.
848
849 2011-12-25 - lavc 53.31.0
850   Add the following new fields to AVFrame:
851     b58dbb5 sample_aspect_ratio
852     3a2ddf7 width, height
853     8a4a5f6 format
854
855 2011-12-18 - 8400b12 - lavc 53.28.1
856   Deprecate AVFrame.age. The field is unused.
857
858 2011-12-12 - 5266045 - lavf 53.17.0
859   Add avformat_close_input().
860   Deprecate av_close_input_file() and av_close_input_stream().
861
862 2011-12-09 - b2890f5 - lavu 51.20.0 - audioconvert.h
863   Expand the channel layout list.
864
865 2011-12-02 - 0eea212 - lavc 53.25.0
866   Add nb_samples and extended_data fields to AVFrame.
867   Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
868   Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
869   avcodec_decode_audio4() writes output samples to an AVFrame, which allows
870   audio decoders to use get_buffer().
871
872 2011-12-04 - 560f773 - lavc 53.24.0
873   Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
874   Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
875   Change AVCodecContext.error[4] to [8] at next major bump.
876   Add AV_NUM_DATA_POINTERS to simplify the bump transition.
877
878 2011-11-24 - lavu 51.19.0
879   bd97b2e - add planar RGB pixel formats
880   6b0768e - add PIX_FMT_PLANAR and PIX_FMT_RGB pixel descriptions
881
882 2011-11-23 - bbb46f3 - lavu 51.18.0
883   Add av_samples_get_buffer_size(), av_samples_fill_arrays(), and
884   av_samples_alloc(), to samplefmt.h.
885
886 2011-11-23 - 8889cc4 - lavu 51.17.0
887   Add planar sample formats and av_sample_fmt_is_planar() to samplefmt.h.
888
889 2011-11-19 - f3a29b7 - lavc 53.21.0
890   Move some AVCodecContext fields to a new private struct, AVCodecInternal,
891   which is accessed from a new field, AVCodecContext.internal.
892   - fields moved:
893       AVCodecContext.internal_buffer       --> AVCodecInternal.buffer
894       AVCodecContext.internal_buffer_count --> AVCodecInternal.buffer_count
895       AVCodecContext.is_copy               --> AVCodecInternal.is_copy
896
897 2011-11-16 - 6270671 - lavu 51.16.0
898   Add av_timegm()
899
900 2011-11-13 - lavf 53.15.0
901   New interrupt callback API, allowing per-AVFormatContext/AVIOContext
902   interrupt callbacks.
903   6aa0b98 Add AVIOInterruptCB struct and the interrupt_callback field to
904           AVFormatContext.
905   1dee0ac Add avio_open2() with additional parameters. Those are
906           an interrupt callback and an options AVDictionary.
907           This will allow passing AVOptions to protocols after lavf
908           54.0.
909
910 2011-11-06 - ba04ecf - lavu 51.14.0
911   Add av_strcasecmp() and av_strncasecmp() to avstring.h.
912
913 2011-11-06 - 07b172f - lavu 51.13.0
914   Add av_toupper()/av_tolower()
915
916 2011-11-05 - b6d08f4 - lavf 53.13.0
917   Add avformat_network_init()/avformat_network_deinit()
918
919 2011-10-27 - 512557b - lavc 53.15.0
920   Remove avcodec_parse_frame.
921   Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY.
922
923 2011-10-19 - 569129a - lavf 53.10.0
924   Add avformat_new_stream(). Deprecate av_new_stream().
925
926 2011-10-13 - b631fba - lavf 53.9.0
927   Add AVFMT_NO_BYTE_SEEK AVInputFormat flag.
928
929 2011-10-12 - lavu 51.12.0
930   AVOptions API rewrite.
931
932   - 145f741 FF_OPT_TYPE* renamed to AV_OPT_TYPE_*
933   - new setting/getting functions with slightly different semantics:
934         dac66da av_set_string3 -> av_opt_set
935                 av_set_double  -> av_opt_set_double
936                 av_set_q       -> av_opt_set_q
937                 av_set_int     -> av_opt_set_int
938
939         41d9d51 av_get_string  -> av_opt_get
940                 av_get_double  -> av_opt_get_double
941                 av_get_q       -> av_opt_get_q
942                 av_get_int     -> av_opt_get_int
943
944   - 8c5dcaa trivial rename av_next_option -> av_opt_next
945   - 641c7af new functions - av_opt_child_next, av_opt_child_class_next
946     and av_opt_find2()
947
948 2011-09-03 - fb4ca26 - lavc 53.10.0
949                        lavf 53.6.0
950                        lsws  2.1.0
951   Add {avcodec,avformat,sws}_get_class().
952
953 2011-09-03 - c11fb82 - lavu 51.10.0
954   Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function.
955
956 2011-08-26 - lavu 51.9.0
957   - f2011ed Add av_fifo_peek2(), deprecate av_fifo_peek().
958   - add41de..abc78a5 Do not include intfloat_readwrite.h,
959     mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h.
960
961 2011-08-16 - 48f9e45 - lavf 53.4.0
962   Add avformat_query_codec().
963
964 2011-08-16 - bca06e7 - lavc 53.8.0
965   Add avcodec_get_type().
966
967 2011-08-06 - 2f63440 - lavf 53.4.0
968   Add error_recognition to AVFormatContext.
969
970 2011-08-02 - 9d39cbf - lavc 53.7.1
971   Add AV_PKT_FLAG_CORRUPT AVPacket flag.
972
973 2011-07-10 - a67c061 - lavf 53.3.0
974   Add avformat_find_stream_info(), deprecate av_find_stream_info().
975   NOTE: this was backported to 0.7
976
977 2011-07-10 - 0b950fe - lavc 53.6.0
978   Add avcodec_open2(), deprecate avcodec_open().
979   NOTE: this was backported to 0.7
980
981   Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and
982   avcodec_alloc_context2().
983
984 2011-06-23 - 67e9ae1 - lavu 51.8.0 - attributes.h
985   Add av_printf_format().
986
987 ------------------------------8<-------------------------------------
988                    0.7 branch was cut here
989 ----------------------------->8--------------------------------------
990
991 2011-06-16 - 05e84c9, 25de595 - lavf 53.2.0 - avformat.h
992   Add avformat_open_input and avformat_write_header().
993   Deprecate av_open_input_stream, av_open_input_file,
994   AVFormatParameters and av_write_header.
995
996 2011-06-16 - 7e83e1c, dc59ec5 - lavu 51.7.0 - opt.h
997   Add av_opt_set_dict() and av_opt_find().
998   Deprecate av_find_opt().
999   Add AV_DICT_APPEND flag.
1000
1001 2011-06-10 - cb7c11c - lavu 51.6.0 - opt.h
1002   Add av_opt_flag_is_set().
1003
1004 2011-06-08 - d9f80ea - lavu 51.5.0 - AVMetadata
1005   Move AVMetadata from lavf to lavu and rename it to
1006   AVDictionary -- new installed header dict.h.
1007   All av_metadata_* functions renamed to av_dict_*.
1008
1009 2011-06-07 - a6703fa - lavu 51.4.0 - av_get_bytes_per_sample()
1010   Add av_get_bytes_per_sample() in libavutil/samplefmt.h.
1011   Deprecate av_get_bits_per_sample_fmt().
1012
1013 2011-06-05 - b39b062 - lavu 51.3.0 - opt.h
1014   Add av_opt_free convenience function.
1015
1016 2011-05-28 - 0420bd7 - lavu 51.2.0 - pixdesc.h
1017   Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate
1018   avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor.
1019
1020 2011-05-25 - 30315a8 - lavf 53.1.0 - avformat.h
1021   Add fps_probe_size to AVFormatContext.
1022
1023 2011-05-18 - 64150ff - lavc 53.4.0 - AVCodecContext.request_sample_fmt
1024   Add request_sample_fmt field to AVCodecContext.
1025
1026 2011-05-10 - 188dea1 - lavc 53.3.0 - avcodec.h
1027   Deprecate AVLPCType and the following fields in
1028   AVCodecContext: lpc_coeff_precision, prediction_order_method,
1029   min_partition_order, max_partition_order, lpc_type, lpc_passes.
1030   Corresponding FLAC encoder options should be used instead.
1031
1032 2011-04-26 - bebe72f - lavu 51.1.0 - avutil.h
1033   Add AVPictureType enum and av_get_picture_type_char(), deprecate
1034   FF_*_TYPE defines and av_get_pict_type_char() defined in
1035   libavcodec/avcodec.h.
1036
1037 2011-04-26 - 10d3940 - lavfi 2.3.0 - avfilter.h
1038   Add pict_type and key_frame fields to AVFilterBufferRefVideo.
1039
1040 2011-04-26 - 7a11c82 - lavfi 2.2.0 - vsrc_buffer
1041   Add sample_aspect_ratio fields to vsrc_buffer arguments
1042
1043 2011-04-21 - 94f7451 - lavc 53.1.0 - avcodec.h
1044   Add CODEC_CAP_SLICE_THREADS for codecs supporting sliced threading.
1045
1046 2011-04-15 - lavc 52.120.0 - avcodec.h
1047   AVPacket structure got additional members for passing side information:
1048     4de339e introduce side information for AVPacket
1049     2d8591c make containers pass palette change in AVPacket
1050
1051 2011-04-12 - lavf 52.107.0 - avio.h
1052   Avio cleanup, part II - deprecate the entire URLContext API:
1053     175389c add avio_check as a replacement for url_exist
1054     ff1ec0c add avio_pause and avio_seek_time as replacements
1055             for _av_url_read_fseek/fpause
1056     cdc6a87 deprecate av_protocol_next(), avio_enum_protocols
1057             should be used instead.
1058     80c6e23 rename url_set_interrupt_cb->avio_set_interrupt_cb.
1059     f87b1b3 rename open flags: URL_* -> AVIO_*
1060     f8270bb add avio_enum_protocols.
1061     5593f03 deprecate URLProtocol.
1062     c486dad deprecate URLContext.
1063     026e175 deprecate the typedef for URLInterruptCB
1064     8e76a19 deprecate av_register_protocol2.
1065     b840484 deprecate URL_PROTOCOL_FLAG_NESTED_SCHEME
1066     1305d93 deprecate av_url_read_seek
1067     fa104e1 deprecate av_url_read_pause
1068     727c7aa deprecate url_get_filename().
1069     5958df3 deprecate url_max_packet_size().
1070     1869ea0 deprecate url_get_file_handle().
1071     32a97d4 deprecate url_filesize().
1072     e52a914 deprecate url_close().
1073     58a48c6 deprecate url_seek().
1074     925e908 deprecate url_write().
1075     dce3756 deprecate url_read_complete().
1076     bc371ac deprecate url_read().
1077     0589da0 deprecate url_open().
1078     62eaaea deprecate url_connect.
1079     5652bb9 deprecate url_alloc.
1080     333e894 deprecate url_open_protocol
1081     e230705 deprecate url_poll and URLPollEntry
1082
1083 2011-04-10 - lavu  50.40.0 - pixfmt.h
1084   Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
1085
1086 2011-04-08 - lavf 52.106.0 - avformat.h
1087   Minor avformat.h cleanup:
1088     a9bf9d8 deprecate av_guess_image2_codec
1089     c3675df rename avf_sdp_create->av_sdp_create
1090
1091 2011-04-03 - lavf 52.105.0 - avio.h
1092   Large-scale renaming/deprecating of AVIOContext-related functions:
1093     724f6a0 deprecate url_fdopen
1094     403ee83 deprecate url_open_dyn_packet_buf
1095     6dc7d80 rename url_close_dyn_buf       -> avio_close_dyn_buf
1096     b92c545 rename url_open_dyn_buf        -> avio_open_dyn_buf
1097     8978fed introduce an AVIOContext.seekable field as a replacement for
1098             AVIOContext.is_streamed and url_is_streamed()
1099     b64030f deprecate get_checksum()
1100     4c4427a deprecate init_checksum()
1101     4ec153b deprecate udp_set_remote_url/get_local_port
1102     933e90a deprecate av_url_read_fseek/fpause
1103     8d9769a deprecate url_fileno
1104     b7f2fdd rename put_flush_packet -> avio_flush
1105     35f1023 deprecate url_close_buf
1106     83fddae deprecate url_open_buf
1107     d9d86e0 rename url_fprintf -> avio_printf
1108     59f65d9 deprecate url_setbufsize
1109     3e68b3b deprecate url_ferror
1110     66e5b1d deprecate url_feof
1111     e8bb2e2 deprecate url_fget_max_packet_size
1112     76aa876 rename url_fsize -> avio_size
1113     e519753 deprecate url_fgetc
1114     655e45e deprecate url_fgets
1115     a2704c9 rename url_ftell -> avio_tell
1116     e16ead0 deprecate get_strz() in favor of avio_get_str
1117     0300db8,2af07d3 rename url_fskip -> avio_skip
1118     6b4aa5d rename url_fseek -> avio_seek
1119     61840b4 deprecate put_tag
1120     22a3212 rename url_fopen/fclose -> avio_open/close.
1121     0ac8e2b deprecate put_nbyte
1122     77eb550 rename put_byte          -> avio_w8
1123                    put_[b/l]e<type>  -> avio_w[b/l]<type>
1124                    put_buffer        -> avio_write
1125     b7effd4 rename get_byte          -> avio_r8,
1126                    get_[b/l]e<type>  -> avio_r[b/l]<type>
1127                    get_buffer        -> avio_read
1128     b3db9ce deprecate get_partial_buffer
1129     8d9ac96 rename av_alloc_put_byte -> avio_alloc_context
1130
1131 2011-03-25 - 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type
1132   Add audio_service_type field to AVCodecContext.
1133
1134 2011-03-02 - 863c471 - lavf  52.103.0 - av_pkt_dump2, av_pkt_dump_log2
1135   Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
1136   source stream timebase for outputting timestamps. Deprecate
1137   av_pkt_dump and av_pkt_dump_log.
1138
1139 2011-02-20 - e731b8d - lavf  52.102.0 - avio.h
1140   * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the
1141               original, and move it to a private header so it is no longer
1142               part of our public API. Instead, use av_alloc_put_byte().
1143   * ae628ec - rename ByteIOContext to AVIOContext.
1144
1145 2011-02-16 - 09d171b - lavf  52.101.0 - avformat.h
1146                        lavu  52.39.0  - parseutils.h
1147   * 610219a - Add av_ prefix to dump_format().
1148   * f6c7375 - Replace parse_date() in lavf with av_parse_time() in lavu.
1149   * ab0287f - Move find_info_tag from lavf to lavu and add av_prefix to it.
1150
1151 2011-02-15 - lavu 52.38.0 - merge libavcore
1152   libavcore is merged back completely into libavutil
1153
1154 2011-02-10 - 55bad0c - lavc 52.113.0 - vbv_delay
1155   Add vbv_delay field to AVCodecContext
1156
1157 2011-02-14 - 24a83bd - lavf 52.100.0 - AV_DISPOSITION_CLEAN_EFFECTS
1158   Add AV_DISPOSITION_CLEAN_EFFECTS disposition flag.
1159
1160 2011-02-14 - 910b5b8 - lavfi 1.76.0 - AVFilterLink sample_aspect_ratio
1161   Add sample_aspect_ratio field to AVFilterLink.
1162
1163 2011-02-10 - 12c14cd - lavf 52.99.0 - AVStream.disposition
1164   Add AV_DISPOSITION_HEARING_IMPAIRED and AV_DISPOSITION_VISUAL_IMPAIRED.
1165
1166 2011-02-09 - 5592734 - lavc 52.112.0 - avcodec_thread_init()
1167   Deprecate avcodec_thread_init()/avcodec_thread_free() use; instead
1168   set thread_count before calling avcodec_open.
1169
1170 2011-02-09 - 778b08a - lavc 52.111.0 - threading API
1171   Add CODEC_CAP_FRAME_THREADS with new restrictions on get_buffer()/
1172   release_buffer()/draw_horiz_band() callbacks for appropriate codecs.
1173   Add thread_type and active_thread_type fields to AVCodecContext.
1174
1175 2011-02-08 - 3940caa - lavf 52.98.0 - av_probe_input_buffer
1176   Add av_probe_input_buffer() to avformat.h for probing format from a
1177   ByteIOContext.
1178
1179 2011-02-06 - fe174fc - lavf 52.97.0 - avio.h
1180   Add flag for non-blocking protocols: URL_FLAG_NONBLOCK
1181
1182 2011-02-04 - f124b08 - lavf 52.96.0 - avformat_free_context()
1183   Add avformat_free_context() in avformat.h.
1184
1185 2011-02-03 - f5b82f4 - lavc 52.109.0 - add CODEC_ID_PRORES
1186   Add CODEC_ID_PRORES to avcodec.h.
1187
1188 2011-02-03 - fe9a3fb - lavc 52.109.0 - H.264 profile defines
1189   Add defines for H.264 * Constrained Baseline and Intra profiles
1190
1191 2011-02-02 - lavf 52.95.0
1192   * 50196a9 - add a new installed header version.h.
1193   * 4efd5cf, dccbd97, 93b78d1 - add several variants of public
1194     avio_{put,get}_str* functions.  Deprecate corresponding semi-public
1195     {put,get}_str*.
1196
1197 2011-02-02 - dfd2a00 - lavu 50.37.0 - log.h
1198   Make av_dlog public.
1199
1200 2011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps
1201   Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples.
1202
1203 2011-01-14 - 7f88a5b - lavf 52.93.0 - av_metadata_copy()
1204   Add av_metadata_copy() in avformat.h.
1205
1206 2011-01-07 - 81c623f - lavc 52.107.0 - deprecate reordered_opaque
1207   Deprecate reordered_opaque in favor of pkt_pts/dts.
1208
1209 2011-01-07 - 1919fea - lavc 52.106.0 - pkt_dts
1210   Add pkt_dts to AVFrame, this will in the future allow multithreading decoders
1211   to not mess up dts.
1212
1213 2011-01-07 - 393cbb9 - lavc 52.105.0 - pkt_pts
1214   Add pkt_pts to AVFrame.
1215
1216 2011-01-07 - 060ec0a - lavc 52.104.0 - av_get_profile_name()
1217   Add av_get_profile_name to libavcodec/avcodec.h.
1218
1219 2010-12-27 - 0ccabee - lavfi 1.71.0 - AV_PERM_NEG_LINESIZES
1220   Add AV_PERM_NEG_LINESIZES in avfilter.h.
1221
1222 2010-12-27 - 9128ae0 - lavf 52.91.0 - av_find_best_stream()
1223   Add av_find_best_stream to libavformat/avformat.h.
1224
1225 2010-12-27 - 107a7e3 - lavf 52.90.0
1226   Add AVFMT_NOSTREAMS flag for formats with no streams,
1227   like e.g. text metadata.
1228
1229 2010-12-22 - 0328b9e - lavu 50.36.0 - file.h
1230   Add functions av_file_map() and av_file_unmap() in file.h.
1231
1232 2010-12-19 - 0bc55f5 - lavu 50.35.0 - error.h
1233   Add "not found" error codes:
1234   AVERROR_DEMUXER_NOT_FOUND
1235   AVERROR_MUXER_NOT_FOUND
1236   AVERROR_DECODER_NOT_FOUND
1237   AVERROR_ENCODER_NOT_FOUND
1238   AVERROR_PROTOCOL_NOT_FOUND
1239   AVERROR_FILTER_NOT_FOUND
1240   AVERROR_BSF_NOT_FOUND
1241   AVERROR_STREAM_NOT_FOUND
1242
1243 2010-12-09 - c61cdd0 - lavcore 0.16.0 - avcore.h
1244   Move AV_NOPTS_VALUE, AV_TIME_BASE, AV_TIME_BASE_Q symbols from
1245   avcodec.h to avcore.h.
1246
1247 2010-12-04 - 16cfc96 - lavc 52.98.0 - CODEC_CAP_NEG_LINESIZES
1248   Add CODEC_CAP_NEG_LINESIZES codec capability flag in avcodec.h.
1249
1250 2010-12-04 - bb4afa1 - lavu 50.34.0 - av_get_pix_fmt_string()
1251   Deprecate avcodec_pix_fmt_string() in favor of
1252   pixdesc.h/av_get_pix_fmt_string().
1253
1254 2010-12-04 - 4da12e3 - lavcore 0.15.0 - av_image_alloc()
1255   Add av_image_alloc() to libavcore/imgutils.h.
1256
1257 2010-12-02 - 037be76 - lavfi 1.67.0 - avfilter_graph_create_filter()
1258   Add function avfilter_graph_create_filter() in avfiltergraph.h.
1259
1260 2010-11-25 - 4723bc2 - lavfi 1.65.0 - avfilter_get_video_buffer_ref_from_arrays()
1261   Add function avfilter_get_video_buffer_ref_from_arrays() in
1262   avfilter.h.
1263
1264 2010-11-21 - 176a615 - lavcore 0.14.0 - audioconvert.h
1265   Add a public audio channel API in audioconvert.h, and deprecate the
1266   corresponding functions in libavcodec:
1267   avcodec_get_channel_name()
1268   avcodec_get_channel_layout()
1269   avcodec_get_channel_layout_string()
1270   avcodec_channel_layout_num_channels()
1271   and the CH_* macros defined in libavcodec/avcodec.h.
1272
1273 2010-11-21 - 6bfc268 - lavf 52.85.0 - avformat.h
1274   Add av_append_packet().
1275
1276 2010-11-21 - a08d918 - lavc 52.97.0 - avcodec.h
1277   Add av_grow_packet().
1278
1279 2010-11-17 - 0985e1a - lavcore 0.13.0 - parseutils.h
1280   Add av_parse_color() declared in libavcore/parseutils.h.
1281
1282 2010-11-13 - cb2c971 - lavc 52.95.0 - AVCodecContext
1283   Add AVCodecContext.subtitle_header and AVCodecContext.subtitle_header_size
1284   fields.
1285
1286 2010-11-13 - 5aaea02 - lavfi 1.62.0 - avfiltergraph.h
1287   Make avfiltergraph.h public.
1288
1289 2010-11-13 - 4fcbb2a - lavfi 1.61.0 - avfiltergraph.h
1290   Remove declarations from avfiltergraph.h for the functions:
1291   avfilter_graph_check_validity()
1292   avfilter_graph_config_links()
1293   avfilter_graph_config_formats()
1294   which are now internal.
1295   Use avfilter_graph_config() instead.
1296
1297 2010-11-08 - d2af720 - lavu 50.33.0 - eval.h
1298   Deprecate functions:
1299   av_parse_and_eval_expr(),
1300   av_parse_expr(),
1301   av_eval_expr(),
1302   av_free_expr(),
1303   in favor of the functions:
1304   av_expr_parse_and_eval(),
1305   av_expr_parse(),
1306   av_expr_eval(),
1307   av_expr_free().
1308
1309 2010-11-08 - 24de0ed - lavfi 1.59.0 - avfilter_free()
1310   Rename avfilter_destroy() to avfilter_free().
1311   This change breaks libavfilter API/ABI.
1312
1313 2010-11-07 - 1e80a0e - lavfi 1.58.0 - avfiltergraph.h
1314   Remove graphparser.h header, move AVFilterInOut and
1315   avfilter_graph_parse() declarations to libavfilter/avfiltergraph.h.
1316
1317 2010-11-07 - 7313132 - lavfi 1.57.0 - AVFilterInOut
1318   Rename field AVFilterInOut.filter to AVFilterInOut.filter_ctx.
1319   This change breaks libavfilter API.
1320
1321 2010-11-04 - 97dd1e4 - lavfi 1.56.0 - avfilter_graph_free()
1322   Rename avfilter_graph_destroy() to avfilter_graph_free().
1323   This change breaks libavfilter API/ABI.
1324
1325 2010-11-04 - e15aeea - lavfi 1.55.0 - avfilter_graph_alloc()
1326   Add avfilter_graph_alloc() to libavfilter/avfiltergraph.h.
1327
1328 2010-11-02 - 6f84cd1 - lavcore 0.12.0 - av_get_bits_per_sample_fmt()
1329   Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and
1330   deprecate av_get_bits_per_sample_format().
1331
1332 2010-11-02 - d63e456 - lavcore 0.11.0 - samplefmt.h
1333   Add sample format functions in libavcore/samplefmt.h:
1334   av_get_sample_fmt_name(),
1335   av_get_sample_fmt(),
1336   av_get_sample_fmt_string(),
1337   and deprecate the corresponding libavcodec/audioconvert.h functions:
1338   avcodec_get_sample_fmt_name(),
1339   avcodec_get_sample_fmt(),
1340   avcodec_sample_fmt_string().
1341
1342 2010-11-02 - 262d1c5 - lavcore 0.10.0 - samplefmt.h
1343   Define enum AVSampleFormat in libavcore/samplefmt.h, deprecate enum
1344   SampleFormat.
1345
1346 2010-10-16 - 2a24df9 - lavfi 1.52.0 - avfilter_graph_config()
1347   Add the function avfilter_graph_config() in avfiltergraph.h.
1348
1349 2010-10-15 - 03700d3 - lavf 52.83.0 - metadata API
1350   Change demuxers to export metadata in generic format and
1351   muxers to accept generic format. Deprecate the public
1352   conversion API.
1353
1354 2010-10-10 - 867ae7a - lavfi 1.49.0 - AVFilterLink.time_base
1355   Add time_base field to AVFilterLink.
1356
1357 2010-09-27 - c85eef4 - lavu 50.31.0 - av_set_options_string()
1358   Move av_set_options_string() from libavfilter/parseutils.h to
1359   libavutil/opt.h.
1360
1361 2010-09-27 - acc0490 - lavfi 1.47.0 - AVFilterLink
1362   Make the AVFilterLink fields srcpad and dstpad store the pointers to
1363   the source and destination pads, rather than their indexes.
1364
1365 2010-09-27 - 372e288 - lavu 50.30.0 - av_get_token()
1366   Move av_get_token() from libavfilter/parseutils.h to
1367   libavutil/avstring.h.
1368
1369 2010-09-26 - 635d4ae - lsws 0.12.0 - swscale.h
1370   Add the functions sws_alloc_context() and sws_init_context().
1371
1372 2010-09-26 - 6ed0404 - lavu 50.29.0 - opt.h
1373   Move libavcodec/opt.h to libavutil/opt.h.
1374
1375 2010-09-24 - 1c1c80f - lavu 50.28.0 - av_log_set_flags()
1376   Default of av_log() changed due to many problems to the old no repeat
1377   detection. Read the docs of AV_LOG_SKIP_REPEATED in log.h before
1378   enabling it for your app!.
1379
1380 2010-09-24 - f66eb58 - lavc 52.90.0 - av_opt_show2()
1381   Deprecate av_opt_show() in favor or av_opt_show2().
1382
1383 2010-09-14 - bc6f0af - lavu 50.27.0 - av_popcount()
1384   Add av_popcount() to libavutil/common.h.
1385
1386 2010-09-08 - c6c98d0 - lavu 50.26.0 - av_get_cpu_flags()
1387   Add av_get_cpu_flags().
1388
1389 2010-09-07 - 34017fd - lavcore 0.9.0 - av_image_copy()
1390   Add av_image_copy().
1391
1392 2010-09-07 - 9686abb - lavcore 0.8.0 - av_image_copy_plane()
1393   Add av_image_copy_plane().
1394
1395 2010-09-07 - 9b7269e - lavcore 0.7.0 - imgutils.h
1396   Adopt hierarchical scheme for the imgutils.h function names,
1397   deprecate the old names.
1398
1399 2010-09-04 - 7160bb7 - lavu 50.25.0 - AV_CPU_FLAG_*
1400   Deprecate the FF_MM_* flags defined in libavcodec/avcodec.h in favor
1401   of the AV_CPU_FLAG_* flags defined in libavutil/cpu.h.
1402
1403 2010-08-26 - 5da19b5 - lavc 52.87.0 - avcodec_get_channel_layout()
1404   Add avcodec_get_channel_layout() in audioconvert.h.
1405
1406 2010-08-20 - e344336 - lavcore 0.6.0 - av_fill_image_max_pixsteps()
1407   Rename av_fill_image_max_pixstep() to av_fill_image_max_pixsteps().
1408
1409 2010-08-18 - a6ddf8b - lavcore 0.5.0 - av_fill_image_max_pixstep()
1410   Add av_fill_image_max_pixstep() in imgutils.h.
1411
1412 2010-08-17 - 4f2d2e4 - lavu 50.24.0 - AV_NE()
1413   Add the AV_NE macro.
1414
1415 2010-08-17 - ad2c950 - lavfi 1.36.0 - audio framework
1416   Implement AVFilterBufferRefAudioProps struct for audio properties,
1417   get_audio_buffer(), filter_samples() functions and related changes.
1418
1419 2010-08-12 - 81c1eca - lavcore 0.4.0 - av_get_image_linesize()
1420   Add av_get_image_linesize() in imgutils.h.
1421
1422 2010-08-11 - c1db7bf - lavfi 1.34.0 - AVFilterBufferRef
1423   Resize data and linesize arrays in AVFilterBufferRef to 8.
1424
1425   This change breaks libavfilter API/ABI.
1426
1427 2010-08-11 - 9f08d80 - lavc 52.85.0 - av_picture_data_copy()
1428   Add av_picture_data_copy in avcodec.h.
1429
1430 2010-08-11 - 84c0386 - lavfi 1.33.0 - avfilter_open()
1431   Change avfilter_open() signature:
1432   AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name) ->
1433   int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);
1434
1435   This change breaks libavfilter API/ABI.
1436
1437 2010-08-11 - cc80caf - lavfi 1.32.0 - AVFilterBufferRef
1438   Add a type field to AVFilterBufferRef, and move video specific
1439   properties to AVFilterBufferRefVideoProps.
1440
1441   This change breaks libavfilter API/ABI.
1442
1443 2010-08-07 - 5d4890d - lavfi 1.31.0 - AVFilterLink
1444   Rename AVFilterLink fields:
1445   AVFilterLink.srcpic    ->  AVFilterLink.src_buf
1446   AVFilterLink.cur_pic   ->  AVFilterLink.cur_buf
1447   AVFilterLink.outpic    ->  AVFilterLink.out_buf
1448
1449 2010-08-07 - 7fce481 - lavfi 1.30.0
1450   Rename functions and fields:
1451   avfilter_(un)ref_pic       -> avfilter_(un)ref_buffer
1452   avfilter_copy_picref_props -> avfilter_copy_buffer_ref_props
1453   AVFilterBufferRef.pic      -> AVFilterBufferRef.buffer
1454
1455 2010-08-07 - ecc8dad - lavfi 1.29.0 - AVFilterBufferRef
1456   Rename AVFilterPicRef to AVFilterBufferRef.
1457
1458 2010-08-07 - d54e094 - lavfi 1.28.0 - AVFilterBuffer
1459   Move format field from AVFilterBuffer to AVFilterPicRef.
1460
1461 2010-08-06 - bf176f5 - lavcore 0.3.0 - av_check_image_size()
1462   Deprecate avcodec_check_dimensions() in favor of the function
1463   av_check_image_size() defined in libavcore/imgutils.h.
1464
1465 2010-07-30 - 56b5e9d - lavfi 1.27.0 - AVFilterBuffer
1466   Increase size of the arrays AVFilterBuffer.data and
1467   AVFilterBuffer.linesize from 4 to 8.
1468
1469   This change breaks libavfilter ABI.
1470
1471 2010-07-29 - e7bd48a - lavcore 0.2.0 - imgutils.h
1472   Add functions av_fill_image_linesizes() and
1473   av_fill_image_pointers(), declared in libavcore/imgutils.h.
1474
1475 2010-07-27 - 126b638 - lavcore 0.1.0 - parseutils.h
1476   Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
1477   defined in libavcodec in favor of the newly added functions
1478   av_parse_video_size() and av_parse_video_rate() declared in
1479   libavcore/parseutils.h.
1480
1481 2010-07-23 - 4485247 - lavu 50.23.0 - mathematics.h
1482   Add the M_PHI constant definition.
1483
1484 2010-07-22 - bdab614 - lavfi 1.26.0 - media format generalization
1485   Add a type field to AVFilterLink.
1486
1487   Change the field types:
1488   enum PixelFormat format   -> int format   in AVFilterBuffer
1489   enum PixelFormat *formats -> int *formats in AVFilterFormats
1490   enum PixelFormat *format  -> int format   in AVFilterLink
1491
1492   Change the function signatures:
1493   AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); ->
1494   AVFilterFormats *avfilter_make_format_list(const int *fmts);
1495
1496   int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); ->
1497   int avfilter_add_format    (AVFilterFormats **avff, int fmt);
1498
1499   AVFilterFormats *avfilter_all_colorspaces(void); ->
1500   AVFilterFormats *avfilter_all_formats    (enum AVMediaType type);
1501
1502   This change breaks libavfilter API/ABI.
1503
1504 2010-07-21 - aac6ca6 - lavcore 0.0.0
1505   Add libavcore.
1506
1507 2010-07-17 - b5c582f - lavfi 1.25.0 - AVFilterBuffer
1508   Remove w and h fields from AVFilterBuffer.
1509
1510 2010-07-17 - f0d77b2 - lavfi 1.24.0 - AVFilterBuffer
1511   Rename AVFilterPic to AVFilterBuffer.
1512
1513 2010-07-17 - 57fe80f - lavf 52.74.0 - url_fskip()
1514   Make url_fskip() return an int error code instead of void.
1515
1516 2010-07-11 - 23940f1 - lavc 52.83.0
1517   Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields.
1518   Add AVLPCType enum.
1519   Deprecate AVCodecContext.use_lpc.
1520
1521 2010-07-11 - e1d7c88 - lavc 52.82.0 - avsubtitle_free()
1522   Add a function for free the contents of a AVSubtitle generated by
1523   avcodec_decode_subtitle.
1524
1525 2010-07-11 - b91d08f - lavu 50.22.0 - bswap.h and intreadwrite.h
1526   Make the bswap.h and intreadwrite.h API public.
1527
1528 2010-07-08 - ce1cd1c - lavu 50.21.0 - pixdesc.h
1529   Rename read/write_line() to av_read/write_image_line().
1530
1531 2010-07-07 - 4d508e4 - lavfi 1.21.0 - avfilter_copy_picref_props()
1532   Add avfilter_copy_picref_props().
1533
1534 2010-07-03 - 2d525ef - lavc 52.79.0
1535   Add FF_COMPLIANCE_UNOFFICIAL and change all instances of
1536   FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL.
1537
1538 2010-07-02 - 89eec74 - lavu 50.20.0 - lfg.h
1539   Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through
1540   lfg.h.
1541
1542 2010-06-28 - a52e2c3 - lavfi 1.20.1 - av_parse_color()
1543   Extend av_parse_color() syntax, make it accept an alpha value specifier and
1544   set the alpha value to 255 by default.
1545
1546 2010-06-22 - 735cf6b - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class
1547   Add priv_data_size and priv_data_class to URLProtocol.
1548
1549 2010-06-22 - ffbb289 - lavf 52.70.0 - url_alloc(), url_connect()
1550   Add url_alloc() and url_connect().
1551
1552 2010-06-22 - 9b07a2d - lavf 52.69.0 - av_register_protocol2()
1553   Add av_register_protocol2(), deprecating av_register_protocol().
1554
1555 2010-06-09 - 65db058 - lavu 50.19.0 - av_compare_mod()
1556   Add av_compare_mod() to libavutil/mathematics.h.
1557
1558 2010-06-05 - 0b99215 - lavu 50.18.0 - eval API
1559   Make the eval API public.
1560
1561 2010-06-04 - 31878fc - lavu 50.17.0 - AV_BASE64_SIZE
1562   Add AV_BASE64_SIZE() macro.
1563
1564 2010-06-02 - 7e566bb - lavc 52.73.0 - av_get_codec_tag_string()
1565   Add av_get_codec_tag_string().
1566
1567 2010-06-01 - 2b99142 - lsws 0.11.0 - convertPalette API
1568   Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24().
1569
1570 2010-05-26 - 93ebfee - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL
1571   Add CODEC_CAP_EXPERIMENTAL flag.
1572   NOTE: this was backported to 0.6
1573
1574 2010-05-23 - 9977863 - lavu 50.16.0 - av_get_random_seed()
1575   Add av_get_random_seed().
1576
1577 2010-05-18 - 796ac23 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT
1578   Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags.
1579   NOTE: this was backported to 0.6
1580
1581 2010-05-09 - b6bc205 - lavfi 1.20.0 - AVFilterPicRef
1582   Add interlaced and top_field_first fields to AVFilterPicRef.
1583
1584 ------------------------------8<-------------------------------------
1585                    0.6 branch was cut here
1586 ----------------------------->8--------------------------------------
1587
1588 2010-05-01 - 8e2ee18 - lavf 52.62.0 - probe function
1589   Add av_probe_input_format2 to API, it allows ignoring probe
1590   results below given score and returns the actual probe score.
1591
1592 2010-04-01 - 3dd6180 - lavf 52.61.0 - metadata API
1593   Add a flag for av_metadata_set2() to disable overwriting of
1594   existing tags.
1595
1596 2010-04-01 - 0fb49b5 - lavc 52.66.0
1597   Add avcodec_get_edge_width().
1598
1599 2010-03-31 - d103218 - lavc 52.65.0
1600   Add avcodec_copy_context().
1601
1602 2010-03-31 - 1a70d12 - lavf 52.60.0 - av_match_ext()
1603   Make av_match_ext() public.
1604
1605 2010-03-31 - 1149150 - lavu 50.14.0 - AVMediaType
1606   Move AVMediaType enum from libavcodec to libavutil.
1607
1608 2010-03-31 - 72415b2 - lavc 52.64.0 - AVMediaType
1609   Define AVMediaType enum, and use it instead of enum CodecType, which
1610   is deprecated and will be dropped at the next major bump.
1611
1612 2010-03-25 - 8795823 - lavu 50.13.0 - av_strerror()
1613   Implement av_strerror().
1614
1615 2010-03-23 - e1484eb - lavc 52.60.0 - av_dct_init()
1616   Support DCT-I and DST-I.
1617
1618 2010-03-15 - b8819c8 - lavf 52.56.0 - AVFormatContext.start_time_realtime
1619   Add AVFormatContext.start_time_realtime field.
1620
1621 2010-03-13 - 5bb5c1d - lavfi 1.18.0 - AVFilterPicRef.pos
1622   Add AVFilterPicRef.pos field.
1623
1624 2010-03-13 - 60c144f - lavu 50.12.0 - error.h
1625   Move error code definitions from libavcodec/avcodec.h to
1626   the new public header libavutil/error.h.
1627
1628 2010-03-07 - c709483 - lavc 52.56.0 - avfft.h
1629   Add public FFT interface.
1630
1631 2010-03-06 - ac6ef86 - lavu 50.11.0 - av_stristr()
1632   Add av_stristr().
1633
1634 2010-03-03 - 4b83fc0 - lavu 50.10.0 - av_tree_enumerate()
1635   Add av_tree_enumerate().
1636
1637 2010-02-07 - b687c1a - lavu 50.9.0 - av_compare_ts()
1638   Add av_compare_ts().
1639
1640 2010-02-05 - 3f3dc76 - lsws 0.10.0 - sws_getCoefficients()
1641   Add sws_getCoefficients().
1642
1643 2010-02-01 - ca76a11 - lavf 52.50.0 - metadata API
1644   Add a list of generic tag names, change 'author' -> 'artist',
1645   'year' -> 'date'.
1646
1647 2010-01-30 - 80a07f6 - lavu 50.8.0 - av_get_pix_fmt()
1648   Add av_get_pix_fmt().
1649
1650 2010-01-21 - 01cc47d - lsws 0.9.0 - sws_scale()
1651   Change constness attributes of sws_scale() parameters.
1652
1653 2010-01-10 - 3fb8e77 - lavfi 1.15.0 - avfilter_graph_config_links()
1654   Add a log_ctx parameter to avfilter_graph_config_links().
1655
1656 2010-01-07 - 8e9767f - lsws 0.8.0 - sws_isSupported{In,Out}put()
1657   Add sws_isSupportedInput() and sws_isSupportedOutput() functions.
1658
1659 2010-01-06 - c1d662f - lavfi 1.14.0 - avfilter_add_colorspace()
1660   Change the avfilter_add_colorspace() signature, make it accept an
1661   (AVFilterFormats **) rather than an (AVFilterFormats *) as before.
1662
1663 2010-01-03 - 4fd1f18 - lavfi 1.13.0 - avfilter_add_colorspace()
1664   Add avfilter_add_colorspace().
1665
1666 2010-01-02 - 8eb631f - lavf 52.46.0 - av_match_ext()
1667   Add av_match_ext(), it should be used in place of match_ext().
1668
1669 2010-01-01 - a1f547b - lavf 52.45.0 - av_guess_format()
1670   Add av_guess_format(), it should be used in place of guess_format().
1671
1672 2009-12-13 - a181981 - lavf 52.43.0 - metadata API
1673   Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and
1674   AV_METADATA_DONT_STRDUP_VAL.
1675
1676 2009-12-13 - 277c733 - lavu 50.7.0 - avstring.h API
1677   Add av_d2str().
1678
1679 2009-12-13 - 02b398e - lavc 52.42.0 - AVStream
1680   Add avg_frame_rate.
1681
1682 2009-12-12 - 3ba69a1 - lavu 50.6.0 - av_bmg_next()
1683   Introduce the av_bmg_next() function.
1684
1685 2009-12-05 - a13a543 - lavfi 1.12.0 - avfilter_draw_slice()
1686   Add a slice_dir parameter to avfilter_draw_slice().
1687
1688 2009-11-26 - 4cc3f6a - lavfi 1.11.0 - AVFilter
1689   Remove the next field from AVFilter, this is not anymore required.
1690
1691 2009-11-25 - 1433c4a - lavfi 1.10.0 - avfilter_next()
1692   Introduce the avfilter_next() function.
1693
1694 2009-11-25 - 86a60fa - lavfi 1.9.0 - avfilter_register()
1695   Change the signature of avfilter_register() to make it return an
1696   int. This is required since now the registration operation may fail.
1697
1698 2009-11-25 - 74a0059 - lavu 50.5.0 - pixdesc.h API
1699   Make the pixdesc.h API public.
1700
1701 2009-10-27 - 243110f - lavfi 1.5.0 - AVFilter.next
1702   Add a next field to AVFilter, this is used for simplifying the
1703   registration and management of the registered filters.
1704
1705 2009-10-23 - cccd292 - lavfi 1.4.1 - AVFilter.description
1706   Add a description field to AVFilter.
1707
1708 2009-10-19 - 6b5dc05 - lavfi 1.3.0 - avfilter_make_format_list()
1709   Change the interface of avfilter_make_format_list() from
1710   avfilter_make_format_list(int n, ...) to
1711   avfilter_make_format_list(enum PixelFormat *pix_fmts).
1712
1713 2009-10-18 - 0eb4ff9 - lavfi 1.0.0 - avfilter_get_video_buffer()
1714   Make avfilter_get_video_buffer() recursive and add the w and h
1715   parameters to it.
1716
1717 2009-10-07 - 46c40e4 - lavfi 0.5.1 - AVFilterPic
1718   Add w and h fields to AVFilterPic.
1719
1720 2009-06-22 - 92400be - lavf 52.34.1 - AVFormatContext.packet_size
1721   This is now an unsigned int instead of a signed int.
1722
1723 2009-06-19 - a4276ba - lavc 52.32.0 - AVSubtitle.pts
1724   Add a pts field to AVSubtitle which gives the subtitle packet pts
1725   in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will
1726   not work right without this.
1727
1728 2009-06-03 - 8f3f2e0 - lavc 52.30.2 - AV_PKT_FLAG_KEY
1729   PKT_FLAG_KEY has been deprecated and will be dropped at the next
1730   major version. Use AV_PKT_FLAG_KEY instead.
1731
1732 2009-06-01 - f988ce6 - lavc 52.30.0 - av_lockmgr_register()
1733   av_lockmgr_register() can be used to register a callback function
1734   that lavc (and in the future, libraries that depend on lavc) can use
1735   to implement mutexes. The application should provide a callback function
1736   that implements the AV_LOCK_* operations described in avcodec.h.
1737   When the lock manager is registered, FFmpeg is guaranteed to behave
1738   correctly in a multi-threaded application.
1739
1740 2009-04-30 - ce1d9c8 - lavc 52.28.0 - av_free_packet()
1741   av_free_packet() is no longer an inline function. It is now exported.
1742
1743 2009-04-11 - 80d403f - lavc 52.25.0 - deprecate av_destruct_packet_nofree()
1744   Please use NULL instead. This has been supported since r16506
1745   (lavf > 52.23.1, lavc > 52.10.0).
1746
1747 2009-04-07 - 7a00bba - lavc 52.23.0 - avcodec_decode_video/audio/subtitle
1748   The old decoding functions are deprecated, all new code should use the
1749   new functions avcodec_decode_video2(), avcodec_decode_audio3() and
1750   avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt
1751   argument instead of a const uint8_t *buf / int buf_size pair.
1752
1753 2009-04-03 - 7b09db3 - lavu 50.3.0 - av_fifo_space()
1754   Introduce the av_fifo_space() function.
1755
1756 2009-04-02 - fabd246 - lavc 52.23.0 - AVPacket
1757   Move AVPacket declaration from libavformat/avformat.h to
1758   libavcodec/avcodec.h.
1759
1760 2009-03-22 - 6e08ca9 - lavu 50.2.0 - RGB32 pixel formats
1761   Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR,
1762   PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values.
1763   Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and
1764   PIX_FMT_BGR32_1 are now macros.
1765   avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases.
1766   Re-sort the enum PixelFormat list accordingly.
1767   This change breaks API/ABI backward compatibility.
1768
1769 2009-03-22 - f82674e - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants
1770   Add the enum PixelFormat values:
1771   PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE,
1772   PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE.
1773
1774 2009-03-21 - ee6624e - lavu 50.0.0  - av_random*
1775   The Mersenne Twister PRNG implemented through the av_random* functions
1776   was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions
1777   instead.
1778
1779 2009-03-08 - 41dd680 - lavu 50.0.0  - AVFifoBuffer
1780   av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped
1781   and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write
1782   and av_fifo_realloc2.
1783   In addition, the order of the function arguments of av_fifo_generic_read
1784   was changed to match av_fifo_generic_write.
1785   The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by
1786   applications, they may not use sizeof() or directly access members.
1787
1788 2009-03-01 - ec26457 - lavf 52.31.0 - Generic metadata API
1789   Introduce a new metadata API (see av_metadata_get() and friends).
1790   The old API is now deprecated and should not be used anymore. This especially
1791   includes the following structure fields:
1792     - AVFormatContext.title
1793     - AVFormatContext.author
1794     - AVFormatContext.copyright
1795     - AVFormatContext.comment
1796     - AVFormatContext.album
1797     - AVFormatContext.year
1798     - AVFormatContext.track
1799     - AVFormatContext.genre
1800     - AVStream.language
1801     - AVStream.filename
1802     - AVProgram.provider_name
1803     - AVProgram.name
1804     - AVChapter.title