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