lavc: postpone the removal of request_channels API.
[libav.git] / doc / APIchanges
CommitLineData
ab1adff7
DB
1Never assume the API of libav* to be stable unless at least 1 month has passed
2since the last major version increase.
3
06d19718 4The last version increases were:
c8af852b
JR
5libavcodec: 2012-01-27
6libavdevice: 2011-04-18
58b049f2 7libavfilter: 2012-06-22
c8af852b 8libavformat: 2012-01-27
9cac8a51 9libavresample: 2012-10-05
c8af852b 10libswscale: 2011-06-20
add3a690 11libavutil: 2012-10-22
06d19718
RD
12
13
14API changes, most recent first:
ab79ee12 15
12c5c1d3
RD
162013-xx-xx - xxxxxxx - lavu 52.8.0 - avstring.h
17 Add av_isdigit, av_isgraph, av_isspace, av_isxdigit.
18
9f122356
JR
192013-xx-xx - xxxxxxx - lavfi 3.4.0 - avfiltergraph.h
20 Add resample_lavr_opts to AVFilterGraph for setting libavresample options
21 for auto-inserted resample filters.
22
38c1466c
JR
232013-xx-xx - xxxxxxx - lavu 52.7.0 - dict.h
24 Add av_dict_parse_string() to set multiple key/value pairs at once from a
25 string.
26
b85a5e87
VP
272013-01-xx - xxxxxxx - lavu 52.6.0 - avstring.h
28 Add av_strnstr()
29
8ee288d2
MS
302013-01-xx - xxxxxxx - lavu 52.5.0 - hmac.h
31 Add AVHMAC.
32
44e065d5
RDC
332013-01-13 - xxxxxxx - lavc 54.36.0 - vdpau.h
34 Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding.
35
f89466ad
DB
362013-01-12 - 169fb94 - lavu 52.4.0 - pixdesc.h
37 Add AV_PIX_FMT_VDPAU flag.
38
142c3909 392013-01-07 - 074a00d - lavr 1.1.0
074a00d1
JR
40 Add avresample_set_channel_mapping() for input channel reordering,
41 duplication, and silencing.
42
f89466ad 432012-12-29 - d8fd06c - lavu 52.3.0 - avstring.h
d8fd06c3
LB
44 Add av_basename() and av_dirname().
45
142c3909 462012-11-11 - 5980f5d - lavu 52.2.0 - audioconvert.h
5980f5dd
JR
47 Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated.
48
142c3909 492012-11-05 - dfde8a3 - lavu 52.1.0 - intmath.h
dfde8a34
JR
50 Add av_ctz() for trailing zero bit count
51
142c3909 522012-10-21 - a893655 - lavu 51.45.0 - error.h
a893655b
NC
53 Add AVERROR_EXPERIMENTAL
54
142c3909 552012-10-12 - d2fcb35 - lavu 51.44.0 - pixdesc.h
d2fcb356
AK
56 Add functions for accessing pixel format descriptors.
57 Accessing the av_pix_fmt_descriptors array directly is now
58 deprecated.
59
142c3909 602012-10-11 - 9a92aea - lavu 51.43.0 - aes.h, md5.h, sha.h, tree.h
9a92aea2
MS
61 Add functions for allocating the opaque contexts for the algorithms,
62 deprecate the context size variables.
63
142c3909 642012-10-10 - b522000 - lavf 54.18.0 - avio.h
b522000e
LB
65 Add avio_closep to complement avio_close.
66
142c3909 672012-10-08 - 78071a1 - lavu 51.42.0 - pixfmt.h
78071a14
AK
68 Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*.
69 To provide backwards compatibility, PixelFormat is now #defined as
70 AVPixelFormat.
71 Note that this can break user code that includes pixfmt.h and uses the
72 'PixelFormat' identifier. Such code should either #undef PixelFormat
73 or stop using the PixelFormat name.
74
2f49e3da 752012-10-05 - e7ba5b1 - lavr 1.0.0 - avresample.h
006afc7a
AK
76 Data planes parameters to avresample_convert() and
77 avresample_read() are now uint8_t** instead of void**.
78 Libavresample is now stable.
79
2f49e3da 802012-09-24 - a42aada - lavc 54.28.0 - avcodec.h
a42aadab
AK
81 Add avcodec_free_frame(). This function must now
82 be used for freeing an AVFrame.
83
2f49e3da 842012-09-12 - 8919fee - lavu 51.41.0 - audioconvert.h
8919fee7
TW
85 Added AV_CH_LOW_FREQUENCY_2 channel mask value.
86
2f49e3da 872012-09-04 - 686a329 - lavu 51.40.0 - opt.h
686a3293
MS
88 Reordered the fields in default_val in AVOption, changed which
89 default_val field is used for which AVOptionType.
90
2f49e3da 912012-08-30 - a231832 - lavc 54.26.1 - avcodec.h
a2318326
AK
92 Add codec descriptor properties AV_CODEC_PROP_LOSSY and
93 AV_CODEC_PROP_LOSSLESS.
94
7b44061f
AK
952012-08-18 - lavc 54.26 - avcodec.h
96 Add codec descriptors for accessing codec properties without having
97 to refer to a specific decoder or encoder.
98
99 c223d79 - Add an AVCodecDescriptor struct and functions
100 avcodec_descriptor_get() and avcodec_descriptor_next().
101 51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY.
102 91e59fe - Add avcodec_descriptor_get_by_name().
103
104
1052012-08-08 - 1d9c2dc - lavu 51.39 - avutil.h
1d9c2dc8
MS
106 Don't implicitly include libavutil/common.h in avutil.h
107
7b44061f 1082012-08-08 - 987170c - lavu 51.38 - dict.h
987170cb
MR
109 Add av_dict_count().
110
7b44061f 1112012-08-07 - 104e10f - lavc 54.25 - avcodec.h
104e10fb 112 Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*.
2ff67c90
AK
113 To provide backwards compatibility, CodecID is now #defined as AVCodecID.
114 Note that this can break user code that includes avcodec.h and uses the
115 'CodecID' identifier. Such code should either #undef CodecID or stop using the
116 CodecID name.
104e10fb 117
7b44061f 1182012-08-03 - 239fdf1 - lavu 51.37.1 - cpu.h
239fdf1b
DB
119 lsws 2.1.1 - swscale.h
120 Rename AV_CPU_FLAG_MMX2 ---> AV_CPU_FLAG_MMXEXT.
121 Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT.
122
7b44061f 1232012-07-29 - 681ed00 - lavf 54.13.0 - avformat.h
681ed000
LB
124 Add AVFMT_FLAG_NOBUFFER for low latency use cases.
125
7b44061f 1262012-07-20 - b70d89a - lavfi 3.0.0 - avfilter.h
b70d89a0
RN
127 Add avfilter_unref_bufferp().
128
45ff9e5b 1292012-07-10 - 5fade8a - lavu 51.37.0
f3e5e6f0
LB
130 Add av_malloc_array() and av_mallocz_array()
131
45ff9e5b 1322012-06-22 - d3d3a32 - lavu 51.34.0
d3d3a32c
MR
133 Add av_usleep()
134
dc7e336c
MR
1352012-06-20 - ae0a301 - lavu 51.33.0
136 Move av_gettime() to libavutil, add libavutil/time.h
137
45ff9e5b 1382012-06-09 - 3971be0 - lavr 0.0.3
3971be0e
JS
139 Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing.
140
45ff9e5b 1412012-06-12 - 9baeff9 - lavfi 2.23.0 - avfilter.h
9baeff95
AK
142 Add AVFilterContext.nb_inputs/outputs. Deprecate
143 AVFilterContext.input/output_count.
144
45ff9e5b 1452012-06-12 - 84b9fbe - lavfi 2.22.0 - avfilter.h
84b9fbe0
AK
146 Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those
147 should now be used instead of accessing AVFilterPad members
148 directly.
149
45ff9e5b 1502012-06-12 - b0f0dfc - lavu 51.32.0 - audioconvert.h
b0f0dfc4
AK
151 Add av_get_channel_layout_channel_index(), av_get_channel_name()
152 and av_channel_layout_extract_channel().
153
45ff9e5b 1542012-05-25 - 154486f - lavu 51.31.0 - opt.h
154486f9
SP
155 Add av_opt_set_bin()
156
45ff9e5b 1572012-05-26 - e9cef89 - lavf 54.3.0
e9cef897
JZ
158 Add AVFMT_TS_NONSTRICT format flag to indicate that a muxer supports
159 non-increasing monotone timestamps.
160
d89eca50
AK
1612012-05-15 - lavfi 2.17.0
162 Add support for audio filters
163 ac71230/a2cd9be - add video/audio buffer sink in a new installed
164 header buffersink.h
165 720c6b7 - add av_buffersrc_write_frame(), deprecate
166 av_vsrc_buffer_add_frame()
167 ab16504 - add avfilter_copy_buf_props()
168 9453c9e - add extended_data to AVFilterBuffer
169 1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays()
170
1712012-05-09 - lavu 51.30.0 - samplefmt.h
172 142e740 - add av_samples_copy()
173 6d7f617 - add av_samples_set_silence()
174
1752012-05-09 - a5117a2 - lavc 54.13.1
a5117a24
AK
176 For audio formats with fixed frame size, the last frame
177 no longer needs to be padded with silence, libavcodec
178 will handle this internally (effectively all encoders
179 behave as if they had CODEC_CAP_SMALL_LAST_FRAME set).
180
d89eca50 1812012-05-07 - 828bd08 - lavc 54.13.0 - avcodec.h
828bd088
AK
182 Add sample_rate and channel_layout fields to AVFrame.
183
d89eca50 1842012-05-01 - 4010d72 - lavr 0.0.1
4010d724
JR
185 Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8.
186
f7ff0999 1872012-04-25 - 3527a73 - lavu 51.29.0 - cpu.h
3527a739
MR
188 Add av_parse_cpu_flags()
189
f7ff0999 1902012-04-24 - c8af852 - lavr 0.0.0
c8af852b
JR
191 Add libavresample audio conversion library
192
f7ff0999 1932012-04-20 - 0c0d1bc - lavu 51.28.0 - audio_fifo.h
0c0d1bce
JR
194 Add audio FIFO functions:
195 av_audio_fifo_free()
196 av_audio_fifo_alloc()
197 av_audio_fifo_realloc()
198 av_audio_fifo_write()
199 av_audio_fifo_read()
200 av_audio_fifo_drain()
201 av_audio_fifo_reset()
202 av_audio_fifo_size()
203 av_audio_fifo_space()
204
f7ff0999
JR
2052012-04-14 - lavfi 2.16.0 - avfiltergraph.h
206 d7bcc71 Add avfilter_graph_parse2().
207 91d3cbe Add avfilter_inout_alloc() and avfilter_inout_free().
91d3cbe0 208
f7ff0999 2092012-04-08 - 4d693b0 - lavu 51.27.0 - samplefmt.h
4d693b02
JR
210 Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()
211
f7ff0999 2122012-04-05 - 5cc51a5 - lavu 51.26.0 - audioconvert.h
5cc51a58
JR
213 Add av_get_default_channel_layout()
214
bf5f46b4
JG
2152012-03-20 - 3c90cc2 - lavfo 54.2.0
216 Deprecate av_read_packet(), use av_read_frame() with
217 AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags
218
5d20e7b7 2192012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h
4d851f8d
AK
220 Add av_set_cpu_flags_mask().
221
5d20e7b7
AK
2222012-03-05 - lavc 54.8.0
223 6699d07 Add av_get_exact_bits_per_sample()
224 9524cf7 Add av_get_audio_frame_duration()
9524cf79 225
5d20e7b7 2262012-03-04 - 44fe77b - lavc 54.7.0 - avcodec.h
44fe77b3
AK
227 Add av_codec_is_encoder/decoder().
228
5d20e7b7 2292012-03-01 - 442c132 - lavc 54.3.0 - avcodec.h
442c1320
MS
230 Add av_packet_shrink_side_data.
231
5d20e7b7 2322012-02-29 - dd2a4bc - lavf 54.2.0 - avformat.h
32253747
AK
233 Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC,
234 used for dealing with attached pictures/cover art.
235
f5f5b154 2362012-02-25 - c9bca80 - lavu 51.24.0 - error.h
c9bca801 237 Add AVERROR_UNKNOWN
75bdd55e 238 NOTE: this was backported to 0.8
c9bca801 239
f5f5b154 2402012-02-20 - e9cda85 - lavc 54.2.0
e9cda853
JR
241 Add duration field to AVCodecParserContext
242
f5f5b154 2432012-02-20 - 0b42a93 - lavu 51.23.1 - mathematics.h
0b42a938
JR
244 Add av_rescale_q_rnd()
245
f5f5b154 2462012-02-08 - 38d5533 - lavu 51.22.1 - pixdesc.h
38d55332
AK
247 Add PIX_FMT_PSEUDOPAL flag.
248
f5f5b154 2492012-02-08 - 52f82a1 - lavc 54.01.0
52f82a11
AK
250 Add avcodec_encode_video2() and deprecate avcodec_encode_video().
251
fcc518a0 2522012-02-01 - 316fc74 - lavc 54.01.0
316fc744
JG
253 Add av_fast_padded_malloc() as alternative for av_realloc() when aligned
254 memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZE
255 zero-padded bytes at the end.
256
fcc518a0 2572012-01-31 - dd6d3b0 - lavf 54.01.0
dd6d3b0e 258 Add avformat_get_riff_video_tags() and avformat_get_riff_audio_tags().
75bdd55e 259 NOTE: this was backported to 0.8
dd6d3b0e 260
fcc518a0 2612012-01-31 - af08d9a - lavc 54.01.0
af08d9ae 262 Add avcodec_is_open() function.
75bdd55e 263 NOTE: this was backported to 0.8
af08d9ae 264
fcc518a0 2652012-01-30 - 8b93312 - lavu 51.22.0 - intfloat.h
8b933129
PM
266 Add a new installed header libavutil/intfloat.h with int/float punning
267 functions.
75bdd55e 268 NOTE: this was backported to 0.8
8b933129 269
6cb28829
MS
2702012-01-25 - lavf 53.22.0
271 f1caf01 Allow doing av_write_frame(ctx, NULL) for flushing possible
272 buffered data within a muxer. Added AVFMT_ALLOW_FLUSH for
273 muxers supporting it (av_write_frame makes sure it is called
274 only for muxers with this flag).
275
75bdd55e
AK
276------------------------------8<-------------------------------------
277 0.8 branch was cut here
278----------------------------->8--------------------------------------
279
7512bb74 2802012-01-15 - lavc 53.34.0
a6ccae3f 281 New audio encoding API:
7512bb74 282 b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio
a6ccae3f 283 encoders.
7512bb74
AK
284 5ee5fa0 Add avcodec_fill_audio_frame() as a convenience function.
285 b2c75b6 Add avcodec_encode_audio2() and deprecate avcodec_encode_audio().
a6ccae3f
JR
286 Add AVCodec.encode2().
287
7512bb74 2882012-01-12 - 3167dc9 - lavfi 2.15.0
3167dc95
AK
289 Add a new installed header -- libavfilter/version.h -- with version macros.
290
c04a954d
JG
2912011-01-03 - b73ec05 - lavu 51.21.0
292 Add av_popcount64
293
06e8d38f
AK
2942011-12-25 - lavfi 2.14.0
295 e1d9dbf Add a new installed header - buffersrc.h
296 It contains a new function av_buffersrc_buffer() that allows passing
297 frames to the 'buffer' filter, but unlike av_vsrc_buffer_add_frame()
298 it allows for direct rendering.
299 1c9e340 Add avfilter_copy_frame_props() for copying properties from
300 AVFrame to AVFilterBufferRef.
301
3022011-12-25 - lavc 53.31.0
303 Add the following new fields to AVFrame:
304 b58dbb5 sample_aspect_ratio
305 3a2ddf7 width, height
306 8a4a5f6 format
307
2a216ca2 3082011-12-18 - 8400b12 - lavc 53.28.1
8400b126
MR
309 Deprecate AVFrame.age. The field is unused.
310
c04a954d
JG
3112011-12-12 - 5266045 - lavf 53.17.0
312 Add avformat_close_input().
52660454
AK
313 Deprecate av_close_input_file() and av_close_input_stream().
314
c04a954d 3152011-12-02 - 0eea212 - lavc 53.25.0
0eea2129
JR
316 Add nb_samples and extended_data fields to AVFrame.
317 Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
318 Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
319 avcodec_decode_audio4() writes output samples to an AVFrame, which allows
320 audio decoders to use get_buffer().
321
c04a954d 3222011-12-04 - 560f773 - lavc 53.24.0
560f773c
JR
323 Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
324 Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
325 Change AVCodecContext.error[4] to [8] at next major bump.
326 Add AV_NUM_DATA_POINTERS to simplify the bump transition.
327
b94a3b28 3282011-11-23 - bbb46f3 - lavu 51.18.0
bbb46f3e
JR
329 Add av_samples_get_buffer_size(), av_samples_fill_arrays(), and
330 av_samples_alloc(), to samplefmt.h.
331
b94a3b28 3322011-11-23 - 8889cc4 - lavu 51.17.0
8889cc4f
JR
333 Add planar sample formats and av_sample_fmt_is_planar() to samplefmt.h.
334
b94a3b28 3352011-11-19 - f3a29b7 - lavc 53.21.0
f3a29b75
JR
336 Move some AVCodecContext fields to a new private struct, AVCodecInternal,
337 which is accessed from a new field, AVCodecContext.internal.
338 - fields moved:
339 AVCodecContext.internal_buffer --> AVCodecInternal.buffer
340 AVCodecContext.internal_buffer_count --> AVCodecInternal.buffer_count
341 AVCodecContext.is_copy --> AVCodecInternal.is_copy
342
b94a3b28
MR
3432011-11-16 - 6270671 - lavu 51.16.0
344 Add av_timegm()
345
f872e4d0
AK
3462011-11-13 - lavf 53.15.0
347 New interrupt callback API, allowing per-AVFormatContext/AVIOContext
348 interrupt callbacks.
349 6aa0b98 Add AVIOInterruptCB struct and the interrupt_callback field to
350 AVFormatContext.
351 1dee0ac Add avio_open2() with additional parameters. Those are
352 an interrupt callback and an options AVDictionary.
353 This will allow passing AVOptions to protocols after lavf
354 54.0.
355
eacec07e 3562011-11-06 - ba04ecf - lavu 51.14.0
ba04ecfd
RD
357 Add av_strcasecmp() and av_strncasecmp() to avstring.h.
358
eacec07e 3592011-11-06 - 07b172f - lavu 51.13.0
07b172fe
LB
360 Add av_toupper()/av_tolower()
361
eacec07e 3622011-11-05 - b6d08f4 - lavf 53.13.0
c9b309e8 363 Add avformat_network_init()/avformat_network_deinit()
b6d08f40 364
eacec07e 3652011-10-27 - 512557b - lavc 53.15.0
512557b2
JR
366 Remove avcodec_parse_frame.
367 Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY.
368
eacec07e 3692011-10-19 - 569129a - lavf 53.10.0
569129a6
AK
370 Add avformat_new_stream(). Deprecate av_new_stream().
371
eacec07e 3722011-10-13 - b631fba - lavf 53.9.0
b631fba9
JR
373 Add AVFMT_NO_BYTE_SEEK AVInputFormat flag.
374
492bd1a2
AK
3752011-10-12 - lavu 51.12.0
376 AVOptions API rewrite.
377
378 - 145f741 FF_OPT_TYPE* renamed to AV_OPT_TYPE_*
379 - new setting/getting functions with slightly different semantics:
380 dac66da av_set_string3 -> av_opt_set
381 av_set_double -> av_opt_set_double
382 av_set_q -> av_opt_set_q
383 av_set_int -> av_opt_set_int
384
385 41d9d51 av_get_string -> av_opt_get
386 av_get_double -> av_opt_get_double
387 av_get_q -> av_opt_get_q
388 av_get_int -> av_opt_get_int
389
390 - 8c5dcaa trivial rename av_next_option -> av_opt_next
391 - 641c7af new functions - av_opt_child_next, av_opt_child_class_next
392 and av_opt_find2()
393
7f9b0ef9 3942011-09-03 - fb4ca26 - lavc 53.10.0
fb4ca26b
AK
395 lavf 53.6.0
396 lsws 2.1.0
397 Add {avcodec,avformat,sws}_get_class().
398
7f9b0ef9 3992011-09-03 - c11fb82 - lavu 51.10.0
c11fb828
AK
400 Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function.
401
96d8e18a
JN
4022011-08-26 - lavu 51.9.0
403 - f2011ed Add av_fifo_peek2(), deprecate av_fifo_peek().
404 - add41de..abc78a5 Do not include intfloat_readwrite.h,
405 mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h.
f2011ed2 406
7f9b0ef9 4072011-08-16 - 48f9e45 - lavf 53.4.0
48f9e457
AK
408 Add avformat_query_codec().
409
7f9b0ef9 4102011-08-16 - bca06e7 - lavc 53.8.0
bca06e77
AK
411 Add avcodec_get_type().
412
e3a70c7c
DB
4132011-08-06 - 2f63440 - lavf 53.4.0
414 Add error_recognition to AVFormatContext.
415
5038f9b2
LB
4162011-08-02 - 9d39cbf - lavc 53.7.1
417 Add AV_PKT_FLAG_CORRUPT AVPacket flag.
418
6cb11979 4192011-07-10 - a67c061 - lavf 53.3.0
f2f523ff 420 Add avformat_find_stream_info(), deprecate av_find_stream_info().
9c47f2b2 421 NOTE: this was backported to 0.7
f2f523ff 422
6cb11979 4232011-07-10 - 0b950fe - lavc 53.6.0
f2f523ff 424 Add avcodec_open2(), deprecate avcodec_open().
9c47f2b2
AK
425 NOTE: this was backported to 0.7
426
44911f29
AK
427 Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and
428 avcodec_alloc_context2().
f2f523ff 429
6cb11979 4302011-06-23 - 67e9ae1 - lavu 51.8.0 - attributes.h
67e9ae14
MS
431 Add av_printf_format().
432
9c47f2b2
AK
433------------------------------8<-------------------------------------
434 0.7 branch was cut here
435----------------------------->8--------------------------------------
436
6cb11979 4372011-06-16 - 05e84c9, 25de595 - lavf 53.2.0 - avformat.h
7c44d716
AK
438 Add avformat_open_input and avformat_write_header().
439 Deprecate av_open_input_stream, av_open_input_file,
440 AVFormatParameters and av_write_header.
441
6cb11979 4422011-06-16 - 7e83e1c, dc59ec5 - lavu 51.7.0 - opt.h
7c44d716
AK
443 Add av_opt_set_dict() and av_opt_find().
444 Deprecate av_find_opt().
445 Add AV_DICT_APPEND flag.
446
6cb11979 4472011-06-10 - cb7c11c - lavu 51.6.0 - opt.h
cb7c11cc
MS
448 Add av_opt_flag_is_set().
449
6cb11979 4502011-06-08 - d9f80ea - lavu 51.5.0 - AVMetadata
d9f80ea2
AK
451 Move AVMetadata from lavf to lavu and rename it to
452 AVDictionary -- new installed header dict.h.
453 All av_metadata_* functions renamed to av_dict_*.
454
1397ac0a 4552011-06-07 - a6703fa - lavu 51.4.0 - av_get_bytes_per_sample()
a6703faa
SS
456 Add av_get_bytes_per_sample() in libavutil/samplefmt.h.
457 Deprecate av_get_bits_per_sample_fmt().
458
6cb11979 4592011-06-05 - b39b062 - lavu 51.3.0 - opt.h
b39b0623
AK
460 Add av_opt_free convenience function.
461
04de5bf5 4622011-05-28 - 0420bd7 - lavu 51.2.0 - pixdesc.h
8f653e28
SS
463 Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate
464 avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor.
465
19a686b8 4662011-05-25 - 30315a8 - lavf 53.1.0 - avformat.h
30315a8d
AC
467 Add fps_probe_size to AVFormatContext.
468
41e21e4d 4692011-05-18 - 64150ff - lavc 53.4.0 - AVCodecContext.request_sample_fmt
00e5da89
JR
470 Add request_sample_fmt field to AVCodecContext.
471
36dc49b7 4722011-05-10 - 188dea1 - lavc 53.3.0 - avcodec.h
188dea1d
AK
473 Deprecate AVLPCType and the following fields in
474 AVCodecContext: lpc_coeff_precision, prediction_order_method,
475 min_partition_order, max_partition_order, lpc_type, lpc_passes.
476 Corresponding FLAC encoder options should be used instead.
477
36dc49b7 4782011-04-26 - bebe72f - lavu 51.1.0 - avutil.h
bebe72f4
SS
479 Add AVPictureType enum and av_get_picture_type_char(), deprecate
480 FF_*_TYPE defines and av_get_pict_type_char() defined in
481 libavcodec/avcodec.h.
482
36dc49b7 4832011-04-26 - 10d3940 - lavfi 2.3.0 - avfilter.h
10d39405
RPM
484 Add pict_type and key_frame fields to AVFilterBufferRefVideo.
485
36dc49b7 4862011-04-26 - 7a11c82 - lavfi 2.2.0 - vsrc_buffer
7a11c82f
MN
487 Add sample_aspect_ratio fields to vsrc_buffer arguments
488
b4a53314 4892011-04-21 - 94f7451 - lavc 53.1.0 - avcodec.h
94f7451a
RB
490 Add CODEC_CAP_SLICE_THREADS for codecs supporting sliced threading.
491
aad2f2f4
K
4922011-04-15 - lavc 52.120.0 - avcodec.h
493 AVPacket structure got additional members for passing side information:
494 4de339e introduce side information for AVPacket
495 2d8591c make containers pass palette change in AVPacket
496
86a89ae3
AK
4972011-04-12 - lavf 52.107.0 - avio.h
498 Avio cleanup, part II - deprecate the entire URLContext API:
499 175389c add avio_check as a replacement for url_exist
500 ff1ec0c add avio_pause and avio_seek_time as replacements
501 for _av_url_read_fseek/fpause
502 cdc6a87 deprecate av_protocol_next(), avio_enum_protocols
503 should be used instead.
504 80c6e23 rename url_set_interrupt_cb->avio_set_interrupt_cb.
505 f87b1b3 rename open flags: URL_* -> AVIO_*
506 f8270bb add avio_enum_protocols.
507 5593f03 deprecate URLProtocol.
508 c486dad deprecate URLContext.
509 026e175 deprecate the typedef for URLInterruptCB
510 8e76a19 deprecate av_register_protocol2.
511 b840484 deprecate URL_PROTOCOL_FLAG_NESTED_SCHEME
512 1305d93 deprecate av_url_read_seek
513 fa104e1 deprecate av_url_read_pause
514 727c7aa deprecate url_get_filename().
515 5958df3 deprecate url_max_packet_size().
516 1869ea0 deprecate url_get_file_handle().
517 32a97d4 deprecate url_filesize().
518 e52a914 deprecate url_close().
519 58a48c6 deprecate url_seek().
520 925e908 deprecate url_write().
521 dce3756 deprecate url_read_complete().
522 bc371ac deprecate url_read().
523 0589da0 deprecate url_open().
524 62eaaea deprecate url_connect.
525 5652bb9 deprecate url_alloc.
526 333e894 deprecate url_open_protocol
527 e230705 deprecate url_poll and URLPollEntry
528
73389754
PR
5292011-04-10 - lavu 50.40.0 - pixfmt.h
530 Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
531
0c68c804
AK
5322011-04-08 - lavf 52.106.0 - avformat.h
533 Minor avformat.h cleanup:
534 a9bf9d8 deprecate av_guess_image2_codec
535 c3675df rename avf_sdp_create->av_sdp_create
536
4dcde00c
AK
5372011-04-03 - lavf 52.105.0 - avio.h
538 Large-scale renaming/deprecating of AVIOContext-related functions:
539 724f6a0 deprecate url_fdopen
540 403ee83 deprecate url_open_dyn_packet_buf
541 6dc7d80 rename url_close_dyn_buf -> avio_close_dyn_buf
542 b92c545 rename url_open_dyn_buf -> avio_open_dyn_buf
543 8978fed introduce an AVIOContext.seekable field as a replacement for
544 AVIOContext.is_streamed and url_is_streamed()
545 b64030f deprecate get_checksum()
546 4c4427a deprecate init_checksum()
547 4ec153b deprecate udp_set_remote_url/get_local_port
548 933e90a deprecate av_url_read_fseek/fpause
549 8d9769a deprecate url_fileno
550 b7f2fdd rename put_flush_packet -> avio_flush
551 35f1023 deprecate url_close_buf
552 83fddae deprecate url_open_buf
553 d9d86e0 rename url_fprintf -> avio_printf
554 59f65d9 deprecate url_setbufsize
555 3e68b3b deprecate url_ferror
556 66e5b1d deprecate url_feof
557 e8bb2e2 deprecate url_fget_max_packet_size
558 76aa876 rename url_fsize -> avio_size
559 e519753 deprecate url_fgetc
560 655e45e deprecate url_fgets
561 a2704c9 rename url_ftell -> avio_tell
562 e16ead0 deprecate get_strz() in favor of avio_get_str
563 0300db8,2af07d3 rename url_fskip -> avio_skip
564 6b4aa5d rename url_fseek -> avio_seek
565 61840b4 deprecate put_tag
566 22a3212 rename url_fopen/fclose -> avio_open/close.
567 0ac8e2b deprecate put_nbyte
568 77eb550 rename put_byte -> avio_w8
569 put_[b/l]e<type> -> avio_w[b/l]<type>
570 put_buffer -> avio_write
571 b7effd4 rename get_byte -> avio_r8,
572 get_[b/l]e<type> -> avio_r[b/l]<type>
573 get_buffer -> avio_read
574 b3db9ce deprecate get_partial_buffer
575 8d9ac96 rename av_alloc_put_byte -> avio_alloc_context
576
0b18b49b
JR
5772011-03-25 - 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type
578 Add audio_service_type field to AVCodecContext.
579
dc6fdad5
MS
5802011-03-02 - 863c471 - lavf 52.103.0 - av_pkt_dump2, av_pkt_dump_log2
581 Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
582 source stream timebase for outputting timestamps. Deprecate
583 av_pkt_dump and av_pkt_dump_log.
584
d2bbf82e
RB
5852011-02-20 - e731b8d - lavf 52.102.0 - avio.h
586 * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the
587 original, and move it to a private header so it is no longer
588 part of our public API. Instead, use av_alloc_put_byte().
589 * ae628ec - rename ByteIOContext to AVIOContext.
590
c3dbfa1a 5912011-02-16 - 09d171b - lavf 52.101.0 - avformat.h
09d171b9 592 lavu 52.39.0 - parseutils.h
c3dbfa1a
JG
593 * 610219a - Add av_ prefix to dump_format().
594 * f6c7375 - Replace parse_date() in lavf with av_parse_time() in lavu.
595 * ab0287f - Move find_info_tag from lavf to lavu and add av_prefix to it.
09d171b9 596
737eb597
RT
5972011-02-15 - lavu 52.38.0 - merge libavcore
598 libavcore is merged back completely into libavutil
599
8ed4cc65
MR
6002011-02-10 - 55bad0c - lavc 52.113.0 - vbv_delay
601 Add vbv_delay field to AVCodecContext
602
935ee1b9
MR
6032011-02-14 - 24a83bd - lavf 52.100.0 - AV_DISPOSITION_CLEAN_EFFECTS
604 Add AV_DISPOSITION_CLEAN_EFFECTS disposition flag.
605
08a459f0
MR
6062011-02-14 - 910b5b8 - lavfi 1.76.0 - AVFilterLink sample_aspect_ratio
607 Add sample_aspect_ratio field to AVFilterLink.
608
77c330a0
AH
6092011-02-10 - 12c14cd - lavf 52.99.0 - AVStream.disposition
610 Add AV_DISPOSITION_HEARING_IMPAIRED and AV_DISPOSITION_VISUAL_IMPAIRED.
611
f2146944 6122011-02-09 - 5592734 - lavc 52.112.0 - avcodec_thread_init()
c0b102ca
AS
613 Deprecate avcodec_thread_init()/avcodec_thread_free() use; instead
614 set thread_count before calling avcodec_open.
615
8e8cc52b 6162011-02-09 - 778b08a - lavc 52.111.0 - threading API
37b00b47
AS
617 Add CODEC_CAP_FRAME_THREADS with new restrictions on get_buffer()/
618 release_buffer()/draw_horiz_band() callbacks for appropriate codecs.
619 Add thread_type and active_thread_type fields to AVCodecContext.
620
c2bd7578 6212011-02-08 - 3940caa - lavf 52.98.0 - av_probe_input_buffer
3940caad
AH
622 Add av_probe_input_buffer() to avformat.h for probing format from a
623 ByteIOContext.
624
ae0f8a1a 6252011-02-06 - fe174fc - lavf 52.97.0 - avio.h
fe174fc8
NG
626 Add flag for non-blocking protocols: URL_FLAG_NONBLOCK
627
ff197489
MS
6282011-02-04 - f124b08 - lavf 52.96.0 - avformat_free_context()
629 Add avformat_free_context() in avformat.h.
630
75fd0668
TH
6312011-02-03 - f5b82f4 - lavc 52.109.0 - add CODEC_ID_PRORES
632 Add CODEC_ID_PRORES to avcodec.h.
633
7ab8758b
JG
6342011-02-03 - fe9a3fb - lavc 52.109.0 - H.264 profile defines
635 Add defines for H.264 * Constrained Baseline and Intra profiles
636
4868bebe
AK
6372011-02-02 - lavf 52.95.0
638 * 50196a9 - add a new installed header version.h.
639 * 4efd5cf, dccbd97, 93b78d1 - add several variants of public
640 avio_{put,get}_str* functions. Deprecate corresponding semi-public
641 {put,get}_str*.
642
6432011-02-02 - dfd2a00 - lavu 50.37.0 - log.h
644 Make av_dlog public.
645
343bfdd3 6462011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps
a242ac36
SS
647 Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples.
648
343bfdd3 6492011-01-14 - 7f88a5b - lavf 52.93.0 - av_metadata_copy()
f93fe776
SS
650 Add av_metadata_copy() in avformat.h.
651
343bfdd3 6522011-01-07 - 81c623f - lavc 52.107.0 - deprecate reordered_opaque
81c623fa
MN
653 Deprecate reordered_opaque in favor of pkt_pts/dts.
654
343bfdd3 6552011-01-07 - 1919fea - lavc 52.106.0 - pkt_dts
1919feaf
MN
656 Add pkt_dts to AVFrame, this will in the future allow multithreading decoders
657 to not mess up dts.
658
343bfdd3 6592011-01-07 - 393cbb9 - lavc 52.105.0 - pkt_pts
393cbb96
MN
660 Add pkt_pts to AVFrame.
661
343bfdd3 6622011-01-07 - 060ec0a - lavc 52.104.0 - av_get_profile_name()
060ec0a8
AH
663 Add av_get_profile_name to libavcodec/avcodec.h.
664
343bfdd3 6652010-12-27 - 0ccabee - lavfi 1.71.0 - AV_PERM_NEG_LINESIZES
28e5d45c
SS
666 Add AV_PERM_NEG_LINESIZES in avfilter.h.
667
343bfdd3 6682010-12-27 - 9128ae0 - lavf 52.91.0 - av_find_best_stream()
9128ae08
NG
669 Add av_find_best_stream to libavformat/avformat.h.
670
343bfdd3 6712010-12-27 - 107a7e3 - lavf 52.90.0
107a7e3e
AK
672 Add AVFMT_NOSTREAMS flag for formats with no streams,
673 like e.g. text metadata.
674
343bfdd3 6752010-12-22 - 0328b9e - lavu 50.36.0 - file.h
0328b9ea
SS
676 Add functions av_file_map() and av_file_unmap() in file.h.
677
343bfdd3 6782010-12-19 - 0bc55f5 - lavu 50.35.0 - error.h
0bc55f5d
NG
679 Add "not found" error codes:
680 AVERROR_DEMUXER_NOT_FOUND
681 AVERROR_MUXER_NOT_FOUND
682 AVERROR_DECODER_NOT_FOUND
683 AVERROR_ENCODER_NOT_FOUND
684 AVERROR_PROTOCOL_NOT_FOUND
685 AVERROR_FILTER_NOT_FOUND
686 AVERROR_BSF_NOT_FOUND
687 AVERROR_STREAM_NOT_FOUND
688
343bfdd3 6892010-12-09 - c61cdd0 - lavcore 0.16.0 - avcore.h
c61cdd0a
SS
690 Move AV_NOPTS_VALUE, AV_TIME_BASE, AV_TIME_BASE_Q symbols from
691 avcodec.h to avcore.h.
692
343bfdd3 6932010-12-04 - 16cfc96 - lavc 52.98.0 - CODEC_CAP_NEG_LINESIZES
16cfc961
SS
694 Add CODEC_CAP_NEG_LINESIZES codec capability flag in avcodec.h.
695
343bfdd3 6962010-12-04 - bb4afa1 - lavu 50.34.0 - av_get_pix_fmt_string()
bb4afa13
SS
697 Deprecate avcodec_pix_fmt_string() in favor of
698 pixdesc.h/av_get_pix_fmt_string().
699
343bfdd3 7002010-12-04 - 4da12e3 - lavcore 0.15.0 - av_image_alloc()
4da12e3b
SS
701 Add av_image_alloc() to libavcore/imgutils.h.
702
343bfdd3 7032010-12-02 - 037be76 - lavfi 1.67.0 - avfilter_graph_create_filter()
037be76e
SS
704 Add function avfilter_graph_create_filter() in avfiltergraph.h.
705
343bfdd3 7062010-11-25 - 4723bc2 - lavfi 1.65.0 - avfilter_get_video_buffer_ref_from_arrays()
d38c340f
SS
707 Add function avfilter_get_video_buffer_ref_from_arrays() in
708 avfilter.h.
06d19718 709
343bfdd3 7102010-11-21 - 176a615 - lavcore 0.14.0 - audioconvert.h
176a6157
SS
711 Add a public audio channel API in audioconvert.h, and deprecate the
712 corresponding functions in libavcodec:
713 avcodec_get_channel_name()
714 avcodec_get_channel_layout()
715 avcodec_get_channel_layout_string()
716 avcodec_channel_layout_num_channels()
717 and the CH_* macros defined in libavcodec/avcodec.h.
718
343bfdd3 7192010-11-21 - 6bfc268 - lavf 52.85.0 - avformat.h
e58d0392
RD
720 Add av_append_packet().
721
343bfdd3 7222010-11-21 - a08d918 - lavc 52.97.0 - avcodec.h
e58d0392
RD
723 Add av_grow_packet().
724
343bfdd3 7252010-11-17 - 0985e1a - lavcore 0.13.0 - parseutils.h
0985e1a3
AJ
726 Add av_parse_color() declared in libavcore/parseutils.h.
727
343bfdd3 7282010-11-13 - cb2c971 - lavc 52.95.0 - AVCodecContext
c716f917
AJ
729 Add AVCodecContext.subtitle_header and AVCodecContext.subtitle_header_size
730 fields.
731
343bfdd3 7322010-11-13 - 5aaea02 - lavfi 1.62.0 - avfiltergraph.h
5aaea022
SS
733 Make avfiltergraph.h public.
734
343bfdd3 7352010-11-13 - 4fcbb2a - lavfi 1.61.0 - avfiltergraph.h
4fcbb2af
SS
736 Remove declarations from avfiltergraph.h for the functions:
737 avfilter_graph_check_validity()
738 avfilter_graph_config_links()
739 avfilter_graph_config_formats()
740 which are now internal.
741 Use avfilter_graph_config() instead.
742
343bfdd3 7432010-11-08 - d2af720 - lavu 50.33.0 - eval.h
d2af7205
SS
744 Deprecate functions:
745 av_parse_and_eval_expr(),
746 av_parse_expr(),
747 av_eval_expr(),
748 av_free_expr(),
749 in favor of the functions:
750 av_expr_parse_and_eval(),
751 av_expr_parse(),
752 av_expr_eval(),
753 av_expr_free().
754
343bfdd3 7552010-11-08 - 24de0ed - lavfi 1.59.0 - avfilter_free()
24de0edb
SS
756 Rename avfilter_destroy() to avfilter_free().
757 This change breaks libavfilter API/ABI.
758
343bfdd3 7592010-11-07 - 1e80a0e - lavfi 1.58.0 - avfiltergraph.h
1e80a0ea
SS
760 Remove graphparser.h header, move AVFilterInOut and
761 avfilter_graph_parse() declarations to libavfilter/avfiltergraph.h.
762
343bfdd3 7632010-11-07 - 7313132 - lavfi 1.57.0 - AVFilterInOut
da6ec07c
SS
764 Rename field AVFilterInOut.filter to AVFilterInOut.filter_ctx.
765 This change breaks libavfilter API.
766
343bfdd3 7672010-11-04 - 97dd1e4 - lavfi 1.56.0 - avfilter_graph_free()
97dd1e4a
SS
768 Rename avfilter_graph_destroy() to avfilter_graph_free().
769 This change breaks libavfilter API/ABI.
770
343bfdd3 7712010-11-04 - e15aeea - lavfi 1.55.0 - avfilter_graph_alloc()
e15aeea6
SS
772 Add avfilter_graph_alloc() to libavfilter/avfiltergraph.h.
773
343bfdd3 7742010-11-02 - 6f84cd1 - lavcore 0.12.0 - av_get_bits_per_sample_fmt()
6f84cd12
SS
775 Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and
776 deprecate av_get_bits_per_sample_format().
777
343bfdd3 7782010-11-02 - d63e456 - lavcore 0.11.0 - samplefmt.h
d63e456a
SS
779 Add sample format functions in libavcore/samplefmt.h:
780 av_get_sample_fmt_name(),
781 av_get_sample_fmt(),
782 av_get_sample_fmt_string(),
783 and deprecate the corresponding libavcodec/audioconvert.h functions:
784 avcodec_get_sample_fmt_name(),
785 avcodec_get_sample_fmt(),
786 avcodec_sample_fmt_string().
787
343bfdd3 7882010-11-02 - 262d1c5 - lavcore 0.10.0 - samplefmt.h
262d1c5d
SS
789 Define enum AVSampleFormat in libavcore/samplefmt.h, deprecate enum
790 SampleFormat.
791
343bfdd3 7922010-10-16 - 2a24df9 - lavfi 1.52.0 - avfilter_graph_config()
2a24df93
SS
793 Add the function avfilter_graph_config() in avfiltergraph.h.
794
343bfdd3 7952010-10-15 - 03700d3 - lavf 52.83.0 - metadata API
03700d39
AK
796 Change demuxers to export metadata in generic format and
797 muxers to accept generic format. Deprecate the public
798 conversion API.
799
343bfdd3 8002010-10-10 - 867ae7a - lavfi 1.49.0 - AVFilterLink.time_base
77611295
SS
801 Add time_base field to AVFilterLink.
802
343bfdd3 8032010-09-27 - c85eef4 - lavu 50.31.0 - av_set_options_string()
c6625ad5
SS
804 Move av_set_options_string() from libavfilter/parseutils.h to
805 libavutil/opt.h.
806
343bfdd3 8072010-09-27 - acc0490 - lavfi 1.47.0 - AVFilterLink
4ecf1539
SS
808 Make the AVFilterLink fields srcpad and dstpad store the pointers to
809 the source and destination pads, rather than their indexes.
810
343bfdd3 8112010-09-27 - 372e288 - lavu 50.30.0 - av_get_token()
b3dd5e59
SS
812 Move av_get_token() from libavfilter/parseutils.h to
813 libavutil/avstring.h.
814
343bfdd3 8152010-09-26 - 635d4ae - lsws 0.12.0 - swscale.h
c5812793
SS
816 Add the functions sws_alloc_context() and sws_init_context().
817
343bfdd3 8182010-09-26 - 6ed0404 - lavu 50.29.0 - opt.h
41f87daa
SS
819 Move libavcodec/opt.h to libavutil/opt.h.
820
343bfdd3 8212010-09-24 - 1c1c80f - lavu 50.28.0 - av_log_set_flags()
1c1c80f0
MN
822 Default of av_log() changed due to many problems to the old no repeat
823 detection. Read the docs of AV_LOG_SKIP_REPEATED in log.h before
824 enabling it for your app!.
825
343bfdd3 8262010-09-24 - f66eb58 - lavc 52.90.0 - av_opt_show2()
07cac2a0
SS
827 Deprecate av_opt_show() in favor or av_opt_show2().
828
343bfdd3 8292010-09-14 - bc6f0af - lavu 50.27.0 - av_popcount()
07cac2a0
SS
830 Add av_popcount() to libavutil/common.h.
831
343bfdd3 8322010-09-08 - c6c98d0 - lavu 50.26.0 - av_get_cpu_flags()
15cae5e6
SS
833 Add av_get_cpu_flags().
834
343bfdd3 8352010-09-07 - 34017fd - lavcore 0.9.0 - av_image_copy()
16bacad4
SS
836 Add av_image_copy().
837
343bfdd3 8382010-09-07 - 9686abb - lavcore 0.8.0 - av_image_copy_plane()
16bacad4
SS
839 Add av_image_copy_plane().
840
343bfdd3 8412010-09-07 - 9b7269e - lavcore 0.7.0 - imgutils.h
1904035b
SS
842 Adopt hierarchical scheme for the imgutils.h function names,
843 deprecate the old names.
844
343bfdd3 8452010-09-04 - 7160bb7 - lavu 50.25.0 - AV_CPU_FLAG_*
47806f41
SS
846 Deprecate the FF_MM_* flags defined in libavcodec/avcodec.h in favor
847 of the AV_CPU_FLAG_* flags defined in libavutil/cpu.h.
848
343bfdd3 8492010-08-26 - 5da19b5 - lavc 52.87.0 - avcodec_get_channel_layout()
798dc641
SS
850 Add avcodec_get_channel_layout() in audioconvert.h.
851
343bfdd3 8522010-08-20 - e344336 - lavcore 0.6.0 - av_fill_image_max_pixsteps()
26553088
SS
853 Rename av_fill_image_max_pixstep() to av_fill_image_max_pixsteps().
854
343bfdd3 8552010-08-18 - a6ddf8b - lavcore 0.5.0 - av_fill_image_max_pixstep()
33d2e7b3
SS
856 Add av_fill_image_max_pixstep() in imgutils.h.
857
343bfdd3 8582010-08-17 - 4f2d2e4 - lavu 50.24.0 - AV_NE()
7f38d28c
SS
859 Add the AV_NE macro.
860
343bfdd3 8612010-08-17 - ad2c950 - lavfi 1.36.0 - audio framework
3f52a907
SS
862 Implement AVFilterBufferRefAudioProps struct for audio properties,
863 get_audio_buffer(), filter_samples() functions and related changes.
864
343bfdd3 8652010-08-12 - 81c1eca - lavcore 0.4.0 - av_get_image_linesize()
d1a04371
SS
866 Add av_get_image_linesize() in imgutils.h.
867
343bfdd3 8682010-08-11 - c1db7bf - lavfi 1.34.0 - AVFilterBufferRef
5bf840c4
SS
869 Resize data and linesize arrays in AVFilterBufferRef to 8.
870
871 This change breaks libavfilter API/ABI.
872
343bfdd3 8732010-08-11 - 9f08d80 - lavc 52.85.0 - av_picture_data_copy()
c6a34954
SS
874 Add av_picture_data_copy in avcodec.h.
875
343bfdd3 8762010-08-11 - 84c0386 - lavfi 1.33.0 - avfilter_open()
c7c7feaa
SS
877 Change avfilter_open() signature:
878 AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name) ->
879 int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);
880
881 This change breaks libavfilter API/ABI.
882
343bfdd3 8832010-08-11 - cc80caf - lavfi 1.32.0 - AVFilterBufferRef
ad0d70c9
SS
884 Add a type field to AVFilterBufferRef, and move video specific
885 properties to AVFilterBufferRefVideoProps.
886
4bf2d6e8 887 This change breaks libavfilter API/ABI.
ad0d70c9 888
343bfdd3 8892010-08-07 - 5d4890d - lavfi 1.31.0 - AVFilterLink
711d14cf
SS
890 Rename AVFilterLink fields:
891 AVFilterLink.srcpic -> AVFilterLink.src_buf
892 AVFilterLink.cur_pic -> AVFilterLink.cur_buf
893 AVFilterLink.outpic -> AVFilterLink.out_buf
894
343bfdd3 8952010-08-07 - 7fce481 - lavfi 1.30.0
711d14cf
SS
896 Rename functions and fields:
897 avfilter_(un)ref_pic -> avfilter_(un)ref_buffer
898 avfilter_copy_picref_props -> avfilter_copy_buffer_ref_props
899 AVFilterBufferRef.pic -> AVFilterBufferRef.buffer
900
343bfdd3 9012010-08-07 - ecc8dad - lavfi 1.29.0 - AVFilterBufferRef
711d14cf
SS
902 Rename AVFilterPicRef to AVFilterBufferRef.
903
343bfdd3 9042010-08-07 - d54e094 - lavfi 1.28.0 - AVFilterBuffer
e11b104a
SS
905 Move format field from AVFilterBuffer to AVFilterPicRef.
906
343bfdd3 9072010-08-06 - bf176f5 - lavcore 0.3.0 - av_check_image_size()
71cb41db
SS
908 Deprecate avcodec_check_dimensions() in favor of the function
909 av_check_image_size() defined in libavcore/imgutils.h.
910
343bfdd3 9112010-07-30 - 56b5e9d - lavfi 1.27.0 - AVFilterBuffer
92dd4959
SS
912 Increase size of the arrays AVFilterBuffer.data and
913 AVFilterBuffer.linesize from 4 to 8.
914
915 This change breaks libavfilter ABI.
916
343bfdd3 9172010-07-29 - e7bd48a - lavcore 0.2.0 - imgutils.h
3dec10cd
SS
918 Add functions av_fill_image_linesizes() and
919 av_fill_image_pointers(), declared in libavcore/imgutils.h.
920
343bfdd3 9212010-07-27 - 126b638 - lavcore 0.1.0 - parseutils.h
fa8ead00
SS
922 Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
923 defined in libavcodec in favor of the newly added functions
924 av_parse_video_size() and av_parse_video_rate() declared in
925 libavcore/parseutils.h.
926
343bfdd3 9272010-07-23 - 4485247 - lavu 50.23.0 - mathematics.h
c257c752
SS
928 Add the M_PHI constant definition.
929
343bfdd3 9302010-07-22 - bdab614 - lavfi 1.26.0 - media format generalization
73642926
SS
931 Add a type field to AVFilterLink.
932
933 Change the field types:
934 enum PixelFormat format -> int format in AVFilterBuffer
935 enum PixelFormat *formats -> int *formats in AVFilterFormats
936 enum PixelFormat *format -> int format in AVFilterLink
937
938 Change the function signatures:
939 AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); ->
940 AVFilterFormats *avfilter_make_format_list(const int *fmts);
941
942 int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); ->
943 int avfilter_add_format (AVFilterFormats **avff, int fmt);
944
945 AVFilterFormats *avfilter_all_colorspaces(void); ->
946 AVFilterFormats *avfilter_all_formats (enum AVMediaType type);
947
948 This change breaks libavfilter API/ABI.
949
343bfdd3 9502010-07-21 - aac6ca6 - lavcore 0.0.0
a33e0365
SS
951 Add libavcore.
952
343bfdd3 9532010-07-17 - b5c582f - lavfi 1.25.0 - AVFilterBuffer
8e9d9308
SS
954 Remove w and h fields from AVFilterBuffer.
955
343bfdd3 9562010-07-17 - f0d77b2 - lavfi 1.24.0 - AVFilterBuffer
9840147d
SS
957 Rename AVFilterPic to AVFilterBuffer.
958
343bfdd3 9592010-07-17 - 57fe80f - lavf 52.74.0 - url_fskip()
57fe80fe
MS
960 Make url_fskip() return an int error code instead of void.
961
343bfdd3 9622010-07-11 - 23940f1 - lavc 52.83.0
6f5ac9c1 963 Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields.
23940f14
JR
964 Add AVLPCType enum.
965 Deprecate AVCodecContext.use_lpc.
966
343bfdd3 9672010-07-11 - e1d7c88 - lavc 52.82.0 - avsubtitle_free()
e1d7c883
RD
968 Add a function for free the contents of a AVSubtitle generated by
969 avcodec_decode_subtitle.
970
343bfdd3 9712010-07-11 - b91d08f - lavu 50.22.0 - bswap.h and intreadwrite.h
617d56ca
SS
972 Make the bswap.h and intreadwrite.h API public.
973
343bfdd3 9742010-07-08 - ce1cd1c - lavu 50.21.0 - pixdesc.h
52706b95
SS
975 Rename read/write_line() to av_read/write_image_line().
976
343bfdd3 9772010-07-07 - 4d508e4 - lavfi 1.21.0 - avfilter_copy_picref_props()
16400da6 978 Add avfilter_copy_picref_props().
52706b95 979
343bfdd3 9802010-07-03 - 2d525ef - lavc 52.79.0
16400da6
SS
981 Add FF_COMPLIANCE_UNOFFICIAL and change all instances of
982 FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL.
34171e87 983
343bfdd3 9842010-07-02 - 89eec74 - lavu 50.20.0 - lfg.h
13088d27
RP
985 Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through
986 lfg.h.
987
343bfdd3 9882010-06-28 - a52e2c3 - lavfi 1.20.1 - av_parse_color()
6951515c
SS
989 Extend av_parse_color() syntax, make it accept an alpha value specifier and
990 set the alpha value to 255 by default.
991
343bfdd3 9922010-06-22 - 735cf6b - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class
16400da6 993 Add priv_data_size and priv_data_class to URLProtocol.
58cc11c7 994
343bfdd3 9952010-06-22 - ffbb289 - lavf 52.70.0 - url_alloc(), url_connect()
16400da6 996 Add url_alloc() and url_connect().
4636f115 997
343bfdd3 9982010-06-22 - 9b07a2d - lavf 52.69.0 - av_register_protocol2()
16400da6 999 Add av_register_protocol2(), deprecating av_register_protocol().
6c4cbc8d 1000
343bfdd3 10012010-06-09 - 65db058 - lavu 50.19.0 - av_compare_mod()
276b45af
SS
1002 Add av_compare_mod() to libavutil/mathematics.h.
1003
343bfdd3 10042010-06-05 - 0b99215 - lavu 50.18.0 - eval API
4cd5100c
SS
1005 Make the eval API public.
1006
343bfdd3 10072010-06-04 - 31878fc - lavu 50.17.0 - AV_BASE64_SIZE
6532c6f9
SS
1008 Add AV_BASE64_SIZE() macro.
1009
343bfdd3 10102010-06-02 - 7e566bb - lavc 52.73.0 - av_get_codec_tag_string()
2a00992f
SS
1011 Add av_get_codec_tag_string().
1012
343bfdd3 10132010-06-01 - 2b99142 - lsws 0.11.0 - convertPalette API
16400da6 1014 Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24().
7f464a0a 1015
343bfdd3 10162010-05-26 - 93ebfee - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL
fe9c2007 1017 Add CODEC_CAP_EXPERIMENTAL flag.
95c851e2 1018 NOTE: this was backported to 0.6
fe9c2007 1019
343bfdd3 10202010-05-23 - 9977863 - lavu 50.16.0 - av_get_random_seed()
16400da6 1021 Add av_get_random_seed().
cca68a54 1022
343bfdd3 10232010-05-18 - 796ac23 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT
16400da6 1024 Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags.
95c851e2 1025 NOTE: this was backported to 0.6
b724102a 1026
343bfdd3 10272010-05-09 - b6bc205 - lavfi 1.20.0 - AVFilterPicRef
fc25c049
SS
1028 Add interlaced and top_field_first fields to AVFilterPicRef.
1029
95c851e2
AK
1030------------------------------8<-------------------------------------
1031 0.6 branch was cut here
1032----------------------------->8--------------------------------------
1033
343bfdd3 10342010-05-01 - 8e2ee18 - lavf 52.62.0 - probe function
d0eb2b78
RD
1035 Add av_probe_input_format2 to API, it allows ignoring probe
1036 results below given score and returns the actual probe score.
1037
343bfdd3 10382010-04-01 - 3dd6180 - lavf 52.61.0 - metadata API
3dd6180f
AK
1039 Add a flag for av_metadata_set2() to disable overwriting of
1040 existing tags.
1041
343bfdd3 10422010-04-01 - 0fb49b5 - lavc 52.66.0
16400da6 1043 Add avcodec_get_edge_width().
0fb49b59 1044
343bfdd3 10452010-03-31 - d103218 - lavc 52.65.0
c846a984
RB
1046 Add avcodec_copy_context().
1047
343bfdd3 10482010-03-31 - 1a70d12 - lavf 52.60.0 - av_match_ext()
e33f1fa0
SS
1049 Make av_match_ext() public.
1050
343bfdd3 10512010-03-31 - 1149150 - lavu 50.14.0 - AVMediaType
fc8b1075
SS
1052 Move AVMediaType enum from libavcodec to libavutil.
1053
343bfdd3 10542010-03-31 - 72415b2 - lavc 52.64.0 - AVMediaType
fc8b1075
SS
1055 Define AVMediaType enum, and use it instead of enum CodecType, which
1056 is deprecated and will be dropped at the next major bump.
1057
343bfdd3 10582010-03-25 - 8795823 - lavu 50.13.0 - av_strerror()
82ba847e
SS
1059 Implement av_strerror().
1060
343bfdd3 10612010-03-23 - e1484eb - lavc 52.60.0 - av_dct_init()
16400da6 1062 Support DCT-I and DST-I.
e1484ebe 1063
343bfdd3 10642010-03-15 - b8819c8 - lavf 52.56.0 - AVFormatContext.start_time_realtime
a5b3d34b
MS
1065 Add AVFormatContext.start_time_realtime field.
1066
343bfdd3 10672010-03-13 - 5bb5c1d - lavfi 1.18.0 - AVFilterPicRef.pos
8955a324
SS
1068 Add AVFilterPicRef.pos field.
1069
343bfdd3 10702010-03-13 - 60c144f - lavu 50.12.0 - error.h
99de2b59
SS
1071 Move error code definitions from libavcodec/avcodec.h to
1072 the new public header libavutil/error.h.
1073
343bfdd3 10742010-03-07 - c709483 - lavc 52.56.0 - avfft.h
c7094831
MR
1075 Add public FFT interface.
1076
343bfdd3 10772010-03-06 - ac6ef86 - lavu 50.11.0 - av_stristr()
c18fb631
SS
1078 Add av_stristr().
1079
343bfdd3 10802010-03-03 - 4b83fc0 - lavu 50.10.0 - av_tree_enumerate()
4b83fc0f
VS
1081 Add av_tree_enumerate().
1082
343bfdd3 10832010-02-07 - b687c1a - lavu 50.9.0 - av_compare_ts()
fbef7a76
SS
1084 Add av_compare_ts().
1085
343bfdd3 10862010-02-05 - 3f3dc76 - lsws 0.10.0 - sws_getCoefficients()
e49407ee
SS
1087 Add sws_getCoefficients().
1088
343bfdd3 10892010-02-01 - ca76a11 - lavf 52.50.0 - metadata API
ca76a119
AK
1090 Add a list of generic tag names, change 'author' -> 'artist',
1091 'year' -> 'date'.
1092
343bfdd3 10932010-01-30 - 80a07f6 - lavu 50.8.0 - av_get_pix_fmt()
14ace37e
SS
1094 Add av_get_pix_fmt().
1095
343bfdd3 10962010-01-21 - 01cc47d - lsws 0.9.0 - sws_scale()
e49407ee
SS
1097 Change constness attributes of sws_scale() parameters.
1098
343bfdd3 10992010-01-10 - 3fb8e77 - lavfi 1.15.0 - avfilter_graph_config_links()
2d187e23
SS
1100 Add a log_ctx parameter to avfilter_graph_config_links().
1101
343bfdd3 11022010-01-07 - 8e9767f - lsws 0.8.0 - sws_isSupported{In,Out}put()
1c790092 1103 Add sws_isSupportedInput() and sws_isSupportedOutput() functions.
715cff9a 1104
343bfdd3 11052010-01-06 - c1d662f - lavfi 1.14.0 - avfilter_add_colorspace()
1e289b09
SS
1106 Change the avfilter_add_colorspace() signature, make it accept an
1107 (AVFilterFormats **) rather than an (AVFilterFormats *) as before.
1108
343bfdd3 11092010-01-03 - 4fd1f18 - lavfi 1.13.0 - avfilter_add_colorspace()
a2b16627
SS
1110 Add avfilter_add_colorspace().
1111
343bfdd3 11122010-01-02 - 8eb631f - lavf 52.46.0 - av_match_ext()
79c2f2d3
SS
1113 Add av_match_ext(), it should be used in place of match_ext().
1114
343bfdd3 11152010-01-01 - a1f547b - lavf 52.45.0 - av_guess_format()
bb1a8793
SS
1116 Add av_guess_format(), it should be used in place of guess_format().
1117
343bfdd3 11182009-12-13 - a181981 - lavf 52.43.0 - metadata API
16400da6
SS
1119 Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and
1120 AV_METADATA_DONT_STRDUP_VAL.
b8f11ec8 1121
343bfdd3 11222009-12-13 - 277c733 - lavu 50.7.0 - avstring.h API
f69d394f 1123 Add av_d2str().
60a92a77 1124
343bfdd3 11252009-12-13 - 02b398e - lavc 52.42.0 - AVStream
f69d394f 1126 Add avg_frame_rate.
c3d15329 1127
343bfdd3 11282009-12-12 - 3ba69a1 - lavu 50.6.0 - av_bmg_next()
54c24216
SS
1129 Introduce the av_bmg_next() function.
1130
343bfdd3 11312009-12-05 - a13a543 - lavfi 1.12.0 - avfilter_draw_slice()
11f6d098
SS
1132 Add a slice_dir parameter to avfilter_draw_slice().
1133
343bfdd3 11342009-11-26 - 4cc3f6a - lavfi 1.11.0 - AVFilter
7cab9a66
SS
1135 Remove the next field from AVFilter, this is not anymore required.
1136
343bfdd3 11372009-11-25 - 1433c4a - lavfi 1.10.0 - avfilter_next()
b5a683eb
SS
1138 Introduce the avfilter_next() function.
1139
343bfdd3 11402009-11-25 - 86a60fa - lavfi 1.9.0 - avfilter_register()
73e2247d
SS
1141 Change the signature of avfilter_register() to make it return an
1142 int. This is required since now the registration operation may fail.
1143
343bfdd3 11442009-11-25 - 74a0059 - lavu 50.5.0 - pixdesc.h API
d0df2fcc
SS
1145 Make the pixdesc.h API public.
1146
343bfdd3 11472009-10-27 - 243110f - lavfi 1.5.0 - AVFilter.next
290d4a44
SS
1148 Add a next field to AVFilter, this is used for simplifying the
1149 registration and management of the registered filters.
1150
343bfdd3 11512009-10-23 - cccd292 - lavfi 1.4.1 - AVFilter.description
54116673 1152 Add a description field to AVFilter.
01537e9f 1153
343bfdd3 11542009-10-19 - 6b5dc05 - lavfi 1.3.0 - avfilter_make_format_list()
027e85d8
SS
1155 Change the interface of avfilter_make_format_list() from
1156 avfilter_make_format_list(int n, ...) to
1157 avfilter_make_format_list(enum PixelFormat *pix_fmts).
1158
343bfdd3 11592009-10-18 - 0eb4ff9 - lavfi 1.0.0 - avfilter_get_video_buffer()
c3b27a3d
SS
1160 Make avfilter_get_video_buffer() recursive and add the w and h
1161 parameters to it.
1162
343bfdd3 11632009-10-07 - 46c40e4 - lavfi 0.5.1 - AVFilterPic
227d1b98 1164 Add w and h fields to AVFilterPic.
04670366 1165
343bfdd3 11662009-06-22 - 92400be - lavf 52.34.1 - AVFormatContext.packet_size
b394438e
RB
1167 This is now an unsigned int instead of a signed int.
1168
343bfdd3 11692009-06-19 - a4276ba - lavc 52.32.0 - AVSubtitle.pts
227d1b98
DB
1170 Add a pts field to AVSubtitle which gives the subtitle packet pts
1171 in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will
4bbe788a
RD
1172 not work right without this.
1173
343bfdd3 11742009-06-03 - 8f3f2e0 - lavc 52.30.2 - AV_PKT_FLAG_KEY
227d1b98 1175 PKT_FLAG_KEY has been deprecated and will be dropped at the next
8f3f2e06
RD
1176 major version. Use AV_PKT_FLAG_KEY instead.
1177
343bfdd3 11782009-06-01 - f988ce6 - lavc 52.30.0 - av_lockmgr_register()
f988ce6c
1179 av_lockmgr_register() can be used to register a callback function
1180 that lavc (and in the future, libraries that depend on lavc) can use
1181 to implement mutexes. The application should provide a callback function
227d1b98
DB
1182 that implements the AV_LOCK_* operations described in avcodec.h.
1183 When the lock manager is registered, FFmpeg is guaranteed to behave
1184 correctly in a multi-threaded application.
f988ce6c 1185
343bfdd3 11862009-04-30 - ce1d9c8 - lavc 52.28.0 - av_free_packet()
52bcc8e1
RP
1187 av_free_packet() is no longer an inline function. It is now exported.
1188
343bfdd3 11892009-04-11 - 80d403f - lavc 52.25.0 - deprecate av_destruct_packet_nofree()
0c13bbf5
RD
1190 Please use NULL instead. This has been supported since r16506
1191 (lavf > 52.23.1, lavc > 52.10.0).
1192
343bfdd3 11932009-04-07 - 7a00bba - lavc 52.23.0 - avcodec_decode_video/audio/subtitle
2851d225
RB
1194 The old decoding functions are deprecated, all new code should use the
1195 new functions avcodec_decode_video2(), avcodec_decode_audio3() and
1196 avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt
1197 argument instead of a const uint8_t *buf / int buf_size pair.
1198
343bfdd3 11992009-04-03 - 7b09db3 - lavu 50.3.0 - av_fifo_space()
b1516707
SS
1200 Introduce the av_fifo_space() function.
1201
343bfdd3 12022009-04-02 - fabd246 - lavc 52.23.0 - AVPacket
dd3bbb49
SS
1203 Move AVPacket declaration from libavformat/avformat.h to
1204 libavcodec/avcodec.h.
1205
343bfdd3 12062009-03-22 - 6e08ca9 - lavu 50.2.0 - RGB32 pixel formats
227d1b98
DB
1207 Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR,
1208 PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values.
1209 Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and
1210 PIX_FMT_BGR32_1 are now macros.
1211 avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases.
f3370e14 1212 Re-sort the enum PixelFormat list accordingly.
5a43bbc3
SS
1213 This change breaks API/ABI backward compatibility.
1214
343bfdd3 12152009-03-22 - f82674e - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants
dd3bbb49
SS
1216 Add the enum PixelFormat values:
1217 PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE,
1218 PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE.
1219
343bfdd3 12202009-03-21 - ee6624e - lavu 50.0.0 - av_random*
c8f742ca
DB
1221 The Mersenne Twister PRNG implemented through the av_random* functions
1222 was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions
1223 instead.
1224
343bfdd3 12252009-03-08 - 41dd680 - lavu 50.0.0 - AVFifoBuffer
889cdae8
DB
1226 av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped
1227 and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write
1228 and av_fifo_realloc2.
1229 In addition, the order of the function arguments of av_fifo_generic_read
227d1b98 1230 was changed to match av_fifo_generic_write.
889cdae8
DB
1231 The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by
1232 applications, they may not use sizeof() or directly access members.
22d4f236 1233
343bfdd3 12342009-03-01 - ec26457 - lavf 52.31.0 - Generic metadata API
889cdae8
DB
1235 Introduce a new metadata API (see av_metadata_get() and friends).
1236 The old API is now deprecated and should not be used anymore. This especially
429d6b21 1237 includes the following structure fields:
38ce707e
AJ
1238 - AVFormatContext.title
1239 - AVFormatContext.author
1240 - AVFormatContext.copyright
1241 - AVFormatContext.comment
1242 - AVFormatContext.album
1243 - AVFormatContext.year
1244 - AVFormatContext.track
1245 - AVFormatContext.genre
1246 - AVStream.language
1247 - AVStream.filename
1248 - AVProgram.provider_name
1249 - AVProgram.name
1250 - AVChapter.title