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