lavc: export DV profile API used by muxer/demuxer as public
[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:
d8b31be6
AK
5libavcodec: 2013-03-xx
6libavdevice: 2013-03-xx
6d3ea195 7libavfilter: 2013-12-xx
d8b31be6 8libavformat: 2013-03-xx
9cac8a51 9libavresample: 2012-10-05
c8af852b 10libswscale: 2011-06-20
3bc2e89c 11libavutil: 2013-12-xx
06d19718
RD
12
13
14API changes, most recent first:
ab79ee12 15
f6ee61fb
AK
162014-07-xx - xxxxxxx - lavc 55.56.0 - dv_profile.h
17 Add a public API for DV profile handling.
18
9e500efd
JR
192014-06-xx - xxxxxxx - lavu 53.17.0 - imgutils.h
20 Add av_image_check_sar().
21
874390e1
AK
222014-06-xx - xxxxxxx - lavc 55.55.0 - avcodec.h
23 Add av_packet_rescale_ts() to simplify timestamp conversion.
24
194be1f4
AK
252014-xx-xx - xxxxxxx - lavf 55.20.0 - avformat.h
26 The proper way for providing a hint about the desired timebase to the muxers
27 is now setting AVStream.time_base, instead of AVStream.codec.time_base as was
28 done previously. The old method is now deprecated.
29
0957b274
AK
302014-04-xx - xxxxxxx - lavc 55.54.0 - avcodec.h
31 Add AVCodecContext.side_data_only_packets to allow encoders to output packets
32 with only side data. This option may become mandatory in the future, so all
33 users are recommended to update their code and enable this option.
34
8c02adc6 352014-xx-xx - xxxxxxx - lavu 53.16.0 - frame.h, pixfmt.h
36 Move all color-related enums (AVColorPrimaries, AVColorSpace, AVColorRange,
37 AVColorTransferCharacteristic, and AVChromaLocation) inside lavu.
38 Add AVFrame fields for them on the next lavu major bump.
39
b2d45654
LB
402014-04-xx - xxxxxxx - lavr 1.3.0 - avresample.h
41 Add avresample_max_output_samples
42
6d212599
LB
432014-05-24 - xxxxxxx - lavf 55.19.0 - avformat.h
44 Add strict_std_compliance and related AVOptions to support experimental
45 muxing.
46
c23c96b6
JG
472014-05-19 - xxxxxxx - lavf 55.18.0 - avformat.h
48 Add av_stream_get_side_data() to access stream-level side data
49 in the same way as av_packet_get_side_data().
50
bddd8cbf
VG
512014-05-xx - xxxxxxx - lavu 53.15.0 - frame.h, display.h
52 Add AV_FRAME_DATA_DISPLAYMATRIX for exporting frame-level
53 spatial rendering on video frames for proper display.
54
21f68c24 552014-05-xx - xxxxxxx - lavc 55.53.0 - avcodec.h
bddd8cbf
VG
56 Add AV_PKT_DATA_DISPLAYMATRIX for exporting packet-level
57 spatial rendering on video frames for proper display.
58
a312f710
AK
592014-05-xx - xxxxxxx - lavf 55.17.1 - avformat.h
60 Deprecate AVStream.pts and the AVFrac struct, which was its only use case.
61 Those fields were poorly defined and not meant to be public, so there is
62 no replacement for them.
63
33082af7 642014-05-18 - fd05602 - lavc 55.52.0 - avcodec.h
fd056029
AK
65 Add avcodec_free_context(). From now on it should be used for freeing
66 AVCodecContext.
67
33082af7 682014-05-15 - 0c1959b - lavf 55.17.0 - avformat.h
0c1959b0
AK
69 Add AVMFT_FLAG_BITEXACT flag. Muxers now use it instead of checking
70 CODEC_FLAG_BITEXACT on the first stream.
71
33082af7 722014-05-11 - 66e6c8a - lavu 53.14.0 - pixfmt.h
66e6c8a7
AK
73 Add AV_PIX_FMT_VDA for new-style VDA acceleration.
74
33082af7 752014-05-01 - a2941c8 - lavc 55.50.3 - avcodec.h
a2941c8c
AK
76 Deprecate CODEC_FLAG_MV0. It is replaced by the flag "mv0" in the
77 "mpv_flags" private option of the mpegvideo encoders.
78
33082af7 792014-05-01 - 6484149 - lavc 55.50.2 - avcodec.h
64841491
AK
80 Deprecate CODEC_FLAG_GMC. It is replaced by the "gmc" private option of the
81 libxvid encoder.
82
33082af7 832014-05-01 - b2c3171 - lavc 55.50.1 - avcodec.h
b2c31710
AK
84 Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the
85 "mpv_flags" private option of the mpegvideo encoders.
86
33082af7 872014-05-01 - 5fcceda - avcodec.h
5fccedaa
AK
88 Deprecate CODEC_FLAG_INPUT_PRESERVED. Its functionality is replaced by passing
89 reference-counted frames to encoders.
90
33082af7 912014-04-28 - ed4b757 - lavc 55.50.0 - dxva2.h
ed4b7571
HL
92 Add FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO for old Intel GPUs.
93
33082af7 942014-04-22 - 502512e - lavu 53.13.0 - avutil.h
502512ea
DB
95 Add av_get_time_base_q().
96
33082af7 972014-04-17 - 0983d48 - lavu 53.12.0 - crc.h
0983d481
AG
98 Add AV_CRC_16_ANSI_LE crc variant.
99
33082af7 1002014-04-07 - 8b17243 - lavu 53.11.0 - pixfmt.h
8b17243d
VG
101 Add AV_PIX_FMT_YVYU422 pixel format.
102
33082af7 1032014-04-04 - 8542f9c - lavu 53.10.0 - replaygain.h
8542f9c4
AG
104 Full scale for peak values is now 100000 (instead of UINT32_MAX) and values
105 may overflow.
106
33082af7 1072014-04-03 - 7763118 - lavu 53.09.0 - log.h
7763118c
LB
108 Add AV_LOG(c) macro to have 256 color debug messages.
109
33082af7 1102014-03-24 - d161ae0 - lavu 53.08.0 - frame.h
d161ae0a
AK
111 Add av_frame_remove_side_data() for removing a single side data
112 instance from a frame.
113
33082af7 1142014-03-24 - 5a7e35d - lavu 53.07.0 - frame.h, replaygain.h
5a7e35dd
AK
115 Add AV_FRAME_DATA_REPLAYGAIN for exporting replaygain tags.
116 Add a new header replaygain.h with the AVReplayGain struct.
117
33082af7 1182014-03-24 - 5a7e35d - lavc 55.36.0 - avcodec.h
5a7e35dd
AK
119 Add AV_PKT_DATA_REPLAYGAIN for exporting replaygain tags.
120
33082af7 1212014-03-24 - 25b3258 - lavf 55.13.0 - avformat.h
25b32586
AK
122 Add AVStream.side_data and AVStream.nb_side_data for exporting stream-global
123 side data (e.g. replaygain tags, video rotation)
124
33082af7 1252014-03-24 - 0e2c3ee - lavc 55.35.0 - avcodec.h
0e2c3ee9
AK
126 Give the name AVPacketSideData to the previously anonymous struct used for
127 AVPacket.side_data.
128
33082af7 1292014-03-16 - 1481d24 - lavu 53.06.0 - pixfmt.h
1481d24c
JF
130 Add RGBA64 pixel format and variants.
131
33082af7 1322014-02-24 - 1155fd0 - lavu 53.05.0 - frame.h
1155fd02
AK
133 Add av_frame_copy() for copying the frame data.
134
33082af7 1352014-02-22 - 7e86c27 - lavr 1.2.0 - avresample.h
7e86c27b
AK
136 Add avresample_is_open() for checking whether a resample context is open.
137
33082af7 1382014-02-19 - c3ecd96 - lavu 53.04.0 - opt.h
c3ecd968
AK
139 Add AV_OPT_FLAG_EXPORT and AV_OPT_FLAG_READONLY to mark options meant (only)
140 for reading.
141
33082af7 1422014-02-19 - 6bb8720 - lavu 53.03.01 - opt.h
6bb8720f
AK
143 Deprecate unused AV_OPT_FLAG_METADATA.
144
968a62a9
AK
145------------------------------8<-------------------------------------
146 10 branch was cut here
147----------------------------->8--------------------------------------
148
33082af7 1492014-02-15 - c98f316 - lavu 53.3.0 - frame.h
c98f3169
TW
150 Add AV_FRAME_DATA_DOWNMIX_INFO value to the AVFrameSideDataType enum and
151 downmix_info.h API, which identify downmix-related metadata.
152
d711d839 1532014-02-04 - d9ae103 - lavf 55.11.0 - avformat.h
d9ae1031
LB
154 Add AVFormatContext.max_interleave_delta for controlling amount of buffering
155 when interleaving.
156
d711d839 1572014-01-20 - 93c553c - lavc 55.32.1 - avcodec.h
93c553c7
AK
158 Edges are not required anymore on video buffers allocated by get_buffer2()
159 (i.e. as if the CODEC_FLAG_EMU_EDGE flag was always on). Deprecate
160 CODEC_FLAG_EMU_EDGE and avcodec_get_edge_width().
161
d711d839 1622014-01-05 - 5b4797a - lavu 53.2.0 - frame.h
5b4797a2
TW
163 Add AV_FRAME_DATA_MATRIXENCODING value to the AVFrameSideDataType enum, which
164 identifies AVMatrixEncoding data.
165
d711d839 1662014-01-05 - 5c437fb - lavu 53.1.0 - channel_layout.h
5c437fb6
TW
167 Add values for various Dolby flags to the AVMatrixEncoding enum.
168
d711d839 1692013-12-20 - 2a41826 - lavc 55.30.0 - avcodec.h
2a41826b
GC
170 Add HEVC profiles
171
d711d839 1722013-12-11 - b9fb59d,9431356,d7b3ee9 - lavc 55.28.1 - avcodec.h
d7b3ee9a
AK
173 av_frame_alloc(), av_frame_unref() and av_frame_free() now can and should be
174 used instead of avcodec_alloc_frame(), avcodec_get_frame_defaults() and
175 avcodec_free_frame() respectively. The latter three functions are deprecated.
176
d711d839 1772013-12-09 - 7e244c6- - lavu 52.20.0 - frame.h
7e244c68
VG
178 Add AV_FRAME_DATA_STEREO3D value to the AVFrameSideDataType enum and
179 stereo3d.h API, that identify codec-independent stereo3d information.
180
d711d839 1812013-11-26 - 1eaac1d- - lavu 52.19.0 - frame.h
1eaac1d6
JS
182 Add AV_FRAME_DATA_A53_CC value to the AVFrameSideDataType enum, which
183 identifies ATSC A53 Part 4 Closed Captions data.
184
d711d839 1852013-11-14 - cce3e0a - lavu 52.18.0 - mem.h
cce3e0a4
AK
186 Move av_fast_malloc() and av_fast_realloc() for libavcodec to libavutil.
187
d711d839 1882013-11-14 - 8941971 - lavc 55.27.0 - avcodec.h
8941971a
AK
189 Deprecate AVCodecContext.error_rate, it is replaced by the 'error_rate'
190 private option of the mpegvideo encoder family.
191
d711d839 1922013-11-14 - 728c465 - lavc 55.26.0 - vdpau.h
ca22d1de 193 Add av_vdpau_get_profile().
728c4658
AK
194 Add av_vdpau_alloc_context(). This function must from now on be
195 used for allocating AVVDPAUContext.
ca22d1de 196
d711d839 1972013-11-04 - cd8f772 - lavc 55.25.0 - avcodec.h
cd8f772d
JE
198 Add ITU-R BT.2020 and other not yet included values to color primaries,
199 transfer characteristics and colorspaces.
200
48d1ed9c 2012013-10-31 - 28096e0 - lavu 52.17.0 - frame.h
28096e0a
JS
202 Add AVFrame.flags and AV_FRAME_FLAG_CORRUPT.
203
d711d839 2042013-09-28 - 0767bfd - lavfi 3.11.0 - avfilter.h
0767bfd1
AK
205 Add AVFilterGraph.execute and AVFilterGraph.opaque for custom slice threading
206 implementations.
207
d711d839 2082013-09-21 - e208e6d - lavu 52.16.0 - pixfmt.h
e208e6d2
KK
209 Add interleaved 4:2:2 8/10-bit formats AV_PIX_FMT_NV16 and
210 AV_PIX_FMT_NV20.
211
c38854c3 2122013-09-16 - 3feb3d6 - lavu 52.15.0 - mem.h
3feb3d6c
LB
213 Add av_reallocp.
214
c38854c3 2152013-08-10 - 5a9a9d4 - lavc 55.16.0 - avcodec.h
5a9a9d4a
LB
216 Extend AVPacket API with av_packet_unref, av_packet_ref,
217 av_packet_move_ref, av_packet_copy_props, av_packet_free_side_data.
218
c38854c3 2192013-08-05 - f824535 - lavc 55.13.0 - avcodec.h
f824535a
RDC
220 Deprecate the bitstream-related members from struct AVVDPAUContext.
221 The bistream buffers no longer need to be explicitly freed.
222
c38854c3 2232013-08-05 - 549294f - lavc 55.12.0 - avcodec.h
549294fb
RDC
224 Deprecate the CODEC_CAP_HWACCEL_VDPAU codec capability. Use CODEC_CAP_HWACCEL
225 and select the AV_PIX_FMT_VDPAU format with get_format() instead.
226
c38854c3 2272013-08-05 - a0ad5d0 - lavu 52.14.0 - pixfmt.h
a0ad5d01
RDC
228 Deprecate AV_PIX_FMT_VDPAU_*. Use AV_PIX_FMT_VDPAU instead.
229
c38854c3 2302013-08-02 - a8b1927 - lavc 55.11.0 - avcodec.h
a8b19271
YN
231 Add output_picture_number to AVCodecParserContext.
232
c38854c3 2332013-06-24 - 95d5246 - lavc 55.10.0 - avcodec.h
95d52464
KK
234 Add MPEG-2 AAC profiles
235
c38854c3 2362013-06-04 - fc962d4 - lavu 52.13.0 - mem.h
fc962d4e
MS
237 Add av_realloc_array and av_reallocp_array
238
c38854c3 2392013-05-24 - 129bb23 - lavfi 3.10.0 - avfilter.h
129bb238
AK
240 Add support for slice multithreading to lavfi. Filters supporting threading
241 are marked with AVFILTER_FLAG_SLICE_THREADS.
242 New fields AVFilterContext.thread_type, AVFilterGraph.thread_type and
243 AVFilterGraph.nb_threads (accessible directly or through AVOptions) may be
244 used to configure multithreading.
245
c38854c3 2462013-05-24 - 2a6eaea - lavu 52.12.0 - cpu.h
2a6eaeaa
AK
247 Add av_cpu_count() function for getting the number of logical CPUs.
248
c38854c3 2492013-05-24 - b493847 - lavc 55.7.0 - avcodec.h
b493847d
YN
250 Add picture_structure to AVCodecParserContext.
251
c38854c3 2522013-05-15 - e6c4ac7 - lavu 52.11.0 - pixdesc.h
e6c4ac7b
AK
253 Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*.
254
c38854c3 2552013-04-03 - 507b1e4 - lavc 55.4.0 - avcodec.h
507b1e45
MT
256 Add field_order to AVCodecParserContext.
257
c38854c3 2582013-04-19 - 5e83d9a - lavc 55.2.0 - avcodec.h
5e83d9ac
AK
259 Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output.
260
35386fbf
AK
2612013-04-11 - lavfi 3.8.0
262 38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate
263 avfilterhraph.h, user applications should include just avfilter.h
264 bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and
265 avfilter_graph_add_filter().
266 1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the
267 filter.
268 48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter().
269 1ba95a9 - Add avfilter_init_dict().
270 7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags.
271 7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs.
272 fa2a34c - Add avfilter_next(), deprecate av_filter_next().
273 Deprecate avfilter_uninit().
274
2752013-04-09 - lavfi 3.7.0 - avfilter.h
276 b439c99 - Add AVFilter.priv_class for exporting filter options through the
277 AVOptions API in the similar way private options work in lavc and lavf.
278 8114c10 - Add avfilter_get_class().
cdac3acb
AK
279 Switch all filters to use AVOptions.
280
35386fbf 2812013-03-19 - 2c328a9 - lavu 52.9.0 - pixdesc.h
2c328a90
AK
282 Add av_pix_fmt_count_planes() function for counting planes in a pixel format.
283
35386fbf 2842013-03-16 - 42c7c61 - lavfi 3.6.0
42c7c61a
AK
285 Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count.
286
35386fbf 2872013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.0, lavf 55.0.0,
d8b31be6 288lavd 54.0.0, lavfi 3.5.0
35386fbf 289 8e401db, 1cec062 - add a new API for reference counted buffers and buffer
d8b31be6 290 pools (new header libavutil/buffer.h).
35386fbf 291 1afddbe - add AVPacket.buf to allow reference counting for the AVPacket data.
d8b31be6
AK
292 Add av_packet_from_data() function for constructing packets from
293 av_malloc()ed data.
35386fbf 294 7ecc2d4 - move AVFrame from lavc to lavu (new header libavutil/frame.h), add
d8b31be6
AK
295 AVFrame.buf/extended_buf to allow reference counting for the AVFrame
296 data. Add new API for working with reference-counted AVFrames.
35386fbf 297 759001c - add the refcounted_frames field to AVCodecContext to make audio and
d8b31be6
AK
298 video decoders return reference-counted frames. Add get_buffer2()
299 callback to AVCodecContext which allocates reference-counted frames.
300 Add avcodec_default_get_buffer2() as the default get_buffer2()
301 implementation.
302 Deprecate AVCodecContext.get_buffer() / release_buffer() /
303 reget_buffer(), avcodec_default_get_buffer(),
304 avcodec_default_reget_buffer(), avcodec_default_release_buffer().
305 Remove avcodec_default_free_buffers(), which should not have ever
306 been called from outside of lavc.
307 Deprecate the following AVFrame fields:
308 * base -- is now stored in AVBufferRef
309 * reference, type, buffer_hints -- are unnecessary in the new API
310 * hwaccel_picture_private, owner, thread_opaque -- should not
311 have been acessed from outside of lavc
312 * qscale_table, qstride, qscale_type, mbskip_table, motion_val,
313 mb_type, dct_coeff, ref_index -- mpegvideo-specific tables,
314 which are not exported anymore.
35386fbf 315 7e35037 - switch libavfilter to use AVFrame instead of AVFilterBufferRef. Add
d8b31be6
AK
316 av_buffersrc_add_frame(), deprecate av_buffersrc_buffer().
317 Add av_buffersink_get_frame() and av_buffersink_get_samples(),
318 deprecate av_buffersink_read() and av_buffersink_read_samples().
319 Deprecate AVFilterBufferRef and all functions for working with it.
320
35386fbf 3212013-03-17 - 12c5c1d - lavu 52.8.0 - avstring.h
12c5c1d3
RD
322 Add av_isdigit, av_isgraph, av_isspace, av_isxdigit.
323
35386fbf 3242013-02-23 - 9f12235 - lavfi 3.4.0 - avfiltergraph.h
9f122356
JR
325 Add resample_lavr_opts to AVFilterGraph for setting libavresample options
326 for auto-inserted resample filters.
327
35386fbf 3282013-01-25 - 38c1466 - lavu 52.7.0 - dict.h
38c1466c
JR
329 Add av_dict_parse_string() to set multiple key/value pairs at once from a
330 string.
331
35386fbf 3322013-01-25 - b85a5e8 - lavu 52.6.0 - avstring.h
b85a5e87
VP
333 Add av_strnstr()
334
35386fbf 3352013-01-15 - 8ee288d - lavu 52.5.0 - hmac.h
8ee288d2
MS
336 Add AVHMAC.
337
35386fbf 3382013-01-13 - 44e065d - lavc 54.36.0 - vdpau.h
44e065d5
RDC
339 Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding.
340
f89466ad
DB
3412013-01-12 - 169fb94 - lavu 52.4.0 - pixdesc.h
342 Add AV_PIX_FMT_VDPAU flag.
343
142c3909 3442013-01-07 - 074a00d - lavr 1.1.0
074a00d1
JR
345 Add avresample_set_channel_mapping() for input channel reordering,
346 duplication, and silencing.
347
cca4742a
AK
348------------------------------8<-------------------------------------
349 9 branch was cut here
350----------------------------->8--------------------------------------
351
f89466ad 3522012-12-29 - d8fd06c - lavu 52.3.0 - avstring.h
d8fd06c3
LB
353 Add av_basename() and av_dirname().
354
142c3909 3552012-11-11 - 5980f5d - lavu 52.2.0 - audioconvert.h
5980f5dd
JR
356 Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated.
357
142c3909 3582012-11-05 - dfde8a3 - lavu 52.1.0 - intmath.h
dfde8a34
JR
359 Add av_ctz() for trailing zero bit count
360
142c3909 3612012-10-21 - a893655 - lavu 51.45.0 - error.h
a893655b
NC
362 Add AVERROR_EXPERIMENTAL
363
142c3909 3642012-10-12 - d2fcb35 - lavu 51.44.0 - pixdesc.h
d2fcb356
AK
365 Add functions for accessing pixel format descriptors.
366 Accessing the av_pix_fmt_descriptors array directly is now
367 deprecated.
368
142c3909 3692012-10-11 - 9a92aea - lavu 51.43.0 - aes.h, md5.h, sha.h, tree.h
9a92aea2
MS
370 Add functions for allocating the opaque contexts for the algorithms,
371 deprecate the context size variables.
372
142c3909 3732012-10-10 - b522000 - lavf 54.18.0 - avio.h
b522000e
LB
374 Add avio_closep to complement avio_close.
375
142c3909 3762012-10-08 - 78071a1 - lavu 51.42.0 - pixfmt.h
78071a14
AK
377 Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*.
378 To provide backwards compatibility, PixelFormat is now #defined as
379 AVPixelFormat.
380 Note that this can break user code that includes pixfmt.h and uses the
381 'PixelFormat' identifier. Such code should either #undef PixelFormat
382 or stop using the PixelFormat name.
383
2f49e3da 3842012-10-05 - e7ba5b1 - lavr 1.0.0 - avresample.h
006afc7a
AK
385 Data planes parameters to avresample_convert() and
386 avresample_read() are now uint8_t** instead of void**.
387 Libavresample is now stable.
388
2f49e3da 3892012-09-24 - a42aada - lavc 54.28.0 - avcodec.h
a42aadab
AK
390 Add avcodec_free_frame(). This function must now
391 be used for freeing an AVFrame.
392
2f49e3da 3932012-09-12 - 8919fee - lavu 51.41.0 - audioconvert.h
8919fee7
TW
394 Added AV_CH_LOW_FREQUENCY_2 channel mask value.
395
2f49e3da 3962012-09-04 - 686a329 - lavu 51.40.0 - opt.h
686a3293
MS
397 Reordered the fields in default_val in AVOption, changed which
398 default_val field is used for which AVOptionType.
399
2f49e3da 4002012-08-30 - a231832 - lavc 54.26.1 - avcodec.h
a2318326
AK
401 Add codec descriptor properties AV_CODEC_PROP_LOSSY and
402 AV_CODEC_PROP_LOSSLESS.
403
7b44061f
AK
4042012-08-18 - lavc 54.26 - avcodec.h
405 Add codec descriptors for accessing codec properties without having
406 to refer to a specific decoder or encoder.
407
408 c223d79 - Add an AVCodecDescriptor struct and functions
409 avcodec_descriptor_get() and avcodec_descriptor_next().
410 51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY.
411 91e59fe - Add avcodec_descriptor_get_by_name().
412
413
4142012-08-08 - 1d9c2dc - lavu 51.39 - avutil.h
1d9c2dc8
MS
415 Don't implicitly include libavutil/common.h in avutil.h
416
7b44061f 4172012-08-08 - 987170c - lavu 51.38 - dict.h
987170cb
MR
418 Add av_dict_count().
419
7b44061f 4202012-08-07 - 104e10f - lavc 54.25 - avcodec.h
104e10fb 421 Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*.
2ff67c90
AK
422 To provide backwards compatibility, CodecID is now #defined as AVCodecID.
423 Note that this can break user code that includes avcodec.h and uses the
424 'CodecID' identifier. Such code should either #undef CodecID or stop using the
425 CodecID name.
104e10fb 426
7b44061f 4272012-08-03 - 239fdf1 - lavu 51.37.1 - cpu.h
239fdf1b
DB
428 lsws 2.1.1 - swscale.h
429 Rename AV_CPU_FLAG_MMX2 ---> AV_CPU_FLAG_MMXEXT.
430 Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT.
431
7b44061f 4322012-07-29 - 681ed00 - lavf 54.13.0 - avformat.h
681ed000
LB
433 Add AVFMT_FLAG_NOBUFFER for low latency use cases.
434
7b44061f 4352012-07-20 - b70d89a - lavfi 3.0.0 - avfilter.h
b70d89a0
RN
436 Add avfilter_unref_bufferp().
437
45ff9e5b 4382012-07-10 - 5fade8a - lavu 51.37.0
f3e5e6f0
LB
439 Add av_malloc_array() and av_mallocz_array()
440
45ff9e5b 4412012-06-22 - d3d3a32 - lavu 51.34.0
d3d3a32c
MR
442 Add av_usleep()
443
dc7e336c
MR
4442012-06-20 - ae0a301 - lavu 51.33.0
445 Move av_gettime() to libavutil, add libavutil/time.h
446
45ff9e5b 4472012-06-09 - 3971be0 - lavr 0.0.3
3971be0e
JS
448 Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing.
449
45ff9e5b 4502012-06-12 - 9baeff9 - lavfi 2.23.0 - avfilter.h
9baeff95
AK
451 Add AVFilterContext.nb_inputs/outputs. Deprecate
452 AVFilterContext.input/output_count.
453
45ff9e5b 4542012-06-12 - 84b9fbe - lavfi 2.22.0 - avfilter.h
84b9fbe0
AK
455 Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those
456 should now be used instead of accessing AVFilterPad members
457 directly.
458
45ff9e5b 4592012-06-12 - b0f0dfc - lavu 51.32.0 - audioconvert.h
b0f0dfc4
AK
460 Add av_get_channel_layout_channel_index(), av_get_channel_name()
461 and av_channel_layout_extract_channel().
462
45ff9e5b 4632012-05-25 - 154486f - lavu 51.31.0 - opt.h
154486f9
SP
464 Add av_opt_set_bin()
465
45ff9e5b 4662012-05-26 - e9cef89 - lavf 54.3.0
e9cef897
JZ
467 Add AVFMT_TS_NONSTRICT format flag to indicate that a muxer supports
468 non-increasing monotone timestamps.
469
d89eca50
AK
4702012-05-15 - lavfi 2.17.0
471 Add support for audio filters
472 ac71230/a2cd9be - add video/audio buffer sink in a new installed
473 header buffersink.h
474 720c6b7 - add av_buffersrc_write_frame(), deprecate
475 av_vsrc_buffer_add_frame()
476 ab16504 - add avfilter_copy_buf_props()
477 9453c9e - add extended_data to AVFilterBuffer
478 1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays()
479
4802012-05-09 - lavu 51.30.0 - samplefmt.h
481 142e740 - add av_samples_copy()
482 6d7f617 - add av_samples_set_silence()
483
4842012-05-09 - a5117a2 - lavc 54.13.1
a5117a24
AK
485 For audio formats with fixed frame size, the last frame
486 no longer needs to be padded with silence, libavcodec
487 will handle this internally (effectively all encoders
488 behave as if they had CODEC_CAP_SMALL_LAST_FRAME set).
489
d89eca50 4902012-05-07 - 828bd08 - lavc 54.13.0 - avcodec.h
828bd088
AK
491 Add sample_rate and channel_layout fields to AVFrame.
492
d89eca50 4932012-05-01 - 4010d72 - lavr 0.0.1
4010d724
JR
494 Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8.
495
f7ff0999 4962012-04-25 - 3527a73 - lavu 51.29.0 - cpu.h
3527a739
MR
497 Add av_parse_cpu_flags()
498
f7ff0999 4992012-04-24 - c8af852 - lavr 0.0.0
c8af852b
JR
500 Add libavresample audio conversion library
501
f7ff0999 5022012-04-20 - 0c0d1bc - lavu 51.28.0 - audio_fifo.h
0c0d1bce
JR
503 Add audio FIFO functions:
504 av_audio_fifo_free()
505 av_audio_fifo_alloc()
506 av_audio_fifo_realloc()
507 av_audio_fifo_write()
508 av_audio_fifo_read()
509 av_audio_fifo_drain()
510 av_audio_fifo_reset()
511 av_audio_fifo_size()
512 av_audio_fifo_space()
513
f7ff0999
JR
5142012-04-14 - lavfi 2.16.0 - avfiltergraph.h
515 d7bcc71 Add avfilter_graph_parse2().
516 91d3cbe Add avfilter_inout_alloc() and avfilter_inout_free().
91d3cbe0 517
f7ff0999 5182012-04-08 - 4d693b0 - lavu 51.27.0 - samplefmt.h
4d693b02
JR
519 Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()
520
f7ff0999 5212012-04-05 - 5cc51a5 - lavu 51.26.0 - audioconvert.h
5cc51a58
JR
522 Add av_get_default_channel_layout()
523
bf5f46b4
JG
5242012-03-20 - 3c90cc2 - lavfo 54.2.0
525 Deprecate av_read_packet(), use av_read_frame() with
526 AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags
527
5d20e7b7 5282012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h
4d851f8d
AK
529 Add av_set_cpu_flags_mask().
530
5d20e7b7
AK
5312012-03-05 - lavc 54.8.0
532 6699d07 Add av_get_exact_bits_per_sample()
533 9524cf7 Add av_get_audio_frame_duration()
9524cf79 534
5d20e7b7 5352012-03-04 - 44fe77b - lavc 54.7.0 - avcodec.h
44fe77b3
AK
536 Add av_codec_is_encoder/decoder().
537
5d20e7b7 5382012-03-01 - 442c132 - lavc 54.3.0 - avcodec.h
442c1320
MS
539 Add av_packet_shrink_side_data.
540
5d20e7b7 5412012-02-29 - dd2a4bc - lavf 54.2.0 - avformat.h
32253747
AK
542 Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC,
543 used for dealing with attached pictures/cover art.
544
f5f5b154 5452012-02-25 - c9bca80 - lavu 51.24.0 - error.h
c9bca801 546 Add AVERROR_UNKNOWN
75bdd55e 547 NOTE: this was backported to 0.8
c9bca801 548
f5f5b154 5492012-02-20 - e9cda85 - lavc 54.2.0
e9cda853
JR
550 Add duration field to AVCodecParserContext
551
f5f5b154 5522012-02-20 - 0b42a93 - lavu 51.23.1 - mathematics.h
0b42a938
JR
553 Add av_rescale_q_rnd()
554
f5f5b154 5552012-02-08 - 38d5533 - lavu 51.22.1 - pixdesc.h
38d55332
AK
556 Add PIX_FMT_PSEUDOPAL flag.
557
f5f5b154 5582012-02-08 - 52f82a1 - lavc 54.01.0
52f82a11
AK
559 Add avcodec_encode_video2() and deprecate avcodec_encode_video().
560
fcc518a0 5612012-02-01 - 316fc74 - lavc 54.01.0
316fc744
JG
562 Add av_fast_padded_malloc() as alternative for av_realloc() when aligned
563 memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZE
564 zero-padded bytes at the end.
565
fcc518a0 5662012-01-31 - dd6d3b0 - lavf 54.01.0
dd6d3b0e 567 Add avformat_get_riff_video_tags() and avformat_get_riff_audio_tags().
75bdd55e 568 NOTE: this was backported to 0.8
dd6d3b0e 569
fcc518a0 5702012-01-31 - af08d9a - lavc 54.01.0
af08d9ae 571 Add avcodec_is_open() function.
75bdd55e 572 NOTE: this was backported to 0.8
af08d9ae 573
fcc518a0 5742012-01-30 - 8b93312 - lavu 51.22.0 - intfloat.h
8b933129
PM
575 Add a new installed header libavutil/intfloat.h with int/float punning
576 functions.
75bdd55e 577 NOTE: this was backported to 0.8
8b933129 578
6cb28829
MS
5792012-01-25 - lavf 53.22.0
580 f1caf01 Allow doing av_write_frame(ctx, NULL) for flushing possible
581 buffered data within a muxer. Added AVFMT_ALLOW_FLUSH for
582 muxers supporting it (av_write_frame makes sure it is called
583 only for muxers with this flag).
584
75bdd55e
AK
585------------------------------8<-------------------------------------
586 0.8 branch was cut here
587----------------------------->8--------------------------------------
588
7512bb74 5892012-01-15 - lavc 53.34.0
a6ccae3f 590 New audio encoding API:
7512bb74 591 b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio
a6ccae3f 592 encoders.
7512bb74
AK
593 5ee5fa0 Add avcodec_fill_audio_frame() as a convenience function.
594 b2c75b6 Add avcodec_encode_audio2() and deprecate avcodec_encode_audio().
a6ccae3f
JR
595 Add AVCodec.encode2().
596
7512bb74 5972012-01-12 - 3167dc9 - lavfi 2.15.0
3167dc95
AK
598 Add a new installed header -- libavfilter/version.h -- with version macros.
599
c04a954d
JG
6002011-01-03 - b73ec05 - lavu 51.21.0
601 Add av_popcount64
602
06e8d38f
AK
6032011-12-25 - lavfi 2.14.0
604 e1d9dbf Add a new installed header - buffersrc.h
605 It contains a new function av_buffersrc_buffer() that allows passing
606 frames to the 'buffer' filter, but unlike av_vsrc_buffer_add_frame()
607 it allows for direct rendering.
608 1c9e340 Add avfilter_copy_frame_props() for copying properties from
609 AVFrame to AVFilterBufferRef.
610
6112011-12-25 - lavc 53.31.0
612 Add the following new fields to AVFrame:
613 b58dbb5 sample_aspect_ratio
614 3a2ddf7 width, height
615 8a4a5f6 format
616
2a216ca2 6172011-12-18 - 8400b12 - lavc 53.28.1
8400b126
MR
618 Deprecate AVFrame.age. The field is unused.
619
c04a954d
JG
6202011-12-12 - 5266045 - lavf 53.17.0
621 Add avformat_close_input().
52660454
AK
622 Deprecate av_close_input_file() and av_close_input_stream().
623
f134b5ec
VG
6242011-12-09 - b2890f5 - lavu 51.20.0 - audioconvert.h
625 Expand the channel layout list.
626
c04a954d 6272011-12-02 - 0eea212 - lavc 53.25.0
0eea2129
JR
628 Add nb_samples and extended_data fields to AVFrame.
629 Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
630 Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
631 avcodec_decode_audio4() writes output samples to an AVFrame, which allows
632 audio decoders to use get_buffer().
633
c04a954d 6342011-12-04 - 560f773 - lavc 53.24.0
560f773c
JR
635 Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
636 Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
637 Change AVCodecContext.error[4] to [8] at next major bump.
638 Add AV_NUM_DATA_POINTERS to simplify the bump transition.
639
f134b5ec
VG
6402011-11-24 - lavu 51.19.0
641 bd97b2e - add planar RGB pixel formats
642 6b0768e - add PIX_FMT_PLANAR and PIX_FMT_RGB pixel descriptions
643
b94a3b28 6442011-11-23 - bbb46f3 - lavu 51.18.0
bbb46f3e
JR
645 Add av_samples_get_buffer_size(), av_samples_fill_arrays(), and
646 av_samples_alloc(), to samplefmt.h.
647
b94a3b28 6482011-11-23 - 8889cc4 - lavu 51.17.0
8889cc4f
JR
649 Add planar sample formats and av_sample_fmt_is_planar() to samplefmt.h.
650
b94a3b28 6512011-11-19 - f3a29b7 - lavc 53.21.0
f3a29b75
JR
652 Move some AVCodecContext fields to a new private struct, AVCodecInternal,
653 which is accessed from a new field, AVCodecContext.internal.
654 - fields moved:
655 AVCodecContext.internal_buffer --> AVCodecInternal.buffer
656 AVCodecContext.internal_buffer_count --> AVCodecInternal.buffer_count
657 AVCodecContext.is_copy --> AVCodecInternal.is_copy
658
b94a3b28
MR
6592011-11-16 - 6270671 - lavu 51.16.0
660 Add av_timegm()
661
f872e4d0
AK
6622011-11-13 - lavf 53.15.0
663 New interrupt callback API, allowing per-AVFormatContext/AVIOContext
664 interrupt callbacks.
665 6aa0b98 Add AVIOInterruptCB struct and the interrupt_callback field to
666 AVFormatContext.
667 1dee0ac Add avio_open2() with additional parameters. Those are
668 an interrupt callback and an options AVDictionary.
669 This will allow passing AVOptions to protocols after lavf
670 54.0.
671
eacec07e 6722011-11-06 - ba04ecf - lavu 51.14.0
ba04ecfd
RD
673 Add av_strcasecmp() and av_strncasecmp() to avstring.h.
674
eacec07e 6752011-11-06 - 07b172f - lavu 51.13.0
07b172fe
LB
676 Add av_toupper()/av_tolower()
677
eacec07e 6782011-11-05 - b6d08f4 - lavf 53.13.0
c9b309e8 679 Add avformat_network_init()/avformat_network_deinit()
b6d08f40 680
eacec07e 6812011-10-27 - 512557b - lavc 53.15.0
512557b2
JR
682 Remove avcodec_parse_frame.
683 Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY.
684
eacec07e 6852011-10-19 - 569129a - lavf 53.10.0
569129a6
AK
686 Add avformat_new_stream(). Deprecate av_new_stream().
687
eacec07e 6882011-10-13 - b631fba - lavf 53.9.0
b631fba9
JR
689 Add AVFMT_NO_BYTE_SEEK AVInputFormat flag.
690
492bd1a2
AK
6912011-10-12 - lavu 51.12.0
692 AVOptions API rewrite.
693
694 - 145f741 FF_OPT_TYPE* renamed to AV_OPT_TYPE_*
695 - new setting/getting functions with slightly different semantics:
696 dac66da av_set_string3 -> av_opt_set
697 av_set_double -> av_opt_set_double
698 av_set_q -> av_opt_set_q
699 av_set_int -> av_opt_set_int
700
701 41d9d51 av_get_string -> av_opt_get
702 av_get_double -> av_opt_get_double
703 av_get_q -> av_opt_get_q
704 av_get_int -> av_opt_get_int
705
706 - 8c5dcaa trivial rename av_next_option -> av_opt_next
707 - 641c7af new functions - av_opt_child_next, av_opt_child_class_next
708 and av_opt_find2()
709
7f9b0ef9 7102011-09-03 - fb4ca26 - lavc 53.10.0
fb4ca26b
AK
711 lavf 53.6.0
712 lsws 2.1.0
713 Add {avcodec,avformat,sws}_get_class().
714
7f9b0ef9 7152011-09-03 - c11fb82 - lavu 51.10.0
c11fb828
AK
716 Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function.
717
96d8e18a
JN
7182011-08-26 - lavu 51.9.0
719 - f2011ed Add av_fifo_peek2(), deprecate av_fifo_peek().
720 - add41de..abc78a5 Do not include intfloat_readwrite.h,
721 mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h.
f2011ed2 722
7f9b0ef9 7232011-08-16 - 48f9e45 - lavf 53.4.0
48f9e457
AK
724 Add avformat_query_codec().
725
7f9b0ef9 7262011-08-16 - bca06e7 - lavc 53.8.0
bca06e77
AK
727 Add avcodec_get_type().
728
e3a70c7c
DB
7292011-08-06 - 2f63440 - lavf 53.4.0
730 Add error_recognition to AVFormatContext.
731
5038f9b2
LB
7322011-08-02 - 9d39cbf - lavc 53.7.1
733 Add AV_PKT_FLAG_CORRUPT AVPacket flag.
734
6cb11979 7352011-07-10 - a67c061 - lavf 53.3.0
f2f523ff 736 Add avformat_find_stream_info(), deprecate av_find_stream_info().
9c47f2b2 737 NOTE: this was backported to 0.7
f2f523ff 738
6cb11979 7392011-07-10 - 0b950fe - lavc 53.6.0
f2f523ff 740 Add avcodec_open2(), deprecate avcodec_open().
9c47f2b2
AK
741 NOTE: this was backported to 0.7
742
44911f29
AK
743 Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and
744 avcodec_alloc_context2().
f2f523ff 745
6cb11979 7462011-06-23 - 67e9ae1 - lavu 51.8.0 - attributes.h
67e9ae14
MS
747 Add av_printf_format().
748
9c47f2b2
AK
749------------------------------8<-------------------------------------
750 0.7 branch was cut here
751----------------------------->8--------------------------------------
752
6cb11979 7532011-06-16 - 05e84c9, 25de595 - lavf 53.2.0 - avformat.h
7c44d716
AK
754 Add avformat_open_input and avformat_write_header().
755 Deprecate av_open_input_stream, av_open_input_file,
756 AVFormatParameters and av_write_header.
757
6cb11979 7582011-06-16 - 7e83e1c, dc59ec5 - lavu 51.7.0 - opt.h
7c44d716
AK
759 Add av_opt_set_dict() and av_opt_find().
760 Deprecate av_find_opt().
761 Add AV_DICT_APPEND flag.
762
6cb11979 7632011-06-10 - cb7c11c - lavu 51.6.0 - opt.h
cb7c11cc
MS
764 Add av_opt_flag_is_set().
765
6cb11979 7662011-06-08 - d9f80ea - lavu 51.5.0 - AVMetadata
d9f80ea2
AK
767 Move AVMetadata from lavf to lavu and rename it to
768 AVDictionary -- new installed header dict.h.
769 All av_metadata_* functions renamed to av_dict_*.
770
1397ac0a 7712011-06-07 - a6703fa - lavu 51.4.0 - av_get_bytes_per_sample()
a6703faa
SS
772 Add av_get_bytes_per_sample() in libavutil/samplefmt.h.
773 Deprecate av_get_bits_per_sample_fmt().
774
6cb11979 7752011-06-05 - b39b062 - lavu 51.3.0 - opt.h
b39b0623
AK
776 Add av_opt_free convenience function.
777
04de5bf5 7782011-05-28 - 0420bd7 - lavu 51.2.0 - pixdesc.h
8f653e28
SS
779 Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate
780 avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor.
781
19a686b8 7822011-05-25 - 30315a8 - lavf 53.1.0 - avformat.h
30315a8d
AC
783 Add fps_probe_size to AVFormatContext.
784
41e21e4d 7852011-05-18 - 64150ff - lavc 53.4.0 - AVCodecContext.request_sample_fmt
00e5da89
JR
786 Add request_sample_fmt field to AVCodecContext.
787
36dc49b7 7882011-05-10 - 188dea1 - lavc 53.3.0 - avcodec.h
188dea1d
AK
789 Deprecate AVLPCType and the following fields in
790 AVCodecContext: lpc_coeff_precision, prediction_order_method,
791 min_partition_order, max_partition_order, lpc_type, lpc_passes.
792 Corresponding FLAC encoder options should be used instead.
793
36dc49b7 7942011-04-26 - bebe72f - lavu 51.1.0 - avutil.h
bebe72f4
SS
795 Add AVPictureType enum and av_get_picture_type_char(), deprecate
796 FF_*_TYPE defines and av_get_pict_type_char() defined in
797 libavcodec/avcodec.h.
798
36dc49b7 7992011-04-26 - 10d3940 - lavfi 2.3.0 - avfilter.h
10d39405
RPM
800 Add pict_type and key_frame fields to AVFilterBufferRefVideo.
801
36dc49b7 8022011-04-26 - 7a11c82 - lavfi 2.2.0 - vsrc_buffer
7a11c82f
MN
803 Add sample_aspect_ratio fields to vsrc_buffer arguments
804
b4a53314 8052011-04-21 - 94f7451 - lavc 53.1.0 - avcodec.h
94f7451a
RB
806 Add CODEC_CAP_SLICE_THREADS for codecs supporting sliced threading.
807
aad2f2f4
K
8082011-04-15 - lavc 52.120.0 - avcodec.h
809 AVPacket structure got additional members for passing side information:
810 4de339e introduce side information for AVPacket
811 2d8591c make containers pass palette change in AVPacket
812
86a89ae3
AK
8132011-04-12 - lavf 52.107.0 - avio.h
814 Avio cleanup, part II - deprecate the entire URLContext API:
815 175389c add avio_check as a replacement for url_exist
816 ff1ec0c add avio_pause and avio_seek_time as replacements
817 for _av_url_read_fseek/fpause
818 cdc6a87 deprecate av_protocol_next(), avio_enum_protocols
819 should be used instead.
820 80c6e23 rename url_set_interrupt_cb->avio_set_interrupt_cb.
821 f87b1b3 rename open flags: URL_* -> AVIO_*
822 f8270bb add avio_enum_protocols.
823 5593f03 deprecate URLProtocol.
824 c486dad deprecate URLContext.
825 026e175 deprecate the typedef for URLInterruptCB
826 8e76a19 deprecate av_register_protocol2.
827 b840484 deprecate URL_PROTOCOL_FLAG_NESTED_SCHEME
828 1305d93 deprecate av_url_read_seek
829 fa104e1 deprecate av_url_read_pause
830 727c7aa deprecate url_get_filename().
831 5958df3 deprecate url_max_packet_size().
832 1869ea0 deprecate url_get_file_handle().
833 32a97d4 deprecate url_filesize().
834 e52a914 deprecate url_close().
835 58a48c6 deprecate url_seek().
836 925e908 deprecate url_write().
837 dce3756 deprecate url_read_complete().
838 bc371ac deprecate url_read().
839 0589da0 deprecate url_open().
840 62eaaea deprecate url_connect.
841 5652bb9 deprecate url_alloc.
842 333e894 deprecate url_open_protocol
843 e230705 deprecate url_poll and URLPollEntry
844
73389754
PR
8452011-04-10 - lavu 50.40.0 - pixfmt.h
846 Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
847
0c68c804
AK
8482011-04-08 - lavf 52.106.0 - avformat.h
849 Minor avformat.h cleanup:
850 a9bf9d8 deprecate av_guess_image2_codec
851 c3675df rename avf_sdp_create->av_sdp_create
852
4dcde00c
AK
8532011-04-03 - lavf 52.105.0 - avio.h
854 Large-scale renaming/deprecating of AVIOContext-related functions:
855 724f6a0 deprecate url_fdopen
856 403ee83 deprecate url_open_dyn_packet_buf
857 6dc7d80 rename url_close_dyn_buf -> avio_close_dyn_buf
858 b92c545 rename url_open_dyn_buf -> avio_open_dyn_buf
859 8978fed introduce an AVIOContext.seekable field as a replacement for
860 AVIOContext.is_streamed and url_is_streamed()
861 b64030f deprecate get_checksum()
862 4c4427a deprecate init_checksum()
863 4ec153b deprecate udp_set_remote_url/get_local_port
864 933e90a deprecate av_url_read_fseek/fpause
865 8d9769a deprecate url_fileno
866 b7f2fdd rename put_flush_packet -> avio_flush
867 35f1023 deprecate url_close_buf
868 83fddae deprecate url_open_buf
869 d9d86e0 rename url_fprintf -> avio_printf
870 59f65d9 deprecate url_setbufsize
871 3e68b3b deprecate url_ferror
872 66e5b1d deprecate url_feof
873 e8bb2e2 deprecate url_fget_max_packet_size
874 76aa876 rename url_fsize -> avio_size
875 e519753 deprecate url_fgetc
876 655e45e deprecate url_fgets
877 a2704c9 rename url_ftell -> avio_tell
878 e16ead0 deprecate get_strz() in favor of avio_get_str
879 0300db8,2af07d3 rename url_fskip -> avio_skip
880 6b4aa5d rename url_fseek -> avio_seek
881 61840b4 deprecate put_tag
882 22a3212 rename url_fopen/fclose -> avio_open/close.
883 0ac8e2b deprecate put_nbyte
884 77eb550 rename put_byte -> avio_w8
885 put_[b/l]e<type> -> avio_w[b/l]<type>
886 put_buffer -> avio_write
887 b7effd4 rename get_byte -> avio_r8,
888 get_[b/l]e<type> -> avio_r[b/l]<type>
889 get_buffer -> avio_read
890 b3db9ce deprecate get_partial_buffer
891 8d9ac96 rename av_alloc_put_byte -> avio_alloc_context
892
0b18b49b
JR
8932011-03-25 - 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type
894 Add audio_service_type field to AVCodecContext.
895
dc6fdad5
MS
8962011-03-02 - 863c471 - lavf 52.103.0 - av_pkt_dump2, av_pkt_dump_log2
897 Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
898 source stream timebase for outputting timestamps. Deprecate
899 av_pkt_dump and av_pkt_dump_log.
900
d2bbf82e
RB
9012011-02-20 - e731b8d - lavf 52.102.0 - avio.h
902 * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the
903 original, and move it to a private header so it is no longer
904 part of our public API. Instead, use av_alloc_put_byte().
905 * ae628ec - rename ByteIOContext to AVIOContext.
906
c3dbfa1a 9072011-02-16 - 09d171b - lavf 52.101.0 - avformat.h
09d171b9 908 lavu 52.39.0 - parseutils.h
c3dbfa1a
JG
909 * 610219a - Add av_ prefix to dump_format().
910 * f6c7375 - Replace parse_date() in lavf with av_parse_time() in lavu.
911 * ab0287f - Move find_info_tag from lavf to lavu and add av_prefix to it.
09d171b9 912
737eb597
RT
9132011-02-15 - lavu 52.38.0 - merge libavcore
914 libavcore is merged back completely into libavutil
915
8ed4cc65
MR
9162011-02-10 - 55bad0c - lavc 52.113.0 - vbv_delay
917 Add vbv_delay field to AVCodecContext
918
935ee1b9
MR
9192011-02-14 - 24a83bd - lavf 52.100.0 - AV_DISPOSITION_CLEAN_EFFECTS
920 Add AV_DISPOSITION_CLEAN_EFFECTS disposition flag.
921
08a459f0
MR
9222011-02-14 - 910b5b8 - lavfi 1.76.0 - AVFilterLink sample_aspect_ratio
923 Add sample_aspect_ratio field to AVFilterLink.
924
77c330a0
AH
9252011-02-10 - 12c14cd - lavf 52.99.0 - AVStream.disposition
926 Add AV_DISPOSITION_HEARING_IMPAIRED and AV_DISPOSITION_VISUAL_IMPAIRED.
927
f2146944 9282011-02-09 - 5592734 - lavc 52.112.0 - avcodec_thread_init()
c0b102ca
AS
929 Deprecate avcodec_thread_init()/avcodec_thread_free() use; instead
930 set thread_count before calling avcodec_open.
931
8e8cc52b 9322011-02-09 - 778b08a - lavc 52.111.0 - threading API
37b00b47
AS
933 Add CODEC_CAP_FRAME_THREADS with new restrictions on get_buffer()/
934 release_buffer()/draw_horiz_band() callbacks for appropriate codecs.
935 Add thread_type and active_thread_type fields to AVCodecContext.
936
c2bd7578 9372011-02-08 - 3940caa - lavf 52.98.0 - av_probe_input_buffer
3940caad
AH
938 Add av_probe_input_buffer() to avformat.h for probing format from a
939 ByteIOContext.
940
ae0f8a1a 9412011-02-06 - fe174fc - lavf 52.97.0 - avio.h
fe174fc8
NG
942 Add flag for non-blocking protocols: URL_FLAG_NONBLOCK
943
ff197489
MS
9442011-02-04 - f124b08 - lavf 52.96.0 - avformat_free_context()
945 Add avformat_free_context() in avformat.h.
946
75fd0668
TH
9472011-02-03 - f5b82f4 - lavc 52.109.0 - add CODEC_ID_PRORES
948 Add CODEC_ID_PRORES to avcodec.h.
949
7ab8758b
JG
9502011-02-03 - fe9a3fb - lavc 52.109.0 - H.264 profile defines
951 Add defines for H.264 * Constrained Baseline and Intra profiles
952
4868bebe
AK
9532011-02-02 - lavf 52.95.0
954 * 50196a9 - add a new installed header version.h.
955 * 4efd5cf, dccbd97, 93b78d1 - add several variants of public
956 avio_{put,get}_str* functions. Deprecate corresponding semi-public
957 {put,get}_str*.
958
9592011-02-02 - dfd2a00 - lavu 50.37.0 - log.h
960 Make av_dlog public.
961
343bfdd3 9622011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps
a242ac36
SS
963 Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples.
964
343bfdd3 9652011-01-14 - 7f88a5b - lavf 52.93.0 - av_metadata_copy()
f93fe776
SS
966 Add av_metadata_copy() in avformat.h.
967
343bfdd3 9682011-01-07 - 81c623f - lavc 52.107.0 - deprecate reordered_opaque
81c623fa
MN
969 Deprecate reordered_opaque in favor of pkt_pts/dts.
970
343bfdd3 9712011-01-07 - 1919fea - lavc 52.106.0 - pkt_dts
1919feaf
MN
972 Add pkt_dts to AVFrame, this will in the future allow multithreading decoders
973 to not mess up dts.
974
343bfdd3 9752011-01-07 - 393cbb9 - lavc 52.105.0 - pkt_pts
393cbb96
MN
976 Add pkt_pts to AVFrame.
977
343bfdd3 9782011-01-07 - 060ec0a - lavc 52.104.0 - av_get_profile_name()
060ec0a8
AH
979 Add av_get_profile_name to libavcodec/avcodec.h.
980
343bfdd3 9812010-12-27 - 0ccabee - lavfi 1.71.0 - AV_PERM_NEG_LINESIZES
28e5d45c
SS
982 Add AV_PERM_NEG_LINESIZES in avfilter.h.
983
343bfdd3 9842010-12-27 - 9128ae0 - lavf 52.91.0 - av_find_best_stream()
9128ae08
NG
985 Add av_find_best_stream to libavformat/avformat.h.
986
343bfdd3 9872010-12-27 - 107a7e3 - lavf 52.90.0
107a7e3e
AK
988 Add AVFMT_NOSTREAMS flag for formats with no streams,
989 like e.g. text metadata.
990
343bfdd3 9912010-12-22 - 0328b9e - lavu 50.36.0 - file.h
0328b9ea
SS
992 Add functions av_file_map() and av_file_unmap() in file.h.
993
343bfdd3 9942010-12-19 - 0bc55f5 - lavu 50.35.0 - error.h
0bc55f5d
NG
995 Add "not found" error codes:
996 AVERROR_DEMUXER_NOT_FOUND
997 AVERROR_MUXER_NOT_FOUND
998 AVERROR_DECODER_NOT_FOUND
999 AVERROR_ENCODER_NOT_FOUND
1000 AVERROR_PROTOCOL_NOT_FOUND
1001 AVERROR_FILTER_NOT_FOUND
1002 AVERROR_BSF_NOT_FOUND
1003 AVERROR_STREAM_NOT_FOUND
1004
343bfdd3 10052010-12-09 - c61cdd0 - lavcore 0.16.0 - avcore.h
c61cdd0a
SS
1006 Move AV_NOPTS_VALUE, AV_TIME_BASE, AV_TIME_BASE_Q symbols from
1007 avcodec.h to avcore.h.
1008
343bfdd3 10092010-12-04 - 16cfc96 - lavc 52.98.0 - CODEC_CAP_NEG_LINESIZES
16cfc961
SS
1010 Add CODEC_CAP_NEG_LINESIZES codec capability flag in avcodec.h.
1011
343bfdd3 10122010-12-04 - bb4afa1 - lavu 50.34.0 - av_get_pix_fmt_string()
bb4afa13
SS
1013 Deprecate avcodec_pix_fmt_string() in favor of
1014 pixdesc.h/av_get_pix_fmt_string().
1015
343bfdd3 10162010-12-04 - 4da12e3 - lavcore 0.15.0 - av_image_alloc()
4da12e3b
SS
1017 Add av_image_alloc() to libavcore/imgutils.h.
1018
343bfdd3 10192010-12-02 - 037be76 - lavfi 1.67.0 - avfilter_graph_create_filter()
037be76e
SS
1020 Add function avfilter_graph_create_filter() in avfiltergraph.h.
1021
343bfdd3 10222010-11-25 - 4723bc2 - lavfi 1.65.0 - avfilter_get_video_buffer_ref_from_arrays()
d38c340f
SS
1023 Add function avfilter_get_video_buffer_ref_from_arrays() in
1024 avfilter.h.
06d19718 1025
343bfdd3 10262010-11-21 - 176a615 - lavcore 0.14.0 - audioconvert.h
176a6157
SS
1027 Add a public audio channel API in audioconvert.h, and deprecate the
1028 corresponding functions in libavcodec:
1029 avcodec_get_channel_name()
1030 avcodec_get_channel_layout()
1031 avcodec_get_channel_layout_string()
1032 avcodec_channel_layout_num_channels()
1033 and the CH_* macros defined in libavcodec/avcodec.h.
1034
343bfdd3 10352010-11-21 - 6bfc268 - lavf 52.85.0 - avformat.h
e58d0392
RD
1036 Add av_append_packet().
1037
343bfdd3 10382010-11-21 - a08d918 - lavc 52.97.0 - avcodec.h
e58d0392
RD
1039 Add av_grow_packet().
1040
343bfdd3 10412010-11-17 - 0985e1a - lavcore 0.13.0 - parseutils.h
0985e1a3
AJ
1042 Add av_parse_color() declared in libavcore/parseutils.h.
1043
343bfdd3 10442010-11-13 - cb2c971 - lavc 52.95.0 - AVCodecContext
c716f917
AJ
1045 Add AVCodecContext.subtitle_header and AVCodecContext.subtitle_header_size
1046 fields.
1047
343bfdd3 10482010-11-13 - 5aaea02 - lavfi 1.62.0 - avfiltergraph.h
5aaea022
SS
1049 Make avfiltergraph.h public.
1050
343bfdd3 10512010-11-13 - 4fcbb2a - lavfi 1.61.0 - avfiltergraph.h
4fcbb2af
SS
1052 Remove declarations from avfiltergraph.h for the functions:
1053 avfilter_graph_check_validity()
1054 avfilter_graph_config_links()
1055 avfilter_graph_config_formats()
1056 which are now internal.
1057 Use avfilter_graph_config() instead.
1058
343bfdd3 10592010-11-08 - d2af720 - lavu 50.33.0 - eval.h
d2af7205
SS
1060 Deprecate functions:
1061 av_parse_and_eval_expr(),
1062 av_parse_expr(),
1063 av_eval_expr(),
1064 av_free_expr(),
1065 in favor of the functions:
1066 av_expr_parse_and_eval(),
1067 av_expr_parse(),
1068 av_expr_eval(),
1069 av_expr_free().
1070
343bfdd3 10712010-11-08 - 24de0ed - lavfi 1.59.0 - avfilter_free()
24de0edb
SS
1072 Rename avfilter_destroy() to avfilter_free().
1073 This change breaks libavfilter API/ABI.
1074
343bfdd3 10752010-11-07 - 1e80a0e - lavfi 1.58.0 - avfiltergraph.h
1e80a0ea
SS
1076 Remove graphparser.h header, move AVFilterInOut and
1077 avfilter_graph_parse() declarations to libavfilter/avfiltergraph.h.
1078
343bfdd3 10792010-11-07 - 7313132 - lavfi 1.57.0 - AVFilterInOut
da6ec07c
SS
1080 Rename field AVFilterInOut.filter to AVFilterInOut.filter_ctx.
1081 This change breaks libavfilter API.
1082
343bfdd3 10832010-11-04 - 97dd1e4 - lavfi 1.56.0 - avfilter_graph_free()
97dd1e4a
SS
1084 Rename avfilter_graph_destroy() to avfilter_graph_free().
1085 This change breaks libavfilter API/ABI.
1086
343bfdd3 10872010-11-04 - e15aeea - lavfi 1.55.0 - avfilter_graph_alloc()
e15aeea6
SS
1088 Add avfilter_graph_alloc() to libavfilter/avfiltergraph.h.
1089
343bfdd3 10902010-11-02 - 6f84cd1 - lavcore 0.12.0 - av_get_bits_per_sample_fmt()
6f84cd12
SS
1091 Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and
1092 deprecate av_get_bits_per_sample_format().
1093
343bfdd3 10942010-11-02 - d63e456 - lavcore 0.11.0 - samplefmt.h
d63e456a
SS
1095 Add sample format functions in libavcore/samplefmt.h:
1096 av_get_sample_fmt_name(),
1097 av_get_sample_fmt(),
1098 av_get_sample_fmt_string(),
1099 and deprecate the corresponding libavcodec/audioconvert.h functions:
1100 avcodec_get_sample_fmt_name(),
1101 avcodec_get_sample_fmt(),
1102 avcodec_sample_fmt_string().
1103
343bfdd3 11042010-11-02 - 262d1c5 - lavcore 0.10.0 - samplefmt.h
262d1c5d
SS
1105 Define enum AVSampleFormat in libavcore/samplefmt.h, deprecate enum
1106 SampleFormat.
1107
343bfdd3 11082010-10-16 - 2a24df9 - lavfi 1.52.0 - avfilter_graph_config()
2a24df93
SS
1109 Add the function avfilter_graph_config() in avfiltergraph.h.
1110
343bfdd3 11112010-10-15 - 03700d3 - lavf 52.83.0 - metadata API
03700d39
AK
1112 Change demuxers to export metadata in generic format and
1113 muxers to accept generic format. Deprecate the public
1114 conversion API.
1115
343bfdd3 11162010-10-10 - 867ae7a - lavfi 1.49.0 - AVFilterLink.time_base
77611295
SS
1117 Add time_base field to AVFilterLink.
1118
343bfdd3 11192010-09-27 - c85eef4 - lavu 50.31.0 - av_set_options_string()
c6625ad5
SS
1120 Move av_set_options_string() from libavfilter/parseutils.h to
1121 libavutil/opt.h.
1122
343bfdd3 11232010-09-27 - acc0490 - lavfi 1.47.0 - AVFilterLink
4ecf1539
SS
1124 Make the AVFilterLink fields srcpad and dstpad store the pointers to
1125 the source and destination pads, rather than their indexes.
1126
343bfdd3 11272010-09-27 - 372e288 - lavu 50.30.0 - av_get_token()
b3dd5e59
SS
1128 Move av_get_token() from libavfilter/parseutils.h to
1129 libavutil/avstring.h.
1130
343bfdd3 11312010-09-26 - 635d4ae - lsws 0.12.0 - swscale.h
c5812793
SS
1132 Add the functions sws_alloc_context() and sws_init_context().
1133
343bfdd3 11342010-09-26 - 6ed0404 - lavu 50.29.0 - opt.h
41f87daa
SS
1135 Move libavcodec/opt.h to libavutil/opt.h.
1136
343bfdd3 11372010-09-24 - 1c1c80f - lavu 50.28.0 - av_log_set_flags()
1c1c80f0
MN
1138 Default of av_log() changed due to many problems to the old no repeat
1139 detection. Read the docs of AV_LOG_SKIP_REPEATED in log.h before
1140 enabling it for your app!.
1141
343bfdd3 11422010-09-24 - f66eb58 - lavc 52.90.0 - av_opt_show2()
07cac2a0
SS
1143 Deprecate av_opt_show() in favor or av_opt_show2().
1144
343bfdd3 11452010-09-14 - bc6f0af - lavu 50.27.0 - av_popcount()
07cac2a0
SS
1146 Add av_popcount() to libavutil/common.h.
1147
343bfdd3 11482010-09-08 - c6c98d0 - lavu 50.26.0 - av_get_cpu_flags()
15cae5e6
SS
1149 Add av_get_cpu_flags().
1150
343bfdd3 11512010-09-07 - 34017fd - lavcore 0.9.0 - av_image_copy()
16bacad4
SS
1152 Add av_image_copy().
1153
343bfdd3 11542010-09-07 - 9686abb - lavcore 0.8.0 - av_image_copy_plane()
16bacad4
SS
1155 Add av_image_copy_plane().
1156
343bfdd3 11572010-09-07 - 9b7269e - lavcore 0.7.0 - imgutils.h
1904035b
SS
1158 Adopt hierarchical scheme for the imgutils.h function names,
1159 deprecate the old names.
1160
343bfdd3 11612010-09-04 - 7160bb7 - lavu 50.25.0 - AV_CPU_FLAG_*
47806f41
SS
1162 Deprecate the FF_MM_* flags defined in libavcodec/avcodec.h in favor
1163 of the AV_CPU_FLAG_* flags defined in libavutil/cpu.h.
1164
343bfdd3 11652010-08-26 - 5da19b5 - lavc 52.87.0 - avcodec_get_channel_layout()
798dc641
SS
1166 Add avcodec_get_channel_layout() in audioconvert.h.
1167
343bfdd3 11682010-08-20 - e344336 - lavcore 0.6.0 - av_fill_image_max_pixsteps()
26553088
SS
1169 Rename av_fill_image_max_pixstep() to av_fill_image_max_pixsteps().
1170
343bfdd3 11712010-08-18 - a6ddf8b - lavcore 0.5.0 - av_fill_image_max_pixstep()
33d2e7b3
SS
1172 Add av_fill_image_max_pixstep() in imgutils.h.
1173
343bfdd3 11742010-08-17 - 4f2d2e4 - lavu 50.24.0 - AV_NE()
7f38d28c
SS
1175 Add the AV_NE macro.
1176
343bfdd3 11772010-08-17 - ad2c950 - lavfi 1.36.0 - audio framework
3f52a907
SS
1178 Implement AVFilterBufferRefAudioProps struct for audio properties,
1179 get_audio_buffer(), filter_samples() functions and related changes.
1180
343bfdd3 11812010-08-12 - 81c1eca - lavcore 0.4.0 - av_get_image_linesize()
d1a04371
SS
1182 Add av_get_image_linesize() in imgutils.h.
1183
343bfdd3 11842010-08-11 - c1db7bf - lavfi 1.34.0 - AVFilterBufferRef
5bf840c4
SS
1185 Resize data and linesize arrays in AVFilterBufferRef to 8.
1186
1187 This change breaks libavfilter API/ABI.
1188
343bfdd3 11892010-08-11 - 9f08d80 - lavc 52.85.0 - av_picture_data_copy()
c6a34954
SS
1190 Add av_picture_data_copy in avcodec.h.
1191
343bfdd3 11922010-08-11 - 84c0386 - lavfi 1.33.0 - avfilter_open()
c7c7feaa
SS
1193 Change avfilter_open() signature:
1194 AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name) ->
1195 int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);
1196
1197 This change breaks libavfilter API/ABI.
1198
343bfdd3 11992010-08-11 - cc80caf - lavfi 1.32.0 - AVFilterBufferRef
ad0d70c9
SS
1200 Add a type field to AVFilterBufferRef, and move video specific
1201 properties to AVFilterBufferRefVideoProps.
1202
4bf2d6e8 1203 This change breaks libavfilter API/ABI.
ad0d70c9 1204
343bfdd3 12052010-08-07 - 5d4890d - lavfi 1.31.0 - AVFilterLink
711d14cf
SS
1206 Rename AVFilterLink fields:
1207 AVFilterLink.srcpic -> AVFilterLink.src_buf
1208 AVFilterLink.cur_pic -> AVFilterLink.cur_buf
1209 AVFilterLink.outpic -> AVFilterLink.out_buf
1210
343bfdd3 12112010-08-07 - 7fce481 - lavfi 1.30.0
711d14cf
SS
1212 Rename functions and fields:
1213 avfilter_(un)ref_pic -> avfilter_(un)ref_buffer
1214 avfilter_copy_picref_props -> avfilter_copy_buffer_ref_props
1215 AVFilterBufferRef.pic -> AVFilterBufferRef.buffer
1216
343bfdd3 12172010-08-07 - ecc8dad - lavfi 1.29.0 - AVFilterBufferRef
711d14cf
SS
1218 Rename AVFilterPicRef to AVFilterBufferRef.
1219
343bfdd3 12202010-08-07 - d54e094 - lavfi 1.28.0 - AVFilterBuffer
e11b104a
SS
1221 Move format field from AVFilterBuffer to AVFilterPicRef.
1222
343bfdd3 12232010-08-06 - bf176f5 - lavcore 0.3.0 - av_check_image_size()
71cb41db
SS
1224 Deprecate avcodec_check_dimensions() in favor of the function
1225 av_check_image_size() defined in libavcore/imgutils.h.
1226
343bfdd3 12272010-07-30 - 56b5e9d - lavfi 1.27.0 - AVFilterBuffer
92dd4959
SS
1228 Increase size of the arrays AVFilterBuffer.data and
1229 AVFilterBuffer.linesize from 4 to 8.
1230
1231 This change breaks libavfilter ABI.
1232
343bfdd3 12332010-07-29 - e7bd48a - lavcore 0.2.0 - imgutils.h
3dec10cd
SS
1234 Add functions av_fill_image_linesizes() and
1235 av_fill_image_pointers(), declared in libavcore/imgutils.h.
1236
343bfdd3 12372010-07-27 - 126b638 - lavcore 0.1.0 - parseutils.h
fa8ead00
SS
1238 Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
1239 defined in libavcodec in favor of the newly added functions
1240 av_parse_video_size() and av_parse_video_rate() declared in
1241 libavcore/parseutils.h.
1242
343bfdd3 12432010-07-23 - 4485247 - lavu 50.23.0 - mathematics.h
c257c752
SS
1244 Add the M_PHI constant definition.
1245
343bfdd3 12462010-07-22 - bdab614 - lavfi 1.26.0 - media format generalization
73642926
SS
1247 Add a type field to AVFilterLink.
1248
1249 Change the field types:
1250 enum PixelFormat format -> int format in AVFilterBuffer
1251 enum PixelFormat *formats -> int *formats in AVFilterFormats
1252 enum PixelFormat *format -> int format in AVFilterLink
1253
1254 Change the function signatures:
1255 AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); ->
1256 AVFilterFormats *avfilter_make_format_list(const int *fmts);
1257
1258 int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); ->
1259 int avfilter_add_format (AVFilterFormats **avff, int fmt);
1260
1261 AVFilterFormats *avfilter_all_colorspaces(void); ->
1262 AVFilterFormats *avfilter_all_formats (enum AVMediaType type);
1263
1264 This change breaks libavfilter API/ABI.
1265
343bfdd3 12662010-07-21 - aac6ca6 - lavcore 0.0.0
a33e0365
SS
1267 Add libavcore.
1268
343bfdd3 12692010-07-17 - b5c582f - lavfi 1.25.0 - AVFilterBuffer
8e9d9308
SS
1270 Remove w and h fields from AVFilterBuffer.
1271
343bfdd3 12722010-07-17 - f0d77b2 - lavfi 1.24.0 - AVFilterBuffer
9840147d
SS
1273 Rename AVFilterPic to AVFilterBuffer.
1274
343bfdd3 12752010-07-17 - 57fe80f - lavf 52.74.0 - url_fskip()
57fe80fe
MS
1276 Make url_fskip() return an int error code instead of void.
1277
343bfdd3 12782010-07-11 - 23940f1 - lavc 52.83.0
6f5ac9c1 1279 Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields.
23940f14
JR
1280 Add AVLPCType enum.
1281 Deprecate AVCodecContext.use_lpc.
1282
343bfdd3 12832010-07-11 - e1d7c88 - lavc 52.82.0 - avsubtitle_free()
e1d7c883
RD
1284 Add a function for free the contents of a AVSubtitle generated by
1285 avcodec_decode_subtitle.
1286
343bfdd3 12872010-07-11 - b91d08f - lavu 50.22.0 - bswap.h and intreadwrite.h
617d56ca
SS
1288 Make the bswap.h and intreadwrite.h API public.
1289
343bfdd3 12902010-07-08 - ce1cd1c - lavu 50.21.0 - pixdesc.h
52706b95
SS
1291 Rename read/write_line() to av_read/write_image_line().
1292
343bfdd3 12932010-07-07 - 4d508e4 - lavfi 1.21.0 - avfilter_copy_picref_props()
16400da6 1294 Add avfilter_copy_picref_props().
52706b95 1295
343bfdd3 12962010-07-03 - 2d525ef - lavc 52.79.0
16400da6
SS
1297 Add FF_COMPLIANCE_UNOFFICIAL and change all instances of
1298 FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL.
34171e87 1299
343bfdd3 13002010-07-02 - 89eec74 - lavu 50.20.0 - lfg.h
13088d27
RP
1301 Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through
1302 lfg.h.
1303
343bfdd3 13042010-06-28 - a52e2c3 - lavfi 1.20.1 - av_parse_color()
6951515c
SS
1305 Extend av_parse_color() syntax, make it accept an alpha value specifier and
1306 set the alpha value to 255 by default.
1307
343bfdd3 13082010-06-22 - 735cf6b - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class
16400da6 1309 Add priv_data_size and priv_data_class to URLProtocol.
58cc11c7 1310
343bfdd3 13112010-06-22 - ffbb289 - lavf 52.70.0 - url_alloc(), url_connect()
16400da6 1312 Add url_alloc() and url_connect().
4636f115 1313
343bfdd3 13142010-06-22 - 9b07a2d - lavf 52.69.0 - av_register_protocol2()
16400da6 1315 Add av_register_protocol2(), deprecating av_register_protocol().
6c4cbc8d 1316
343bfdd3 13172010-06-09 - 65db058 - lavu 50.19.0 - av_compare_mod()
276b45af
SS
1318 Add av_compare_mod() to libavutil/mathematics.h.
1319
343bfdd3 13202010-06-05 - 0b99215 - lavu 50.18.0 - eval API
4cd5100c
SS
1321 Make the eval API public.
1322
343bfdd3 13232010-06-04 - 31878fc - lavu 50.17.0 - AV_BASE64_SIZE
6532c6f9
SS
1324 Add AV_BASE64_SIZE() macro.
1325
343bfdd3 13262010-06-02 - 7e566bb - lavc 52.73.0 - av_get_codec_tag_string()
2a00992f
SS
1327 Add av_get_codec_tag_string().
1328
343bfdd3 13292010-06-01 - 2b99142 - lsws 0.11.0 - convertPalette API
16400da6 1330 Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24().
7f464a0a 1331
343bfdd3 13322010-05-26 - 93ebfee - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL
fe9c2007 1333 Add CODEC_CAP_EXPERIMENTAL flag.
95c851e2 1334 NOTE: this was backported to 0.6
fe9c2007 1335
343bfdd3 13362010-05-23 - 9977863 - lavu 50.16.0 - av_get_random_seed()
16400da6 1337 Add av_get_random_seed().
cca68a54 1338
343bfdd3 13392010-05-18 - 796ac23 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT
16400da6 1340 Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags.
95c851e2 1341 NOTE: this was backported to 0.6
b724102a 1342
343bfdd3 13432010-05-09 - b6bc205 - lavfi 1.20.0 - AVFilterPicRef
fc25c049
SS
1344 Add interlaced and top_field_first fields to AVFilterPicRef.
1345
95c851e2
AK
1346------------------------------8<-------------------------------------
1347 0.6 branch was cut here
1348----------------------------->8--------------------------------------
1349
343bfdd3 13502010-05-01 - 8e2ee18 - lavf 52.62.0 - probe function
d0eb2b78
RD
1351 Add av_probe_input_format2 to API, it allows ignoring probe
1352 results below given score and returns the actual probe score.
1353
343bfdd3 13542010-04-01 - 3dd6180 - lavf 52.61.0 - metadata API
3dd6180f
AK
1355 Add a flag for av_metadata_set2() to disable overwriting of
1356 existing tags.
1357
343bfdd3 13582010-04-01 - 0fb49b5 - lavc 52.66.0
16400da6 1359 Add avcodec_get_edge_width().
0fb49b59 1360
343bfdd3 13612010-03-31 - d103218 - lavc 52.65.0
c846a984
RB
1362 Add avcodec_copy_context().
1363
343bfdd3 13642010-03-31 - 1a70d12 - lavf 52.60.0 - av_match_ext()
e33f1fa0
SS
1365 Make av_match_ext() public.
1366
343bfdd3 13672010-03-31 - 1149150 - lavu 50.14.0 - AVMediaType
fc8b1075
SS
1368 Move AVMediaType enum from libavcodec to libavutil.
1369
343bfdd3 13702010-03-31 - 72415b2 - lavc 52.64.0 - AVMediaType
fc8b1075
SS
1371 Define AVMediaType enum, and use it instead of enum CodecType, which
1372 is deprecated and will be dropped at the next major bump.
1373
343bfdd3 13742010-03-25 - 8795823 - lavu 50.13.0 - av_strerror()
82ba847e
SS
1375 Implement av_strerror().
1376
343bfdd3 13772010-03-23 - e1484eb - lavc 52.60.0 - av_dct_init()
16400da6 1378 Support DCT-I and DST-I.
e1484ebe 1379
343bfdd3 13802010-03-15 - b8819c8 - lavf 52.56.0 - AVFormatContext.start_time_realtime
a5b3d34b
MS
1381 Add AVFormatContext.start_time_realtime field.
1382
343bfdd3 13832010-03-13 - 5bb5c1d - lavfi 1.18.0 - AVFilterPicRef.pos
8955a324
SS
1384 Add AVFilterPicRef.pos field.
1385
343bfdd3 13862010-03-13 - 60c144f - lavu 50.12.0 - error.h
99de2b59
SS
1387 Move error code definitions from libavcodec/avcodec.h to
1388 the new public header libavutil/error.h.
1389
343bfdd3 13902010-03-07 - c709483 - lavc 52.56.0 - avfft.h
c7094831
MR
1391 Add public FFT interface.
1392
343bfdd3 13932010-03-06 - ac6ef86 - lavu 50.11.0 - av_stristr()
c18fb631
SS
1394 Add av_stristr().
1395
343bfdd3 13962010-03-03 - 4b83fc0 - lavu 50.10.0 - av_tree_enumerate()
4b83fc0f
VS
1397 Add av_tree_enumerate().
1398
343bfdd3 13992010-02-07 - b687c1a - lavu 50.9.0 - av_compare_ts()
fbef7a76
SS
1400 Add av_compare_ts().
1401
343bfdd3 14022010-02-05 - 3f3dc76 - lsws 0.10.0 - sws_getCoefficients()
e49407ee
SS
1403 Add sws_getCoefficients().
1404
343bfdd3 14052010-02-01 - ca76a11 - lavf 52.50.0 - metadata API
ca76a119
AK
1406 Add a list of generic tag names, change 'author' -> 'artist',
1407 'year' -> 'date'.
1408
343bfdd3 14092010-01-30 - 80a07f6 - lavu 50.8.0 - av_get_pix_fmt()
14ace37e
SS
1410 Add av_get_pix_fmt().
1411
343bfdd3 14122010-01-21 - 01cc47d - lsws 0.9.0 - sws_scale()
e49407ee
SS
1413 Change constness attributes of sws_scale() parameters.
1414
343bfdd3 14152010-01-10 - 3fb8e77 - lavfi 1.15.0 - avfilter_graph_config_links()
2d187e23
SS
1416 Add a log_ctx parameter to avfilter_graph_config_links().
1417
343bfdd3 14182010-01-07 - 8e9767f - lsws 0.8.0 - sws_isSupported{In,Out}put()
1c790092 1419 Add sws_isSupportedInput() and sws_isSupportedOutput() functions.
715cff9a 1420
343bfdd3 14212010-01-06 - c1d662f - lavfi 1.14.0 - avfilter_add_colorspace()
1e289b09
SS
1422 Change the avfilter_add_colorspace() signature, make it accept an
1423 (AVFilterFormats **) rather than an (AVFilterFormats *) as before.
1424
343bfdd3 14252010-01-03 - 4fd1f18 - lavfi 1.13.0 - avfilter_add_colorspace()
a2b16627
SS
1426 Add avfilter_add_colorspace().
1427
343bfdd3 14282010-01-02 - 8eb631f - lavf 52.46.0 - av_match_ext()
79c2f2d3
SS
1429 Add av_match_ext(), it should be used in place of match_ext().
1430
343bfdd3 14312010-01-01 - a1f547b - lavf 52.45.0 - av_guess_format()
bb1a8793
SS
1432 Add av_guess_format(), it should be used in place of guess_format().
1433
343bfdd3 14342009-12-13 - a181981 - lavf 52.43.0 - metadata API
16400da6
SS
1435 Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and
1436 AV_METADATA_DONT_STRDUP_VAL.
b8f11ec8 1437
343bfdd3 14382009-12-13 - 277c733 - lavu 50.7.0 - avstring.h API
f69d394f 1439 Add av_d2str().
60a92a77 1440
343bfdd3 14412009-12-13 - 02b398e - lavc 52.42.0 - AVStream
f69d394f 1442 Add avg_frame_rate.
c3d15329 1443
343bfdd3 14442009-12-12 - 3ba69a1 - lavu 50.6.0 - av_bmg_next()
54c24216
SS
1445 Introduce the av_bmg_next() function.
1446
343bfdd3 14472009-12-05 - a13a543 - lavfi 1.12.0 - avfilter_draw_slice()
11f6d098
SS
1448 Add a slice_dir parameter to avfilter_draw_slice().
1449
343bfdd3 14502009-11-26 - 4cc3f6a - lavfi 1.11.0 - AVFilter
7cab9a66
SS
1451 Remove the next field from AVFilter, this is not anymore required.
1452
343bfdd3 14532009-11-25 - 1433c4a - lavfi 1.10.0 - avfilter_next()
b5a683eb
SS
1454 Introduce the avfilter_next() function.
1455
343bfdd3 14562009-11-25 - 86a60fa - lavfi 1.9.0 - avfilter_register()
73e2247d
SS
1457 Change the signature of avfilter_register() to make it return an
1458 int. This is required since now the registration operation may fail.
1459
343bfdd3 14602009-11-25 - 74a0059 - lavu 50.5.0 - pixdesc.h API
d0df2fcc
SS
1461 Make the pixdesc.h API public.
1462
343bfdd3 14632009-10-27 - 243110f - lavfi 1.5.0 - AVFilter.next
290d4a44
SS
1464 Add a next field to AVFilter, this is used for simplifying the
1465 registration and management of the registered filters.
1466
343bfdd3 14672009-10-23 - cccd292 - lavfi 1.4.1 - AVFilter.description
54116673 1468 Add a description field to AVFilter.
01537e9f 1469
343bfdd3 14702009-10-19 - 6b5dc05 - lavfi 1.3.0 - avfilter_make_format_list()
027e85d8
SS
1471 Change the interface of avfilter_make_format_list() from
1472 avfilter_make_format_list(int n, ...) to
1473 avfilter_make_format_list(enum PixelFormat *pix_fmts).
1474
343bfdd3 14752009-10-18 - 0eb4ff9 - lavfi 1.0.0 - avfilter_get_video_buffer()
c3b27a3d
SS
1476 Make avfilter_get_video_buffer() recursive and add the w and h
1477 parameters to it.
1478
343bfdd3 14792009-10-07 - 46c40e4 - lavfi 0.5.1 - AVFilterPic
227d1b98 1480 Add w and h fields to AVFilterPic.
04670366 1481
343bfdd3 14822009-06-22 - 92400be - lavf 52.34.1 - AVFormatContext.packet_size
b394438e
RB
1483 This is now an unsigned int instead of a signed int.
1484
343bfdd3 14852009-06-19 - a4276ba - lavc 52.32.0 - AVSubtitle.pts
227d1b98
DB
1486 Add a pts field to AVSubtitle which gives the subtitle packet pts
1487 in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will
4bbe788a
RD
1488 not work right without this.
1489
343bfdd3 14902009-06-03 - 8f3f2e0 - lavc 52.30.2 - AV_PKT_FLAG_KEY
227d1b98 1491 PKT_FLAG_KEY has been deprecated and will be dropped at the next
8f3f2e06
RD
1492 major version. Use AV_PKT_FLAG_KEY instead.
1493
343bfdd3 14942009-06-01 - f988ce6 - lavc 52.30.0 - av_lockmgr_register()
f988ce6c
1495 av_lockmgr_register() can be used to register a callback function
1496 that lavc (and in the future, libraries that depend on lavc) can use
1497 to implement mutexes. The application should provide a callback function
227d1b98
DB
1498 that implements the AV_LOCK_* operations described in avcodec.h.
1499 When the lock manager is registered, FFmpeg is guaranteed to behave
1500 correctly in a multi-threaded application.
f988ce6c 1501
343bfdd3 15022009-04-30 - ce1d9c8 - lavc 52.28.0 - av_free_packet()
52bcc8e1
RP
1503 av_free_packet() is no longer an inline function. It is now exported.
1504
343bfdd3 15052009-04-11 - 80d403f - lavc 52.25.0 - deprecate av_destruct_packet_nofree()
0c13bbf5
RD
1506 Please use NULL instead. This has been supported since r16506
1507 (lavf > 52.23.1, lavc > 52.10.0).
1508
343bfdd3 15092009-04-07 - 7a00bba - lavc 52.23.0 - avcodec_decode_video/audio/subtitle
2851d225
RB
1510 The old decoding functions are deprecated, all new code should use the
1511 new functions avcodec_decode_video2(), avcodec_decode_audio3() and
1512 avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt
1513 argument instead of a const uint8_t *buf / int buf_size pair.
1514
343bfdd3 15152009-04-03 - 7b09db3 - lavu 50.3.0 - av_fifo_space()
b1516707
SS
1516 Introduce the av_fifo_space() function.
1517
343bfdd3 15182009-04-02 - fabd246 - lavc 52.23.0 - AVPacket
dd3bbb49
SS
1519 Move AVPacket declaration from libavformat/avformat.h to
1520 libavcodec/avcodec.h.
1521
343bfdd3 15222009-03-22 - 6e08ca9 - lavu 50.2.0 - RGB32 pixel formats
227d1b98
DB
1523 Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR,
1524 PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values.
1525 Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and
1526 PIX_FMT_BGR32_1 are now macros.
1527 avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases.
f3370e14 1528 Re-sort the enum PixelFormat list accordingly.
5a43bbc3
SS
1529 This change breaks API/ABI backward compatibility.
1530
343bfdd3 15312009-03-22 - f82674e - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants
dd3bbb49
SS
1532 Add the enum PixelFormat values:
1533 PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE,
1534 PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE.
1535
343bfdd3 15362009-03-21 - ee6624e - lavu 50.0.0 - av_random*
c8f742ca
DB
1537 The Mersenne Twister PRNG implemented through the av_random* functions
1538 was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions
1539 instead.
1540
343bfdd3 15412009-03-08 - 41dd680 - lavu 50.0.0 - AVFifoBuffer
889cdae8
DB
1542 av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped
1543 and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write
1544 and av_fifo_realloc2.
1545 In addition, the order of the function arguments of av_fifo_generic_read
227d1b98 1546 was changed to match av_fifo_generic_write.
889cdae8
DB
1547 The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by
1548 applications, they may not use sizeof() or directly access members.
22d4f236 1549
343bfdd3 15502009-03-01 - ec26457 - lavf 52.31.0 - Generic metadata API
889cdae8
DB
1551 Introduce a new metadata API (see av_metadata_get() and friends).
1552 The old API is now deprecated and should not be used anymore. This especially
429d6b21 1553 includes the following structure fields:
38ce707e
AJ
1554 - AVFormatContext.title
1555 - AVFormatContext.author
1556 - AVFormatContext.copyright
1557 - AVFormatContext.comment
1558 - AVFormatContext.album
1559 - AVFormatContext.year
1560 - AVFormatContext.track
1561 - AVFormatContext.genre
1562 - AVStream.language
1563 - AVStream.filename
1564 - AVProgram.provider_name
1565 - AVProgram.name
1566 - AVChapter.title