lavu/opt: fix av_opt_get_key_value() API.
[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 or the API was added.
3
4 The last version increases were:
5 libavcodec:    2012-01-27
6 libavdevice:   2011-04-18
7 libavfilter:   2012-06-22
8 libavformat:   2012-01-27
9 libavresample: 2012-10-05
10 libpostproc:   2011-04-18
11 libswresample: 2011-09-19
12 libswscale:    2011-06-20
13 libavutil:     2012-10-22
14
15
16 API changes, most recent first:
17
18 2012-11-15 - xxxxxxx - lavu 52.7.100 - opt.h
19   Add av_opt_get_key_value().
20
21 2012-11-13 - xxxxxxx - lavfi 3.23.100 - avfilter.h
22   Add channels field to AVFilterBufferRefAudioProps.
23
24 2012-11-03 - xxxxxxx - lavu 52.3.100 - opt.h
25   Add AV_OPT_TYPE_SAMPLE_FMT value to AVOptionType enum.
26
27 2012-10-21 - xxxxxxx - lavc  54.68.100 - avcodec.h
28                        lavfi  3.20.100 - avfilter.h
29   Add AV_PKT_DATA_STRINGS_METADATA side data type, used to transmit key/value
30   strings between AVPacket and AVFrame, and add metadata field to
31   AVCodecContext (which shall not be accessed by users; see AVFrame metadata
32   instead).
33
34 2012-09-27 - a70b493 - lavd 54.3.100 - version.h
35   Add LIBAVDEVICE_IDENT symbol.
36
37 2012-09-27 - a70b493 - lavfi 3.18.100 - version.h
38   Add LIBAVFILTER_IDENT symbol.
39
40 2012-09-27 - a70b493 - libswr 0.16.100 - version.h
41   Add LIBSWRESAMPLE_VERSION, LIBSWRESAMPLE_BUILD
42   and LIBSWRESAMPLE_IDENT symbols.
43
44 2012-09-06 - 29e972f - lavu 51.72.100 - parseutils.h
45   Add av_small_strptime() time parsing function.
46
47   Can be used as a stripped-down replacement for strptime(), on
48   systems which do not support it.
49
50 2012-08-25 - 2626cc4 - lavf 54.28.100
51   Matroska demuxer now identifies SRT subtitles as AV_CODEC_ID_SUBRIP instead
52   of AV_CODEC_ID_TEXT.
53
54 2012-08-13 - 5c0d8bc - lavfi 3.8.100 - avfilter.h
55   Add avfilter_get_class() function, and priv_class field to AVFilter
56   struct.
57
58 2012-08-12 - a25346e - lavu 51.69.100 - opt.h
59   Add AV_OPT_FLAG_FILTERING_PARAM symbol in opt.h.
60
61 2012-07-31 - 23fc4dd - lavc 54.46.100
62   Add channels field to AVFrame.
63
64 2012-07-30 - f893904 - lavu 51.66.100
65   Add av_get_channel_description()
66   and av_get_standard_channel_layout() functions.
67
68 2012-07-21 - 016a472 - lavc 54.43.100
69   Add decode_error_flags field to AVFrame.
70
71 2012-07-20 - b062936 - lavf 54.18.100
72   Add avformat_match_stream_specifier() function.
73
74 2012-07-14 - f49ec1b - lavc 54.38.100 - avcodec.h
75   Add metadata to AVFrame, and the accessor functions
76   av_frame_get_metadata() and av_frame_set_metadata().
77
78 2012-07-10 - 0e003d8 - lavc 54.33.100
79   Add av_fast_padded_mallocz().
80
81 2012-07-10 - 21d5609 - lavfi 3.2.0 - avfilter.h
82   Add init_opaque() callback to AVFilter struct.
83
84 2012-06-26 - e6674e4 - lavu 51.63.100 - imgutils.h
85   Add functions to libavutil/imgutils.h:
86   av_image_get_buffer_size()
87   av_image_fill_arrays()
88   av_image_copy_to_buffer()
89
90 2012-06-24 - c41899a - lavu 51.62.100 - version.h
91   version moved from avutil.h to version.h
92
93 2012-04-11 - 359abb1 - lavu 51.58.100 - error.h
94   Add av_make_error_string() and av_err2str() utilities to
95   libavutil/error.h.
96
97 2012-06-05 - 62b39d4 - lavc 54.24.100
98   Add pkt_duration field to AVFrame.
99
100 2012-05-24 - f2ee065 - lavu 51.54.100
101   Move AVPALETTE_SIZE and AVPALETTE_COUNT macros from
102   libavcodec/avcodec.h to libavutil/pixfmt.h.
103
104 2012-05-14 - 94a9ac1 - lavf 54.5.100
105   Add av_guess_sample_aspect_ratio() function.
106
107 2012-04-20 - 65fa7bc - lavfi 2.70.100
108   Add avfilter_unref_bufferp() to avfilter.h.
109
110 2012-04-13 - 162e400 - lavfi 2.68.100
111   Install libavfilter/asrc_abuffer.h public header.
112
113 2012-03-26 - a67d9cf - lavfi 2.66.100
114   Add avfilter_fill_frame_from_{audio_,}buffer_ref() functions.
115
116 2012-xx-xx - xxxxxxx - lavu 52.2.0 - audioconvert.h
117   Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated.
118
119 2012-xx-xx - xxxxxxx - lavu 52.1.0 - intmath.h
120   Add av_ctz() for trailing zero bit count
121
122 2012-10-18 - xxxxxxx - lavu 51.45.0 - error.h
123   Add AVERROR_EXPERIMENTAL
124
125 2012-10-12 - xxxxxxx - lavu 51.44.0 - pixdesc.h
126   Add functions for accessing pixel format descriptors.
127   Accessing the av_pix_fmt_descriptors array directly is now
128   deprecated.
129
130 2012-10-xx - xxxxxxx - lavu 51.43.0 - aes.h, md5.h, sha.h, tree.h
131   Add functions for allocating the opaque contexts for the algorithms,
132
133 2012-10-xx - xxxxxxx - lavf 54.18.0 - avio.h
134   Add avio_closep to complement avio_close.
135
136 2012-10-xx - xxxxxxx - lavu 51.42.0 - pixfmt.h
137   Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*.
138   To provide backwards compatibility, PixelFormat is now #defined as
139   AVPixelFormat.
140   Note that this can break user code that includes pixfmt.h and uses the
141   'PixelFormat' identifier. Such code should either #undef PixelFormat
142   or stop using the PixelFormat name.
143
144 2012-10-05 - e7ba5b1 - lavr 1.0.0 - avresample.h
145   Data planes parameters to avresample_convert() and
146   avresample_read() are now uint8_t** instead of void**.
147   Libavresample is now stable.
148
149 2012-09-24 - a42aada - lavc 54.28.0 - avcodec.h
150   Add avcodec_free_frame(). This function must now
151   be used for freeing an AVFrame.
152
153 2012-09-12 - 8919fee - lavu 51.41.0 - audioconvert.h
154   Added AV_CH_LOW_FREQUENCY_2 channel mask value.
155
156 2012-09-04 - 686a329 - lavu 51.40.0 - opt.h
157   Reordered the fields in default_val in AVOption, changed which
158   default_val field is used for which AVOptionType.
159
160 2012-08-30 - a231832 - lavc 54.26.1 - avcodec.h
161   Add codec descriptor properties AV_CODEC_PROP_LOSSY and
162   AV_CODEC_PROP_LOSSLESS.
163
164 2012-08-18 - lavc 54.26 - avcodec.h
165   Add codec descriptors for accessing codec properties without having
166   to refer to a specific decoder or encoder.
167
168   c223d79 - Add an AVCodecDescriptor struct and functions
169             avcodec_descriptor_get() and avcodec_descriptor_next().
170   51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY.
171   91e59fe - Add avcodec_descriptor_get_by_name().
172
173 2012-08-08 - 987170c - lavu 51.38 - dict.h
174   Add av_dict_count().
175
176 2012-08-07 - 104e10f - lavc 54.25 - avcodec.h
177   Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*.
178   To provide backwards compatibility, CodecID is now #defined as AVCodecID.
179   Note that this can break user code that includes avcodec.h and uses the
180   'CodecID' identifier. Such code should either #undef CodecID or stop using the
181   CodecID name.
182
183 2012-08-03 - 239fdf1 - lavu 51.37.1 - cpu.h
184                        lsws 2.1.1   - swscale.h
185   Rename AV_CPU_FLAG_MMX2  ---> AV_CPU_FLAG_MMXEXT.
186   Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT.
187
188 2012-07-29 - 681ed00 - lavf 54.13.0 - avformat.h
189   Add AVFMT_FLAG_NOBUFFER for low latency use cases.
190
191 2012-07-10 - 5fade8a - lavu 51.37.0
192   Add av_malloc_array() and av_mallocz_array()
193
194 2012-06-22 - d3d3a32 - lavu 51.34.0
195   Add av_usleep()
196
197 2012-06-20 - ae0a301 - lavu 51.33.0
198   Move av_gettime() to libavutil, add libavutil/time.h
199
200 2012-06-09 - 3971be0 - lavr 0.0.3
201   Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing.
202
203 2012-06-12 - 9baeff9 - lavfi 2.23.0 - avfilter.h
204   Add AVFilterContext.nb_inputs/outputs. Deprecate
205   AVFilterContext.input/output_count.
206
207 2012-06-12 - 84b9fbe - lavfi 2.22.0 - avfilter.h
208   Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those
209   should now be used instead of accessing AVFilterPad members
210   directly.
211
212 2012-06-12 - b0f0dfc - lavu 51.32.0 - audioconvert.h
213   Add av_get_channel_layout_channel_index(), av_get_channel_name()
214   and av_channel_layout_extract_channel().
215
216 2012-05-25 - 154486f - lavu 51.31.0 - opt.h
217   Add av_opt_set_bin()
218
219 2012-05-15 - lavfi 2.17.0
220   Add support for audio filters
221   ac71230/a2cd9be - add video/audio buffer sink in a new installed
222                     header buffersink.h
223   720c6b7 - add av_buffersrc_write_frame(), deprecate
224             av_vsrc_buffer_add_frame()
225   ab16504 - add avfilter_copy_buf_props()
226   9453c9e - add extended_data to AVFilterBuffer
227   1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays()
228
229 2012-05-09 - lavu 51.30.0 - samplefmt.h
230   142e740 - add av_samples_copy()
231   6d7f617 - add av_samples_set_silence()
232
233 2012-05-09 - a5117a2 - lavc 54.13.1
234   For audio formats with fixed frame size, the last frame
235   no longer needs to be padded with silence, libavcodec
236   will handle this internally (effectively all encoders
237   behave as if they had CODEC_CAP_SMALL_LAST_FRAME set).
238
239 2012-05-07 - 828bd08 - lavc 54.13.0 - avcodec.h
240   Add sample_rate and channel_layout fields to AVFrame.
241
242 2012-05-01 - 4010d72 - lavr 0.0.1
243   Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8.
244
245 2012-04-25 - 3527a73 - lavu 51.29.0 - cpu.h
246   Add av_parse_cpu_flags()
247
248 2012-04-24 - c8af852 - lavr 0.0.0
249   Add libavresample audio conversion library
250
251 2012-04-20 - 0c0d1bc - lavu 51.28.0 - audio_fifo.h
252   Add audio FIFO functions:
253     av_audio_fifo_free()
254     av_audio_fifo_alloc()
255     av_audio_fifo_realloc()
256     av_audio_fifo_write()
257     av_audio_fifo_read()
258     av_audio_fifo_drain()
259     av_audio_fifo_reset()
260     av_audio_fifo_size()
261     av_audio_fifo_space()
262
263 2012-04-14 - lavfi 2.16.0 - avfiltergraph.h
264   d7bcc71 Add avfilter_graph_parse2().
265
266 2012-04-08 - 4d693b0 - lavu 51.27.0 - samplefmt.h
267   Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()
268
269 2012-03-21 - b75c67d - lavu 51.43.100
270   Add bprint.h for bprint API.
271
272 2012-02-21 - 9cbf17e - lavc 54.4.100
273   Add av_get_pcm_codec() function.
274
275 2012-02-16 - 560b224 - libswr 0.7.100
276   Add swr_set_matrix() function.
277
278 2012-02-09 - c28e7af - lavu 51.39.100
279   Add a new installed header libavutil/timestamp.h with timestamp
280   utilities.
281
282 2012-02-06 - 70ffda3 - lavu 51.38.100
283   Add av_parse_ratio() function to parseutils.h.
284
285 2012-02-06 - 70ffda3 - lavu 51.38.100
286   Add AV_LOG_MAX_OFFSET macro to log.h.
287
288 2012-02-02 - 0eaa123 - lavu 51.37.100
289   Add public timecode helpers.
290
291 2012-01-24 - 0c3577b - lavfi 2.60.100
292   Add avfilter_graph_dump.
293
294 2012-03-05 - lavc 54.8.0
295   6699d07 Add av_get_exact_bits_per_sample()
296   9524cf7 Add av_get_audio_frame_duration()
297
298 2012-03-04 - 44fe77b - lavc 54.7.0 - avcodec.h
299   Add av_codec_is_encoder/decoder().
300
301 2012-03-01 - 442c132 - lavc 54.3.0 - avcodec.h
302   Add av_packet_shrink_side_data.
303
304 2012-02-29 - dd2a4bc - lavf 54.2.0 - avformat.h
305   Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC,
306   used for dealing with attached pictures/cover art.
307
308 2012-02-25 - c9bca80 - lavu 51.24.0 - error.h
309   Add AVERROR_UNKNOWN
310   NOTE: this was backported to 0.8
311
312 2012-02-20 - e9cda85 - lavc 54.2.0
313   Add duration field to AVCodecParserContext
314
315 2012-02-20 - 0b42a93 - lavu 51.23.1 - mathematics.h
316   Add av_rescale_q_rnd()
317
318 2012-02-08 - 38d5533 - lavu 51.22.1 - pixdesc.h
319   Add PIX_FMT_PSEUDOPAL flag.
320
321 2012-02-08 - 52f82a1 - lavc 54.01.0
322   Add avcodec_encode_video2() and deprecate avcodec_encode_video().
323
324 2012-02-01 - 316fc74 - lavc 54.01.0
325   Add av_fast_padded_malloc() as alternative for av_realloc() when aligned
326   memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZE
327   zero-padded bytes at the end.
328
329 2012-01-31 - dd6d3b0 - lavf 54.01.0
330   Add avformat_get_riff_video_tags() and avformat_get_riff_audio_tags().
331   NOTE: this was backported to 0.8
332
333 2012-01-31 - af08d9a - lavc 54.01.0
334   Add avcodec_is_open() function.
335   NOTE: this was backported to 0.8
336
337 2012-01-30 - 8b93312 - lavu 51.22.0 - intfloat.h
338   Add a new installed header libavutil/intfloat.h with int/float punning
339   functions.
340   NOTE: this was backported to 0.8
341
342 2012-01-25 - lavf 53.22.0
343   f1caf01 Allow doing av_write_frame(ctx, NULL) for flushing possible
344           buffered data within a muxer. Added AVFMT_ALLOW_FLUSH for
345           muxers supporting it (av_write_frame makes sure it is called
346           only for muxers with this flag).
347
348 2012-01-15 - lavc 53.34.0
349   New audio encoding API:
350   b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio
351           encoders.
352   5ee5fa0 Add avcodec_fill_audio_frame() as a convenience function.
353   b2c75b6 Add avcodec_encode_audio2() and deprecate avcodec_encode_audio().
354           Add AVCodec.encode2().
355
356 2012-01-12 - 3167dc9 - lavfi 2.15.0
357   Add a new installed header -- libavfilter/version.h -- with version macros.
358
359 2011-12-08 - a502939 - lavfi 2.52.0
360   Add av_buffersink_poll_frame() to buffersink.h.
361
362 2011-12-08 - 26c6fec - lavu 51.31.0
363   Add av_log_format_line.
364
365 2011-12-03 - 976b095 - lavu 51.30.0
366   Add AVERROR_BUG.
367
368 2011-11-24 - 573ffbb - lavu 51.28.1
369   Add av_get_alt_sample_fmt() to samplefmt.h.
370
371 2011-11-03 - 96949da - lavu 51.23.0
372   Add av_strcasecmp() and av_strncasecmp() to avstring.h.
373
374 2011-10-20 - b35e9e1 - lavu 51.22.0
375   Add av_strtok() to avstring.h.
376
377 2011-01-03 - b73ec05 - lavu 51.21.0
378   Add av_popcount64
379
380 2011-12-18 - 8400b12 - lavc 53.28.1
381   Deprecate AVFrame.age. The field is unused.
382
383 2011-12-12 - 5266045 - lavf 53.17.0
384   Add avformat_close_input().
385   Deprecate av_close_input_file() and av_close_input_stream().
386
387 2011-12-02 - 0eea212 - lavc 53.25.0
388   Add nb_samples and extended_data fields to AVFrame.
389   Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
390   Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
391   avcodec_decode_audio4() writes output samples to an AVFrame, which allows
392   audio decoders to use get_buffer().
393
394 2011-12-04 - 560f773 - lavc 53.24.0
395   Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
396   Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
397   Change AVCodecContext.error[4] to [8] at next major bump.
398   Add AV_NUM_DATA_POINTERS to simplify the bump transition.
399
400 2011-11-23 - bbb46f3 - lavu 51.18.0
401   Add av_samples_get_buffer_size(), av_samples_fill_arrays(), and
402   av_samples_alloc(), to samplefmt.h.
403
404 2011-11-23 - 8889cc4 - lavu 51.17.0
405   Add planar sample formats and av_sample_fmt_is_planar() to samplefmt.h.
406
407 2011-11-19 - f3a29b7 - lavc 53.21.0
408   Move some AVCodecContext fields to a new private struct, AVCodecInternal,
409   which is accessed from a new field, AVCodecContext.internal.
410   - fields moved:
411       AVCodecContext.internal_buffer       --> AVCodecInternal.buffer
412       AVCodecContext.internal_buffer_count --> AVCodecInternal.buffer_count
413       AVCodecContext.is_copy               --> AVCodecInternal.is_copy
414
415 2011-11-16 - 6270671 - lavu 51.16.0
416   Add av_timegm()
417
418 2011-11-13 - lavf 53.15.0
419   New interrupt callback API, allowing per-AVFormatContext/AVIOContext
420   interrupt callbacks.
421   6aa0b98 Add AVIOInterruptCB struct and the interrupt_callback field to
422           AVFormatContext.
423   1dee0ac Add avio_open2() with additional parameters. Those are
424           an interrupt callback and an options AVDictionary.
425           This will allow passing AVOptions to protocols after lavf
426           54.0.
427
428 2011-11-06 - ba04ecf - lavu 51.14.0
429   Add av_strcasecmp() and av_strncasecmp() to avstring.h.
430
431 2011-11-06 - 07b172f - lavu 51.13.0
432   Add av_toupper()/av_tolower()
433
434 2011-11-05 - b6d08f4 - lavf 53.13.0
435   Add avformat_network_init()/avformat_network_deinit()
436
437 2011-10-27 - 512557b - lavc 53.15.0
438   Remove avcodec_parse_frame.
439   Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY.
440
441 2011-10-19 - 569129a - lavf 53.10.0
442   Add avformat_new_stream(). Deprecate av_new_stream().
443
444 2011-10-13 - b631fba - lavf 53.9.0
445   Add AVFMT_NO_BYTE_SEEK AVInputFormat flag.
446
447 2011-10-12 - lavu 51.12.0
448   AVOptions API rewrite.
449
450   - 145f741 FF_OPT_TYPE* renamed to AV_OPT_TYPE_*
451   - new setting/getting functions with slightly different semantics:
452         dac66da av_set_string3 -> av_opt_set
453                 av_set_double  -> av_opt_set_double
454                 av_set_q       -> av_opt_set_q
455                 av_set_int     -> av_opt_set_int
456
457         41d9d51 av_get_string  -> av_opt_get
458                 av_get_double  -> av_opt_get_double
459                 av_get_q       -> av_opt_get_q
460                 av_get_int     -> av_opt_get_int
461
462   - 8c5dcaa trivial rename av_next_option -> av_opt_next
463   - 641c7af new functions - av_opt_child_next, av_opt_child_class_next
464     and av_opt_find2()
465
466 2011-09-22 - a70e787 - lavu 51.17.0
467   Add av_x_if_null().
468
469 2011-09-18 - 645cebb - lavc 53.16.0
470   Add showall flag2
471
472 2011-09-16 - ea8de10 - lavfi 2.42.0
473   Add avfilter_all_channel_layouts.
474
475 2011-09-16 - 9899037 - lavfi 2.41.0
476   Rename avfilter_all_* function names to avfilter_make_all_*.
477
478   In particular, apply the renames:
479   avfilter_all_formats         -> avfilter_make_all_formats
480   avfilter_all_channel_layouts -> avfilter_make_all_channel_layouts
481   avfilter_all_packing_formats -> avfilter_make_all_packing_formats
482
483 2011-09-12 - 4381bdd - lavfi 2.40.0
484   Change AVFilterBufferRefAudioProps.sample_rate type from uint32_t to int.
485
486 2011-09-12 - 2c03174 - lavfi 2.40.0
487   Simplify signature for avfilter_get_audio_buffer(), make it
488   consistent with avfilter_get_video_buffer().
489
490 2011-09-06 - 4f7dfe1 - lavfi 2.39.0
491   Rename libavfilter/vsink_buffer.h to libavfilter/buffersink.h.
492
493 2011-09-06 - c4415f6 - lavfi 2.38.0
494   Unify video and audio sink API.
495
496   In particular, add av_buffersink_get_buffer_ref(), deprecate
497   av_vsink_buffer_get_video_buffer_ref() and change the value for the
498   opaque field passed to the abuffersink init function.
499
500 2011-09-04 - 61e2e29 - lavu 51.16.0
501   Add av_asprintf().
502
503 2011-08-22 - dacd827 - lavf 53.10.0
504   Add av_find_program_from_stream().
505
506 2011-08-20 - 69e2c1a - lavu 51.13.0
507   Add av_get_media_type_string().
508
509 2011-09-03 - fb4ca26 - lavc 53.13.0
510                        lavf 53.11.0
511                        lsws  2.1.0
512   Add {avcodec,avformat,sws}_get_class().
513
514 2011-08-03 - c11fb82 - lavu 51.15.0
515   Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function.
516
517 2011-08-14 - 323b930 - lavu 51.12.0
518   Add av_fifo_peek2(), deprecate av_fifo_peek().
519
520 2011-08-26 - lavu 51.9.0
521   - add41de..abc78a5 Do not include intfloat_readwrite.h,
522     mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h.
523
524 2011-08-16 - 48f9e45 - lavf 53.8.0
525   Add avformat_query_codec().
526
527 2011-08-16 - bca06e7 - lavc 53.11.0
528   Add avcodec_get_type().
529
530 2011-08-06 - 2f63440 - lavf 53.7.0
531   Add error_recognition to AVFormatContext.
532
533 2011-08-02 - 9d39cbf - lavc 53.9.1
534   Add AV_PKT_FLAG_CORRUPT AVPacket flag.
535
536 2011-07-16 - b57df29 - lavfi 2.27.0
537   Add audio packing negotiation fields and helper functions.
538
539   In particular, add AVFilterPacking enum, planar, in_packings and
540   out_packings fields to AVFilterLink, and the functions:
541   avfilter_set_common_packing_formats()
542   avfilter_all_packing_formats()
543
544 2011-07-10 - a67c061 - lavf 53.6.0
545   Add avformat_find_stream_info(), deprecate av_find_stream_info().
546   NOTE: this was backported to 0.7
547
548 2011-07-10 - 0b950fe - lavc 53.8.0
549   Add avcodec_open2(), deprecate avcodec_open().
550   NOTE: this was backported to 0.7
551
552   Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and
553   avcodec_alloc_context2().
554
555 2011-07-01 - b442ca6 - lavf 53.5.0 - avformat.h
556   Add function av_get_output_timestamp().
557
558 2011-06-28 - 5129336 - lavu 51.11.0 - avutil.h
559   Define the AV_PICTURE_TYPE_NONE value in AVPictureType enum.
560
561 2011-06-19 - fd2c0a5 - lavfi 2.23.0 - avfilter.h
562   Add layout negotiation fields and helper functions.
563
564   In particular, add in_chlayouts and out_chlayouts to AVFilterLink,
565   and the functions:
566   avfilter_set_common_sample_formats()
567   avfilter_set_common_channel_layouts()
568   avfilter_all_channel_layouts()
569
570 2011-06-19 - 527ca39 - lavfi 2.22.0 - AVFilterFormats
571   Change type of AVFilterFormats.formats from int * to int64_t *,
572   and update formats handling API accordingly.
573
574   avfilter_make_format_list() still takes a int32_t array and converts
575   it to int64_t. A new function, avfilter_make_format64_list(), that
576   takes int64_t arrays has been added.
577
578 2011-06-19 - 44f669e - lavfi 2.21.0 - vsink_buffer.h
579   Add video sink buffer and vsink_buffer.h public header.
580
581 2011-06-12 - 9fdf772 - lavfi 2.18.0 - avcodec.h
582   Add avfilter_get_video_buffer_ref_from_frame() function in
583   libavfilter/avcodec.h.
584
585 2011-06-12 - c535494 - lavfi 2.17.0 - avfiltergraph.h
586   Add avfilter_inout_alloc() and avfilter_inout_free() functions.
587
588 2011-06-12 - 6119b23 - lavfi 2.16.0 - avfilter_graph_parse()
589   Change avfilter_graph_parse() signature.
590
591 2011-06-23 - 67e9ae1 - lavu 51.8.0 - attributes.h
592   Add av_printf_format().
593
594 2011-06-16 - 05e84c9, 25de595 - lavf 53.2.0 - avformat.h
595   Add avformat_open_input and avformat_write_header().
596   Deprecate av_open_input_stream, av_open_input_file,
597   AVFormatParameters and av_write_header.
598
599 2011-06-16 - 7e83e1c, dc59ec5 - lavu 51.7.0 - opt.h
600   Add av_opt_set_dict() and av_opt_find().
601   Deprecate av_find_opt().
602   Add AV_DICT_APPEND flag.
603
604 2011-06-10 - cb7c11c - lavu 51.6.0 - opt.h
605   Add av_opt_flag_is_set().
606
607 2011-06-10 - c381960 - lavfi 2.15.0 - avfilter_get_audio_buffer_ref_from_arrays
608   Add avfilter_get_audio_buffer_ref_from_arrays() to avfilter.h.
609
610 2011-06-09 - d9f80ea - lavu 51.8.0 - AVMetadata
611   Move AVMetadata from lavf to lavu and rename it to
612   AVDictionary -- new installed header dict.h.
613   All av_metadata_* functions renamed to av_dict_*.
614
615 2011-06-07 - a6703fa - lavu 51.8.0 - av_get_bytes_per_sample()
616   Add av_get_bytes_per_sample() in libavutil/samplefmt.h.
617   Deprecate av_get_bits_per_sample_fmt().
618
619 2011-06-05 - b39b062 - lavu 51.8.0 - opt.h
620   Add av_opt_free convenience function.
621
622 2011-06-06 - 95a0242 - lavfi 2.14.0 - AVFilterBufferRefAudioProps
623   Remove AVFilterBufferRefAudioProps.size, and use nb_samples in
624   avfilter_get_audio_buffer() and avfilter_default_get_audio_buffer() in
625   place of size.
626
627 2011-06-06 - 0bc2cca - lavu 51.6.0 - av_samples_alloc()
628   Switch nb_channels and nb_samples parameters order in
629   av_samples_alloc().
630
631 2011-06-06 - e1c7414 - lavu 51.5.0 - av_samples_*
632   Change the data layout created by av_samples_fill_arrays() and
633   av_samples_alloc().
634
635 2011-06-06 - 27bcf55 - lavfi 2.13.0 - vsrc_buffer.h
636   Make av_vsrc_buffer_add_video_buffer_ref() accepts an additional
637   flags parameter in input.
638
639 2011-06-03 - e977ca2 - lavfi 2.12.0 - avfilter_link_free()
640   Add avfilter_link_free() function.
641
642 2011-06-02 - 5ad38d9 - lavu 51.4.0 - av_force_cpu_flags()
643   Add av_cpu_flags() in libavutil/cpu.h.
644
645 2011-05-28 - e71f260 - lavu 51.3.0 - pixdesc.h
646   Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate
647   avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor.
648
649 2011-05-25 - 30315a8 - lavf 53.3.0 - avformat.h
650   Add fps_probe_size to AVFormatContext.
651
652 2011-05-22 - 5ecdfd0 - lavf 53.2.0 - avformat.h
653   Introduce avformat_alloc_output_context2() and deprecate
654   avformat_alloc_output_context().
655
656 2011-05-22 - 83db719 - lavfi 2.10.0 - vsrc_buffer.h
657   Make libavfilter/vsrc_buffer.h public.
658
659 2011-05-19 - c000a9f - lavfi 2.8.0 - avcodec.h
660   Add av_vsrc_buffer_add_frame() to libavfilter/avcodec.h.
661
662 2011-05-14 - 9fdf772 - lavfi 2.6.0 - avcodec.h
663   Add avfilter_get_video_buffer_ref_from_frame() to libavfilter/avcodec.h.
664
665 2011-05-18 - 64150ff - lavc 53.7.0 - AVCodecContext.request_sample_fmt
666   Add request_sample_fmt field to AVCodecContext.
667
668 2011-05-10 - 188dea1 - lavc 53.6.0 - avcodec.h
669   Deprecate AVLPCType and the following fields in
670   AVCodecContext: lpc_coeff_precision, prediction_order_method,
671   min_partition_order, max_partition_order, lpc_type, lpc_passes.
672   Corresponding FLAC encoder options should be used instead.
673
674 2011-05-07 - 9fdf772 - lavfi 2.5.0 - avcodec.h
675   Add libavfilter/avcodec.h header and avfilter_copy_frame_props()
676   function.
677
678 2011-05-07 - 18ded93 - lavc 53.5.0 - AVFrame
679   Add format field to AVFrame.
680
681 2011-05-07 - 22333a6 - lavc 53.4.0 - AVFrame
682   Add width and height fields to AVFrame.
683
684 2011-05-01 - 35fe66a - lavfi 2.4.0 - avfilter.h
685   Rename AVFilterBufferRefVideoProps.pixel_aspect to
686   sample_aspect_ratio.
687
688 2011-05-01 - 77e9dee - lavc 53.3.0 - AVFrame
689   Add a sample_aspect_ratio field to AVFrame.
690
691 2011-05-01 - 1ba5727 - lavc 53.2.0 - AVFrame
692   Add a pkt_pos field to AVFrame.
693
694 2011-04-29 - 35ceaa7 - lavu 51.2.0 - mem.h
695   Add av_dynarray_add function for adding
696   an element to a dynamic array.
697
698 2011-04-26 - bebe72f - lavu 51.1.0 - avutil.h
699   Add AVPictureType enum and av_get_picture_type_char(), deprecate
700   FF_*_TYPE defines and av_get_pict_type_char() defined in
701   libavcodec/avcodec.h.
702
703 2011-04-26 - 10d3940 - lavfi 2.3.0 - avfilter.h
704   Add pict_type and key_frame fields to AVFilterBufferRefVideo.
705
706 2011-04-26 - 7a11c82 - lavfi 2.2.0 - vsrc_buffer
707   Add sample_aspect_ratio fields to vsrc_buffer arguments
708
709 2011-04-21 - 94f7451 - lavc 53.1.0 - avcodec.h
710   Add CODEC_CAP_SLICE_THREADS for codecs supporting sliced threading.
711
712 2011-04-15 - lavc 52.120.0 - avcodec.h
713   AVPacket structure got additional members for passing side information:
714     4de339e introduce side information for AVPacket
715     2d8591c make containers pass palette change in AVPacket
716
717 2011-04-12 - lavf 52.107.0 - avio.h
718   Avio cleanup, part II - deprecate the entire URLContext API:
719     175389c add avio_check as a replacement for url_exist
720     ff1ec0c add avio_pause and avio_seek_time as replacements
721             for _av_url_read_fseek/fpause
722     cdc6a87 deprecate av_protocol_next(), avio_enum_protocols
723             should be used instead.
724     80c6e23 rename url_set_interrupt_cb->avio_set_interrupt_cb.
725     f87b1b3 rename open flags: URL_* -> AVIO_*
726     f8270bb add avio_enum_protocols.
727     5593f03 deprecate URLProtocol.
728     c486dad deprecate URLContext.
729     026e175 deprecate the typedef for URLInterruptCB
730     8e76a19 deprecate av_register_protocol2.
731     b840484 deprecate URL_PROTOCOL_FLAG_NESTED_SCHEME
732     1305d93 deprecate av_url_read_seek
733     fa104e1 deprecate av_url_read_pause
734     727c7aa deprecate url_get_filename().
735     5958df3 deprecate url_max_packet_size().
736     1869ea0 deprecate url_get_file_handle().
737     32a97d4 deprecate url_filesize().
738     e52a914 deprecate url_close().
739     58a48c6 deprecate url_seek().
740     925e908 deprecate url_write().
741     dce3756 deprecate url_read_complete().
742     bc371ac deprecate url_read().
743     0589da0 deprecate url_open().
744     62eaaea deprecate url_connect.
745     5652bb9 deprecate url_alloc.
746     333e894 deprecate url_open_protocol
747     e230705 deprecate url_poll and URLPollEntry
748
749 2011-04-08 - lavf 52.106.0 - avformat.h
750   Minor avformat.h cleanup:
751     a9bf9d8 deprecate av_guess_image2_codec
752     c3675df rename avf_sdp_create->av_sdp_create
753
754 2011-04-03 - lavf 52.105.0 - avio.h
755   Large-scale renaming/deprecating of AVIOContext-related functions:
756     724f6a0 deprecate url_fdopen
757     403ee83 deprecate url_open_dyn_packet_buf
758     6dc7d80 rename url_close_dyn_buf       -> avio_close_dyn_buf
759     b92c545 rename url_open_dyn_buf        -> avio_open_dyn_buf
760     8978fed introduce an AVIOContext.seekable field as a replacement for
761             AVIOContext.is_streamed and url_is_streamed()
762     b64030f deprecate get_checksum()
763     4c4427a deprecate init_checksum()
764     4ec153b deprecate udp_set_remote_url/get_local_port
765     933e90a deprecate av_url_read_fseek/fpause
766     8d9769a deprecate url_fileno
767     b7f2fdd rename put_flush_packet -> avio_flush
768     35f1023 deprecate url_close_buf
769     83fddae deprecate url_open_buf
770     d9d86e0 rename url_fprintf -> avio_printf
771     59f65d9 deprecate url_setbufsize
772     3e68b3b deprecate url_ferror
773     e8bb2e2 deprecate url_fget_max_packet_size
774     76aa876 rename url_fsize -> avio_size
775     e519753 deprecate url_fgetc
776     655e45e deprecate url_fgets
777     a2704c9 rename url_ftell -> avio_tell
778     e16ead0 deprecate get_strz() in favor of avio_get_str
779     0300db8,2af07d3 rename url_fskip -> avio_skip
780     6b4aa5d rename url_fseek -> avio_seek
781     61840b4 deprecate put_tag
782     22a3212 rename url_fopen/fclose -> avio_open/close.
783     0ac8e2b deprecate put_nbyte
784     77eb550 rename put_byte          -> avio_w8
785                    put_[b/l]e<type>  -> avio_w[b/l]<type>
786                    put_buffer        -> avio_write
787     b7effd4 rename get_byte          -> avio_r8,
788                    get_[b/l]e<type>  -> avio_r[b/l]<type>
789                    get_buffer        -> avio_read
790     b3db9ce deprecate get_partial_buffer
791     8d9ac96 rename av_alloc_put_byte -> avio_alloc_context
792
793 2011-03-25 - 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type
794   Add audio_service_type field to AVCodecContext.
795
796 2011-03-17 - e309fdc - lavu 50.40.0 - pixfmt.h
797   Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
798
799 2011-03-02 - 863c471 - lavf  52.103.0 - av_pkt_dump2, av_pkt_dump_log2
800   Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
801   source stream timebase for outputting timestamps. Deprecate
802   av_pkt_dump and av_pkt_dump_log.
803
804 2011-02-20 - e731b8d - lavf  52.102.0 - avio.h
805   * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the
806               original, and move it to a private header so it is no longer
807               part of our public API. Instead, use av_alloc_put_byte().
808   * ae628ec - rename ByteIOContext to AVIOContext.
809
810 2011-02-16 - 09d171b - lavf  52.101.0 - avformat.h
811                        lavu  52.39.0  - parseutils.h
812   * 610219a - Add av_ prefix to dump_format().
813   * f6c7375 - Replace parse_date() in lavf with av_parse_time() in lavu.
814   * ab0287f - Move find_info_tag from lavf to lavu and add av_prefix to it.
815
816 2011-02-15 - lavu 52.38.0 - merge libavcore
817   libavcore is merged back completely into libavutil
818
819 2011-02-10 - 55bad0c - lavc 52.113.0 - vbv_delay
820   Add vbv_delay field to AVCodecContext
821
822 2011-02-14 - 24a83bd - lavf 52.100.0 - AV_DISPOSITION_CLEAN_EFFECTS
823   Add AV_DISPOSITION_CLEAN_EFFECTS disposition flag.
824
825 2011-02-14 - 910b5b8 - lavfi 1.76.0 - AVFilterLink sample_aspect_ratio
826   Add sample_aspect_ratio field to AVFilterLink.
827
828 2011-02-10 - 12c14cd - lavf 52.99.0 - AVStream.disposition
829   Add AV_DISPOSITION_HEARING_IMPAIRED and AV_DISPOSITION_VISUAL_IMPAIRED.
830
831 2011-02-09 - 5592734 - lavc 52.112.0 - avcodec_thread_init()
832   Deprecate avcodec_thread_init()/avcodec_thread_free() use; instead
833   set thread_count before calling avcodec_open.
834
835 2011-02-09 - 778b08a - lavc 52.111.0 - threading API
836   Add CODEC_CAP_FRAME_THREADS with new restrictions on get_buffer()/
837   release_buffer()/draw_horiz_band() callbacks for appropriate codecs.
838   Add thread_type and active_thread_type fields to AVCodecContext.
839
840 2011-02-08 - 3940caa - lavf 52.98.0 - av_probe_input_buffer
841   Add av_probe_input_buffer() to avformat.h for probing format from a
842   ByteIOContext.
843
844 2011-02-06 - fe174fc - lavf 52.97.0 - avio.h
845   Add flag for non-blocking protocols: URL_FLAG_NONBLOCK
846
847 2011-02-04 - f124b08 - lavf 52.96.0 - avformat_free_context()
848   Add avformat_free_context() in avformat.h.
849
850 2011-02-03 - f5b82f4 - lavc 52.109.0 - add CODEC_ID_PRORES
851   Add CODEC_ID_PRORES to avcodec.h.
852
853 2011-02-03 - fe9a3fb - lavc 52.109.0 - H.264 profile defines
854   Add defines for H.264 * Constrained Baseline and Intra profiles
855
856 2011-02-02 - lavf 52.95.0
857   * 50196a9 - add a new installed header version.h.
858   * 4efd5cf, dccbd97, 93b78d1 - add several variants of public
859     avio_{put,get}_str* functions.  Deprecate corresponding semi-public
860     {put,get}_str*.
861
862 2011-02-02 - dfd2a00 - lavu 50.37.0 - log.h
863   Make av_dlog public.
864
865 2011-01-31 - 7b3ea55 - lavfi 1.76.0 - vsrc_buffer
866   Add sample_aspect_ratio fields to vsrc_buffer arguments
867
868 2011-01-31 - 910b5b8 - lavfi 1.75.0 - AVFilterLink sample_aspect_ratio
869   Add sample_aspect_ratio field to AVFilterLink.
870
871 2011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps
872   Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples.
873
874 2011-01-14 - 7f88a5b - lavf 52.93.0 - av_metadata_copy()
875   Add av_metadata_copy() in avformat.h.
876
877 2011-01-07 - 81c623f - lavc 52.107.0 - deprecate reordered_opaque
878   Deprecate reordered_opaque in favor of pkt_pts/dts.
879
880 2011-01-07 - 1919fea - lavc 52.106.0 - pkt_dts
881   Add pkt_dts to AVFrame, this will in the future allow multithreading decoders
882   to not mess up dts.
883
884 2011-01-07 - 393cbb9 - lavc 52.105.0 - pkt_pts
885   Add pkt_pts to AVFrame.
886
887 2011-01-07 - 060ec0a - lavc 52.104.0 - av_get_profile_name()
888   Add av_get_profile_name to libavcodec/avcodec.h.
889
890 2010-12-27 - 0ccabee - lavfi 1.71.0 - AV_PERM_NEG_LINESIZES
891   Add AV_PERM_NEG_LINESIZES in avfilter.h.
892
893 2010-12-27 - 9128ae0 - lavf 52.91.0 - av_find_best_stream()
894   Add av_find_best_stream to libavformat/avformat.h.
895
896 2010-12-27 - 107a7e3 - lavf 52.90.0
897   Add AVFMT_NOSTREAMS flag for formats with no streams,
898   like e.g. text metadata.
899
900 2010-12-22 - 0328b9e - lavu 50.36.0 - file.h
901   Add functions av_file_map() and av_file_unmap() in file.h.
902
903 2010-12-19 - 0bc55f5 - lavu 50.35.0 - error.h
904   Add "not found" error codes:
905   AVERROR_DEMUXER_NOT_FOUND
906   AVERROR_MUXER_NOT_FOUND
907   AVERROR_DECODER_NOT_FOUND
908   AVERROR_ENCODER_NOT_FOUND
909   AVERROR_PROTOCOL_NOT_FOUND
910   AVERROR_FILTER_NOT_FOUND
911   AVERROR_BSF_NOT_FOUND
912   AVERROR_STREAM_NOT_FOUND
913
914 2010-12-09 - c61cdd0 - lavcore 0.16.0 - avcore.h
915   Move AV_NOPTS_VALUE, AV_TIME_BASE, AV_TIME_BASE_Q symbols from
916   avcodec.h to avcore.h.
917
918 2010-12-04 - 16cfc96 - lavc 52.98.0 - CODEC_CAP_NEG_LINESIZES
919   Add CODEC_CAP_NEG_LINESIZES codec capability flag in avcodec.h.
920
921 2010-12-04 - bb4afa1 - lavu 50.34.0 - av_get_pix_fmt_string()
922   Deprecate avcodec_pix_fmt_string() in favor of
923   pixdesc.h/av_get_pix_fmt_string().
924
925 2010-12-04 - 4da12e3 - lavcore 0.15.0 - av_image_alloc()
926   Add av_image_alloc() to libavcore/imgutils.h.
927
928 2010-12-02 - 037be76 - lavfi 1.67.0 - avfilter_graph_create_filter()
929   Add function avfilter_graph_create_filter() in avfiltergraph.h.
930
931 2010-11-25 - 4723bc2 - lavfi 1.65.0 - avfilter_get_video_buffer_ref_from_arrays()
932   Add function avfilter_get_video_buffer_ref_from_arrays() in
933   avfilter.h.
934
935 2010-11-21 - 176a615 - lavcore 0.14.0 - audioconvert.h
936   Add a public audio channel API in audioconvert.h, and deprecate the
937   corresponding functions in libavcodec:
938   avcodec_get_channel_name()
939   avcodec_get_channel_layout()
940   avcodec_get_channel_layout_string()
941   avcodec_channel_layout_num_channels()
942   and the CH_* macros defined in libavcodec/avcodec.h.
943
944 2010-11-21 - 6bfc268 - lavf 52.85.0 - avformat.h
945   Add av_append_packet().
946
947 2010-11-21 - a08d918 - lavc 52.97.0 - avcodec.h
948   Add av_grow_packet().
949
950 2010-11-17 - 0985e1a - lavcore 0.13.0 - parseutils.h
951   Add av_parse_color() declared in libavcore/parseutils.h.
952
953 2010-11-13 - cb2c971 - lavc 52.95.0 - AVCodecContext
954   Add AVCodecContext.subtitle_header and AVCodecContext.subtitle_header_size
955   fields.
956
957 2010-11-13 - 5aaea02 - lavfi 1.62.0 - avfiltergraph.h
958   Make avfiltergraph.h public.
959
960 2010-11-13 - 4fcbb2a - lavfi 1.61.0 - avfiltergraph.h
961   Remove declarations from avfiltergraph.h for the functions:
962   avfilter_graph_check_validity()
963   avfilter_graph_config_links()
964   avfilter_graph_config_formats()
965   which are now internal.
966   Use avfilter_graph_config() instead.
967
968 2010-11-08 - d2af720 - lavu 50.33.0 - eval.h
969   Deprecate functions:
970   av_parse_and_eval_expr(),
971   av_parse_expr(),
972   av_eval_expr(),
973   av_free_expr(),
974   in favor of the functions:
975   av_expr_parse_and_eval(),
976   av_expr_parse(),
977   av_expr_eval(),
978   av_expr_free().
979
980 2010-11-08 - 24de0ed - lavfi 1.59.0 - avfilter_free()
981   Rename avfilter_destroy() to avfilter_free().
982   This change breaks libavfilter API/ABI.
983
984 2010-11-07 - 1e80a0e - lavfi 1.58.0 - avfiltergraph.h
985   Remove graphparser.h header, move AVFilterInOut and
986   avfilter_graph_parse() declarations to libavfilter/avfiltergraph.h.
987
988 2010-11-07 - 7313132 - lavfi 1.57.0 - AVFilterInOut
989   Rename field AVFilterInOut.filter to AVFilterInOut.filter_ctx.
990   This change breaks libavfilter API.
991
992 2010-11-04 - 97dd1e4 - lavfi 1.56.0 - avfilter_graph_free()
993   Rename avfilter_graph_destroy() to avfilter_graph_free().
994   This change breaks libavfilter API/ABI.
995
996 2010-11-04 - e15aeea - lavfi 1.55.0 - avfilter_graph_alloc()
997   Add avfilter_graph_alloc() to libavfilter/avfiltergraph.h.
998
999 2010-11-02 - 6f84cd1 - lavcore 0.12.0 - av_get_bits_per_sample_fmt()
1000   Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and
1001   deprecate av_get_bits_per_sample_format().
1002
1003 2010-11-02 - d63e456 - lavcore 0.11.0 - samplefmt.h
1004   Add sample format functions in libavcore/samplefmt.h:
1005   av_get_sample_fmt_name(),
1006   av_get_sample_fmt(),
1007   av_get_sample_fmt_string(),
1008   and deprecate the corresponding libavcodec/audioconvert.h functions:
1009   avcodec_get_sample_fmt_name(),
1010   avcodec_get_sample_fmt(),
1011   avcodec_sample_fmt_string().
1012
1013 2010-11-02 - 262d1c5 - lavcore 0.10.0 - samplefmt.h
1014   Define enum AVSampleFormat in libavcore/samplefmt.h, deprecate enum
1015   SampleFormat.
1016
1017 2010-10-16 - 2a24df9 - lavfi 1.52.0 - avfilter_graph_config()
1018   Add the function avfilter_graph_config() in avfiltergraph.h.
1019
1020 2010-10-15 - 03700d3 - lavf 52.83.0 - metadata API
1021   Change demuxers to export metadata in generic format and
1022   muxers to accept generic format. Deprecate the public
1023   conversion API.
1024
1025 2010-10-10 - 867ae7a - lavfi 1.49.0 - AVFilterLink.time_base
1026   Add time_base field to AVFilterLink.
1027
1028 2010-09-27 - c85eef4 - lavu 50.31.0 - av_set_options_string()
1029   Move av_set_options_string() from libavfilter/parseutils.h to
1030   libavutil/opt.h.
1031
1032 2010-09-27 - acc0490 - lavfi 1.47.0 - AVFilterLink
1033   Make the AVFilterLink fields srcpad and dstpad store the pointers to
1034   the source and destination pads, rather than their indexes.
1035
1036 2010-09-27 - 372e288 - lavu 50.30.0 - av_get_token()
1037   Move av_get_token() from libavfilter/parseutils.h to
1038   libavutil/avstring.h.
1039
1040 2010-09-26 - 635d4ae - lsws 0.12.0 - swscale.h
1041   Add the functions sws_alloc_context() and sws_init_context().
1042
1043 2010-09-26 - 6ed0404 - lavu 50.29.0 - opt.h
1044   Move libavcodec/opt.h to libavutil/opt.h.
1045
1046 2010-09-24 - 1c1c80f - lavu 50.28.0 - av_log_set_flags()
1047   Default of av_log() changed due to many problems to the old no repeat
1048   detection. Read the docs of AV_LOG_SKIP_REPEATED in log.h before
1049   enabling it for your app!.
1050
1051 2010-09-24 - f66eb58 - lavc 52.90.0 - av_opt_show2()
1052   Deprecate av_opt_show() in favor or av_opt_show2().
1053
1054 2010-09-14 - bc6f0af - lavu 50.27.0 - av_popcount()
1055   Add av_popcount() to libavutil/common.h.
1056
1057 2010-09-08 - c6c98d0 - lavu 50.26.0 - av_get_cpu_flags()
1058   Add av_get_cpu_flags().
1059
1060 2010-09-07 - 34017fd - lavcore 0.9.0 - av_image_copy()
1061   Add av_image_copy().
1062
1063 2010-09-07 - 9686abb - lavcore 0.8.0 - av_image_copy_plane()
1064   Add av_image_copy_plane().
1065
1066 2010-09-07 - 9b7269e - lavcore 0.7.0 - imgutils.h
1067   Adopt hierarchical scheme for the imgutils.h function names,
1068   deprecate the old names.
1069
1070 2010-09-04 - 7160bb7 - lavu 50.25.0 - AV_CPU_FLAG_*
1071   Deprecate the FF_MM_* flags defined in libavcodec/avcodec.h in favor
1072   of the AV_CPU_FLAG_* flags defined in libavutil/cpu.h.
1073
1074 2010-08-26 - 5da19b5 - lavc 52.87.0 - avcodec_get_channel_layout()
1075   Add avcodec_get_channel_layout() in audioconvert.h.
1076
1077 2010-08-20 - e344336 - lavcore 0.6.0 - av_fill_image_max_pixsteps()
1078   Rename av_fill_image_max_pixstep() to av_fill_image_max_pixsteps().
1079
1080 2010-08-18 - a6ddf8b - lavcore 0.5.0 - av_fill_image_max_pixstep()
1081   Add av_fill_image_max_pixstep() in imgutils.h.
1082
1083 2010-08-17 - 4f2d2e4 - lavu 50.24.0 - AV_NE()
1084   Add the AV_NE macro.
1085
1086 2010-08-17 - ad2c950 - lavfi 1.36.0 - audio framework
1087   Implement AVFilterBufferRefAudioProps struct for audio properties,
1088   get_audio_buffer(), filter_samples() functions and related changes.
1089
1090 2010-08-12 - 81c1eca - lavcore 0.4.0 - av_get_image_linesize()
1091   Add av_get_image_linesize() in imgutils.h.
1092
1093 2010-08-11 - c1db7bf - lavfi 1.34.0 - AVFilterBufferRef
1094   Resize data and linesize arrays in AVFilterBufferRef to 8.
1095
1096   This change breaks libavfilter API/ABI.
1097
1098 2010-08-11 - 9f08d80 - lavc 52.85.0 - av_picture_data_copy()
1099   Add av_picture_data_copy in avcodec.h.
1100
1101 2010-08-11 - 84c0386 - lavfi 1.33.0 - avfilter_open()
1102   Change avfilter_open() signature:
1103   AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name) ->
1104   int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);
1105
1106   This change breaks libavfilter API/ABI.
1107
1108 2010-08-11 - cc80caf - lavfi 1.32.0 - AVFilterBufferRef
1109   Add a type field to AVFilterBufferRef, and move video specific
1110   properties to AVFilterBufferRefVideoProps.
1111
1112   This change breaks libavfilter API/ABI.
1113
1114 2010-08-07 - 5d4890d - lavfi 1.31.0 - AVFilterLink
1115   Rename AVFilterLink fields:
1116   AVFilterLink.srcpic    ->  AVFilterLink.src_buf
1117   AVFilterLink.cur_pic   ->  AVFilterLink.cur_buf
1118   AVFilterLink.outpic    ->  AVFilterLink.out_buf
1119
1120 2010-08-07 - 7fce481 - lavfi 1.30.0
1121   Rename functions and fields:
1122   avfilter_(un)ref_pic       -> avfilter_(un)ref_buffer
1123   avfilter_copy_picref_props -> avfilter_copy_buffer_ref_props
1124   AVFilterBufferRef.pic      -> AVFilterBufferRef.buffer
1125
1126 2010-08-07 - ecc8dad - lavfi 1.29.0 - AVFilterBufferRef
1127   Rename AVFilterPicRef to AVFilterBufferRef.
1128
1129 2010-08-07 - d54e094 - lavfi 1.28.0 - AVFilterBuffer
1130   Move format field from AVFilterBuffer to AVFilterPicRef.
1131
1132 2010-08-06 - bf176f5 - lavcore 0.3.0 - av_check_image_size()
1133   Deprecate avcodec_check_dimensions() in favor of the function
1134   av_check_image_size() defined in libavcore/imgutils.h.
1135
1136 2010-07-30 - 56b5e9d - lavfi 1.27.0 - AVFilterBuffer
1137   Increase size of the arrays AVFilterBuffer.data and
1138   AVFilterBuffer.linesize from 4 to 8.
1139
1140   This change breaks libavfilter ABI.
1141
1142 2010-07-29 - e7bd48a - lavcore 0.2.0 - imgutils.h
1143   Add functions av_fill_image_linesizes() and
1144   av_fill_image_pointers(), declared in libavcore/imgutils.h.
1145
1146 2010-07-27 - 126b638 - lavcore 0.1.0 - parseutils.h
1147   Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
1148   defined in libavcodec in favor of the newly added functions
1149   av_parse_video_size() and av_parse_video_rate() declared in
1150   libavcore/parseutils.h.
1151
1152 2010-07-23 - 4485247 - lavu 50.23.0 - mathematics.h
1153   Add the M_PHI constant definition.
1154
1155 2010-07-22 - bdab614 - lavfi 1.26.0 - media format generalization
1156   Add a type field to AVFilterLink.
1157
1158   Change the field types:
1159   enum PixelFormat format   -> int format   in AVFilterBuffer
1160   enum PixelFormat *formats -> int *formats in AVFilterFormats
1161   enum PixelFormat *format  -> int format   in AVFilterLink
1162
1163   Change the function signatures:
1164   AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); ->
1165   AVFilterFormats *avfilter_make_format_list(const int *fmts);
1166
1167   int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); ->
1168   int avfilter_add_format    (AVFilterFormats **avff, int fmt);
1169
1170   AVFilterFormats *avfilter_all_colorspaces(void); ->
1171   AVFilterFormats *avfilter_all_formats    (enum AVMediaType type);
1172
1173   This change breaks libavfilter API/ABI.
1174
1175 2010-07-21 - aac6ca6 - lavcore 0.0.0
1176   Add libavcore.
1177
1178 2010-07-17 - b5c582f - lavfi 1.25.0 - AVFilterBuffer
1179   Remove w and h fields from AVFilterBuffer.
1180
1181 2010-07-17 - f0d77b2 - lavfi 1.24.0 - AVFilterBuffer
1182   Rename AVFilterPic to AVFilterBuffer.
1183
1184 2010-07-17 - 57fe80f - lavf 52.74.0 - url_fskip()
1185   Make url_fskip() return an int error code instead of void.
1186
1187 2010-07-11 - 23940f1 - lavc 52.83.0
1188   Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields.
1189   Add AVLPCType enum.
1190   Deprecate AVCodecContext.use_lpc.
1191
1192 2010-07-11 - e1d7c88 - lavc 52.82.0 - avsubtitle_free()
1193   Add a function for free the contents of a AVSubtitle generated by
1194   avcodec_decode_subtitle.
1195
1196 2010-07-11 - b91d08f - lavu 50.22.0 - bswap.h and intreadwrite.h
1197   Make the bswap.h and intreadwrite.h API public.
1198
1199 2010-07-08 - ce1cd1c - lavu 50.21.0 - pixdesc.h
1200   Rename read/write_line() to av_read/write_image_line().
1201
1202 2010-07-07 - 4d508e4 - lavfi 1.21.0 - avfilter_copy_picref_props()
1203   Add avfilter_copy_picref_props().
1204
1205 2010-07-03 - 2d525ef - lavc 52.79.0
1206   Add FF_COMPLIANCE_UNOFFICIAL and change all instances of
1207   FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL.
1208
1209 2010-07-02 - 89eec74 - lavu 50.20.0 - lfg.h
1210   Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through
1211   lfg.h.
1212
1213 2010-06-28 - a52e2c3 - lavfi 1.20.1 - av_parse_color()
1214   Extend av_parse_color() syntax, make it accept an alpha value specifier and
1215   set the alpha value to 255 by default.
1216
1217 2010-06-22 - 735cf6b - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class
1218   Add priv_data_size and priv_data_class to URLProtocol.
1219
1220 2010-06-22 - ffbb289 - lavf 52.70.0 - url_alloc(), url_connect()
1221   Add url_alloc() and url_connect().
1222
1223 2010-06-22 - 9b07a2d - lavf 52.69.0 - av_register_protocol2()
1224   Add av_register_protocol2(), deprecating av_register_protocol().
1225
1226 2010-06-09 - 65db058 - lavu 50.19.0 - av_compare_mod()
1227   Add av_compare_mod() to libavutil/mathematics.h.
1228
1229 2010-06-05 - 0b99215 - lavu 50.18.0 - eval API
1230   Make the eval API public.
1231
1232 2010-06-04 - 31878fc - lavu 50.17.0 - AV_BASE64_SIZE
1233   Add AV_BASE64_SIZE() macro.
1234
1235 2010-06-02 - 7e566bb - lavc 52.73.0 - av_get_codec_tag_string()
1236   Add av_get_codec_tag_string().
1237
1238 2010-06-01 - 2b99142 - lsws 0.11.0 - convertPalette API
1239   Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24().
1240
1241 2010-05-26 - 93ebfee - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL
1242   Add CODEC_CAP_EXPERIMENTAL flag.
1243   NOTE: this was backported to 0.6
1244
1245 2010-05-23 - 9977863 - lavu 50.16.0 - av_get_random_seed()
1246   Add av_get_random_seed().
1247
1248 2010-05-18 - 796ac23 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT
1249   Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags.
1250   NOTE: this was backported to 0.6
1251
1252 2010-05-09 - b6bc205 - lavfi 1.20.0 - AVFilterPicRef
1253   Add interlaced and top_field_first fields to AVFilterPicRef.
1254
1255 ------------------------------8<-------------------------------------
1256                    0.6 branch was cut here
1257 ----------------------------->8--------------------------------------
1258
1259 2010-05-01 - 8e2ee18 - lavf 52.62.0 - probe function
1260   Add av_probe_input_format2 to API, it allows ignoring probe
1261   results below given score and returns the actual probe score.
1262
1263 2010-04-01 - 3dd6180 - lavf 52.61.0 - metadata API
1264   Add a flag for av_metadata_set2() to disable overwriting of
1265   existing tags.
1266
1267 2010-04-01 - 0fb49b5 - lavc 52.66.0
1268   Add avcodec_get_edge_width().
1269
1270 2010-03-31 - d103218 - lavc 52.65.0
1271   Add avcodec_copy_context().
1272
1273 2010-03-31 - 1a70d12 - lavf 52.60.0 - av_match_ext()
1274   Make av_match_ext() public.
1275
1276 2010-03-31 - 1149150 - lavu 50.14.0 - AVMediaType
1277   Move AVMediaType enum from libavcodec to libavutil.
1278
1279 2010-03-31 - 72415b2 - lavc 52.64.0 - AVMediaType
1280   Define AVMediaType enum, and use it instead of enum CodecType, which
1281   is deprecated and will be dropped at the next major bump.
1282
1283 2010-03-25 - 8795823 - lavu 50.13.0 - av_strerror()
1284   Implement av_strerror().
1285
1286 2010-03-23 - e1484eb - lavc 52.60.0 - av_dct_init()
1287   Support DCT-I and DST-I.
1288
1289 2010-03-15 - b8819c8 - lavf 52.56.0 - AVFormatContext.start_time_realtime
1290   Add AVFormatContext.start_time_realtime field.
1291
1292 2010-03-13 - 5bb5c1d - lavfi 1.18.0 - AVFilterPicRef.pos
1293   Add AVFilterPicRef.pos field.
1294
1295 2010-03-13 - 60c144f - lavu 50.12.0 - error.h
1296   Move error code definitions from libavcodec/avcodec.h to
1297   the new public header libavutil/error.h.
1298
1299 2010-03-07 - c709483 - lavc 52.56.0 - avfft.h
1300   Add public FFT interface.
1301
1302 2010-03-06 - ac6ef86 - lavu 50.11.0 - av_stristr()
1303   Add av_stristr().
1304
1305 2010-03-03 - 4b83fc0 - lavu 50.10.0 - av_tree_enumerate()
1306   Add av_tree_enumerate().
1307
1308 2010-02-07 - b687c1a - lavu 50.9.0 - av_compare_ts()
1309   Add av_compare_ts().
1310
1311 2010-02-05 - 3f3dc76 - lsws 0.10.0 - sws_getCoefficients()
1312   Add sws_getCoefficients().
1313
1314 2010-02-01 - ca76a11 - lavf 52.50.0 - metadata API
1315   Add a list of generic tag names, change 'author' -> 'artist',
1316   'year' -> 'date'.
1317
1318 2010-01-30 - 80a07f6 - lavu 50.8.0 - av_get_pix_fmt()
1319   Add av_get_pix_fmt().
1320
1321 2010-01-21 - 01cc47d - lsws 0.9.0 - sws_scale()
1322   Change constness attributes of sws_scale() parameters.
1323
1324 2010-01-10 - 3fb8e77 - lavfi 1.15.0 - avfilter_graph_config_links()
1325   Add a log_ctx parameter to avfilter_graph_config_links().
1326
1327 2010-01-07 - 8e9767f - lsws 0.8.0 - sws_isSupported{In,Out}put()
1328   Add sws_isSupportedInput() and sws_isSupportedOutput() functions.
1329
1330 2010-01-06 - c1d662f - lavfi 1.14.0 - avfilter_add_colorspace()
1331   Change the avfilter_add_colorspace() signature, make it accept an
1332   (AVFilterFormats **) rather than an (AVFilterFormats *) as before.
1333
1334 2010-01-03 - 4fd1f18 - lavfi 1.13.0 - avfilter_add_colorspace()
1335   Add avfilter_add_colorspace().
1336
1337 2010-01-02 - 8eb631f - lavf 52.46.0 - av_match_ext()
1338   Add av_match_ext(), it should be used in place of match_ext().
1339
1340 2010-01-01 - a1f547b - lavf 52.45.0 - av_guess_format()
1341   Add av_guess_format(), it should be used in place of guess_format().
1342
1343 2009-12-13 - a181981 - lavf 52.43.0 - metadata API
1344   Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and
1345   AV_METADATA_DONT_STRDUP_VAL.
1346
1347 2009-12-13 - 277c733 - lavu 50.7.0 - avstring.h API
1348   Add av_d2str().
1349
1350 2009-12-13 - 02b398e - lavc 52.42.0 - AVStream
1351   Add avg_frame_rate.
1352
1353 2009-12-12 - 3ba69a1 - lavu 50.6.0 - av_bmg_next()
1354   Introduce the av_bmg_next() function.
1355
1356 2009-12-05 - a13a543 - lavfi 1.12.0 - avfilter_draw_slice()
1357   Add a slice_dir parameter to avfilter_draw_slice().
1358
1359 2009-11-26 - 4cc3f6a - lavfi 1.11.0 - AVFilter
1360   Remove the next field from AVFilter, this is not anymore required.
1361
1362 2009-11-25 - 1433c4a - lavfi 1.10.0 - avfilter_next()
1363   Introduce the avfilter_next() function.
1364
1365 2009-11-25 - 86a60fa - lavfi 1.9.0 - avfilter_register()
1366   Change the signature of avfilter_register() to make it return an
1367   int. This is required since now the registration operation may fail.
1368
1369 2009-11-25 - 74a0059 - lavu 50.5.0 - pixdesc.h API
1370   Make the pixdesc.h API public.
1371
1372 2009-10-27 - 243110f - lavfi 1.5.0 - AVFilter.next
1373   Add a next field to AVFilter, this is used for simplifying the
1374   registration and management of the registered filters.
1375
1376 2009-10-23 - cccd292 - lavfi 1.4.1 - AVFilter.description
1377   Add a description field to AVFilter.
1378
1379 2009-10-19 - 6b5dc05 - lavfi 1.3.0 - avfilter_make_format_list()
1380   Change the interface of avfilter_make_format_list() from
1381   avfilter_make_format_list(int n, ...) to
1382   avfilter_make_format_list(enum PixelFormat *pix_fmts).
1383
1384 2009-10-18 - 0eb4ff9 - lavfi 1.0.0 - avfilter_get_video_buffer()
1385   Make avfilter_get_video_buffer() recursive and add the w and h
1386   parameters to it.
1387
1388 2009-10-07 - 46c40e4 - lavfi 0.5.1 - AVFilterPic
1389   Add w and h fields to AVFilterPic.
1390
1391 2009-06-22 - 92400be - lavf 52.34.1 - AVFormatContext.packet_size
1392   This is now an unsigned int instead of a signed int.
1393
1394 2009-06-19 - a4276ba - lavc 52.32.0 - AVSubtitle.pts
1395   Add a pts field to AVSubtitle which gives the subtitle packet pts
1396   in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will
1397   not work right without this.
1398
1399 2009-06-03 - 8f3f2e0 - lavc 52.30.2 - AV_PKT_FLAG_KEY
1400   PKT_FLAG_KEY has been deprecated and will be dropped at the next
1401   major version. Use AV_PKT_FLAG_KEY instead.
1402
1403 2009-06-01 - f988ce6 - lavc 52.30.0 - av_lockmgr_register()
1404   av_lockmgr_register() can be used to register a callback function
1405   that lavc (and in the future, libraries that depend on lavc) can use
1406   to implement mutexes. The application should provide a callback function
1407   that implements the AV_LOCK_* operations described in avcodec.h.
1408   When the lock manager is registered, FFmpeg is guaranteed to behave
1409   correctly in a multi-threaded application.
1410
1411 2009-04-30 - ce1d9c8 - lavc 52.28.0 - av_free_packet()
1412   av_free_packet() is no longer an inline function. It is now exported.
1413
1414 2009-04-11 - 80d403f - lavc 52.25.0 - deprecate av_destruct_packet_nofree()
1415   Please use NULL instead. This has been supported since r16506
1416   (lavf > 52.23.1, lavc > 52.10.0).
1417
1418 2009-04-07 - 7a00bba - lavc 52.23.0 - avcodec_decode_video/audio/subtitle
1419   The old decoding functions are deprecated, all new code should use the
1420   new functions avcodec_decode_video2(), avcodec_decode_audio3() and
1421   avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt
1422   argument instead of a const uint8_t *buf / int buf_size pair.
1423
1424 2009-04-03 - 7b09db3 - lavu 50.3.0 - av_fifo_space()
1425   Introduce the av_fifo_space() function.
1426
1427 2009-04-02 - fabd246 - lavc 52.23.0 - AVPacket
1428   Move AVPacket declaration from libavformat/avformat.h to
1429   libavcodec/avcodec.h.
1430
1431 2009-03-22 - 6e08ca9 - lavu 50.2.0 - RGB32 pixel formats
1432   Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR,
1433   PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values.
1434   Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and
1435   PIX_FMT_BGR32_1 are now macros.
1436   avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases.
1437   Re-sort the enum PixelFormat list accordingly.
1438   This change breaks API/ABI backward compatibility.
1439
1440 2009-03-22 - f82674e - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants
1441   Add the enum PixelFormat values:
1442   PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE,
1443   PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE.
1444
1445 2009-03-21 - ee6624e - lavu 50.0.0  - av_random*
1446   The Mersenne Twister PRNG implemented through the av_random* functions
1447   was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions
1448   instead.
1449
1450 2009-03-08 - 41dd680 - lavu 50.0.0  - AVFifoBuffer
1451   av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped
1452   and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write
1453   and av_fifo_realloc2.
1454   In addition, the order of the function arguments of av_fifo_generic_read
1455   was changed to match av_fifo_generic_write.
1456   The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by
1457   applications, they may not use sizeof() or directly access members.
1458
1459 2009-03-01 - ec26457 - lavf 52.31.0 - Generic metadata API
1460   Introduce a new metadata API (see av_metadata_get() and friends).
1461   The old API is now deprecated and should not be used anymore. This especially
1462   includes the following structure fields:
1463     - AVFormatContext.title
1464     - AVFormatContext.author
1465     - AVFormatContext.copyright
1466     - AVFormatContext.comment
1467     - AVFormatContext.album
1468     - AVFormatContext.year
1469     - AVFormatContext.track
1470     - AVFormatContext.genre
1471     - AVStream.language
1472     - AVStream.filename
1473     - AVProgram.provider_name
1474     - AVProgram.name
1475     - AVChapter.title