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