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