AVFrame: add an opaque_ref field
[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:
e88103a7
VG
5libavcodec: 2015-08-28
6libavdevice: 2015-08-28
7libavfilter: 2015-08-28
8libavformat: 2015-08-28
9libavresample: 2015-08-28
10libswscale: 2015-08-28
11libavutil: 2015-08-28
06d19718
RD
12
13
14API changes, most recent first:
4926fa9a 15
04f3bd34 162017-02-11 - xxxxxxx - lavu 55.32.0 - frame.h
17 Add AVFrame.opaque_ref.
18
4de220d2
AK
192017-02-xx - xxxxxxx - lavu 55.31.1 - frame.h
20 Allow passing the value of 0 (meaning "automatic") as the required alignment
21 to av_frame_get_buffer().
22
e6bff23f
AK
232017-02-xx - xxxxxxx - lavu 55.31.0 - cpu.h
24 Add av_cpu_max_align() for querying maximum required data alignment.
25
99684f3a
AK
262016-xx-xx - xxxxxxx - lavf 57.11.0 - avio.h
27 Add avio_context_free(). From now on it must be used for freeing AVIOContext.
28
577326d4 292017-02-01 - xxxxxxx - lavc - avcodec.h
30 Deprecate AVCodecContext.refcounted_frames. This was useful for deprecated
31 API only (avcodec_decode_video2/avcodec_decode_audio4). The new decode APIs
32 (avcodec_send_packet/avcodec_receive_frame) always work with reference
33 counted frames.
34
019ab88a
AK
352016-xx-xx - xxxxxxx - lavc 57.31.0 - avcodec.h
36 Add AVCodecContext.apply_cropping to control whether cropping
37 is handled by libavcodec or the caller.
38
52627248
AK
392016-xx-xx - xxxxxxx - lavu 55.30.0 - frame.h
40 Add AVFrame.crop_left/right/top/bottom fields for attaching cropping
41 information to video frames.
42
e435beb1
DB
432016-xx-xx - xxxxxxx
44 Change av_sha_update() and av_md5_sum()/av_md5_update() length
45 parameter type to size_t at next major bump.
46
2fb6acd9
VG
472016-xx-xx - xxxxxxx - lavc 57.29.0 - avcodec.h
48 Add AV_PKT_DATA_SPHERICAL packet side data to export AVSphericalMapping
49 information from containers.
50
c70add61
VG
512016-xx-xx - xxxxxxx - lavu 55.30.0 - spherical.h
52 Add AV_FRAME_DATA_SPHERICAL value, av_spherical_alloc() API and
53 AVSphericalMapping type to export and describe spherical video properties.
54
79ff9935
JA
552016-xx-xx - xxxxxxx - lavf 57.10.0 - avformat.h
56 Add av_stream_add_side_data().
57
7471352f
LB
582016-xx-xx - xxxxxxx - lavu 55.28.0 - pixfmt.h
59 Add AV_PIX_FMT_GRAY12(LE/BE).
60
d06aa24b
MT
612016-xx-xx - xxxxxxx - lavu 55.27.0 - hwcontext.h
62 Add av_hwframe_map() and associated AV_HWFRAME_MAP_* flags.
63 Add av_hwframe_ctx_create_derived().
64
81f1f6c3
KK
652016-xx-xx - xxxxxxx - lavu 55.25.0 - pixfmt.h
66 Add AV_PIX_FMT_GBRAP12(LE/BE).
67
1e93aa69
MN
682016-xx-xx - xxxxxxx - lavu 55.24.0 - pixfmt.h
69 Add AV_PIX_FMT_GBRP12(LE/BE).
70
2124711b
AK
712016-xx-xx - xxxxxxx - lavu 55.23.0 - hwcontext_vaapi.h
72 Add AV_VAAPI_DRIVER_QUIRK_ATTRIB_MEMTYPE.
73
8ea35af7
AK
742016-xx-xx - xxxxxxx - lavf 57.08.0 - avio.h
75 Add AVIO_SEEKABLE_TIME flag.
76
0e8d1fc1 772016-xx-xx - xxxxxxx - lavu 55.22.0 - pixfmt.h
e7e5be86 78 Add AV_PIX_FMT_YUV420P12, AV_PIX_FMT_YUV422P12, and AV_PIX_FMT_YUV444P12.
0e8d1fc1 79
6c09af7e 802016-xx-xx - xxxxxxx - lavc 57.27.0 - avcodec.h
de64dd13
YG
81 Add FF_PROFILE_HEVC_REXT, the extended pixel format profile for HEVC.
82
d7bc52bf
AK
832016-08-24 - xxxxxxx - lavu 55.21.0 - imgutils.h
84 Add av_image_copy_uc_from(), a version of av_image_copy() for copying
85 from GPU mapped memory.
86
851960f6
MT
872016-xx-xx - xxxxxxx - lavc 59.26.0 - vaapi.h
88 Deprecate struct vaapi_context and the vaapi.h installed header.
89 Callers should set AVCodecContext.hw_frames_ctx instead.
90
4efea4ce
VG
91------------------------------8<-------------------------------------
92 12 branch was cut here
93----------------------------->8--------------------------------------
94
7d7355aa
DB
952016-07-20 - xxxxxxx - lavu 55.20.0 - cpu.h
96 Add AV_CPU_FLAG_SSSE3SLOW.
97
5ece6911 982016-07-02 - 4926fa9 - lavu 55.19.0 - hwcontext_vaapi.h
4926fa9a
MT
99 Add driver quirks field to VAAPI-specific hwdevice and enum with
100 members AV_VAAPI_DRIVER_QUIRK_* to represent its values.
7f4ec436 101
5ece6911 1022016-07-02 - b7c5f88 - lavu 55.18.0 - pixfmt.h
b7c5f885
HL
103 Add AV_PIX_FMT_P010(LE/BE).
104
5ece6911 1052016-06-21 - 32c8359 - lavc 57.24.0 - avcodec.h
32c83590
AK
106 Decoders now export the frame timestamp as AVFrame.pts. It was
107 previously exported as AVFrame.pkt_pts, which is now deprecated.
108
5ece6911 1092016-06-21 - 59e7361 - lavu 55.16.0 - hwcontext.h hwcontext_qsv.h
59e7361c
AK
110 Add AV_HWDEVICE_TYPE_QSV and a new installed header with QSV-specific
111 hwcontext definitions.
112
5ece6911 1132016-06-21 - e85f6f7 - lavc 57.23.0 - avcodec.h
e85f6f7f
AK
114 AVCodecContext.hw_frames_ctx now may be used by decoders.
115
5ece6911 1162016-06-12 - 90f469a - lavc 57.20.0 - avcodec.h
90f469aa
AK
117 Add FF_PROFILE_H264_MULTIVIEW_HIGH and FF_PROFILE_H264_STEREO_HIGH.
118
5ece6911 1192016-05-26 - 1c9e861 - lavu 55.13.0 - hwcontext.h
1c9e8616
AK
120 Add av_hwdevice_ctx_create().
121
5ece6911 1222016-05-24 - ad61da05 - lavc 57.19.1 - avcodec.h
e47b8bbf
DB
123 Adjust values for JPEG 2000 profiles.
124
5ece6911 1252016-05-18 - db7968b - lavf 57.7.0 - avio.h
db7968bf
MS
126 Add AVIODataMarkerType, write_data_type, ignore_boundary_point and
127 avio_write_marker.
128
5ece6911 1292016-05-17 - 0c4468d - lavu 55.12.0 - opt.h
0c4468dc
VG
130 Add av_stereo3d_type_name() and av_stereo3d_from_name().
131
5ece6911 1322016-05-17 - c46db38 - lavu 55.11.0 - hwcontext_dxva2.h
c46db38c
AK
133 Add new installed header with DXVA2-specific hwcontext definitions.
134
5ece6911 1352016-03-24 - 564b459 - lavu 55.10.0 - opt.h
564b4591
MN
136 Add av_opt_copy().
137
5ece6911 1382016-03-23 - 05f6670 - lavc 57.16.0 - avcodec.h
05f66706 139 Add a new audio/video encoding and decoding API with decoupled input
140 and output -- avcodec_send_packet(), avcodec_receive_frame(),
141 avcodec_send_frame() and avcodec_receive_packet().
142
5ece6911 1432016-03-20 - 33d1898 - lavc 57.15.0 - avcodec.h
33d18982 144 Add a new bitstream filtering API working with AVPackets.
41ed7ab4 145 Deprecate the old bitstream filtering API.
33d18982 146
5ece6911 1472016-03-19 - 07a844f - lavfi 6.3.0 - avfilter.h
07a844f3
MT
148 Add AVFilterContext.hw_device_ctx.
149
5ece6911 1502016-03-19 - 551c677 - lavu 55.9.0 - hwcontext_vaapi.h
551c6775
MT
151 Add new installed header with VAAPI-specific hwcontext definitions.
152
5ece6911 1532016-03-19 - d264c72 - lavu 55.8.0 - pixfmt.h
d264c720
MT
154 Deprecate all AV_PIX_FMT_VAAPI_* formats.
155 Replaced by AV_PIX_FMT_VAAPI.
156
5ece6911 1572016-03-19 - b1f01e8 - lavu 55.7.0 - hwcontext.h
b1f01e85
MT
158 Add AVHWFramesConstraints and associated API.
159
3e8fd93b
AK
1602016-02-23 - 9200514 - lavf 57.5.0 - avformat.h
161 Add AVStream.codecpar, deprecate AVStream.codec.
162
5ece6911 1632016-02-23 - lavc 57.14.0 - avcodec.h
dc4983d7
AK
164 998e1b8 - Add AVCodecParameters and its related API.
165 a806834 - Add av_get_audio_frame_duration2().
998e1b8f 166
dc4983d7 1672016-02-22 - ec4c483 - lavf 57.4.0 - avformat.h
ec4c4839
AK
168 Add AVFormatContext.protocol_whitelist and protocol_blacklist.
169 Add 'protocol_whitelist' and 'protocol_blacklist' private options for
170 avio_open2().
171
dc4983d7 1722016-02-14 - 7b3214d0 - lavc 57.13.0 - avcodec.h
7b3214d0
AK
173 Add AVCodecContext.hw_frames_ctx.
174
dc4983d7
AK
1752016-02-14 - lavfi 6.2.0 - avfilter.h
176 b3dd30d avfilter.h - Add AVFilterLink.hw_frames_ctx.
177 buffersrc.h - Add AVBufferSrcParameters and functions for handling it.
b3dd30db 178
dc4983d7
AK
1792016-02-14 - lavu 55.6.0
180 721a4ef buffer.h - Add av_buffer_pool_init2().
181 89923e4 hwcontext.h - Add a new installed header hwcontext.h with a new API
89923e41 182 for handling hwaccel frames.
dc4983d7 183 ad884d1 hwcontext_cuda.h - Add a new installed header hwcontext_cuda.h with
ad884d10 184 CUDA-specific hwcontext definitions.
dc4983d7 185 a001ce3 hwcontext_vdpau.h - Add a new installed header hwcontext_vdpau.h with
a001ce31 186 VDPAU-specific hwcontext definitions.
dc4983d7 187 7bc780c pixfmt.h - Add AV_PIX_FMT_CUDA.
721a4efc 188
dc4983d7 1892016-01-24 - 9f61abc - lavf 57.3.0 - avformat.h
9f61abc8
AK
190 Add AVFormatContext.opaque, io_open and io_close, allowing custom IO
191 for muxers and demuxers that open additional files.
192
dc4983d7 1932015-12-12 - 2c68113 - lavc 57.12.0 - avcodec.h
2c681139
AK
194 Add AVCodecDescriptor.profiles and avcodec_profile_name().
195
dc4983d7
AK
1962015-12-06 - lavc 57.11.0 - avcodec.h dirac.h
197 31c51f7 - Add av_packet_add_side_data().
198 84adab3 - Add AVCodecContext.coded_side_data.
199 f0b769c - Add AVCPBProperties API.
200 e02de9d - Add a new public header dirac.h containing
e02de9df 201 av_dirac_parse_sequence_header()
31c51f74 202
dc4983d7 2032015-11-20 - 462a54e - lavc 57.9.1 - avcodec.h
462a54e2
VG
204 Deprecate rtp_callback without replacement, i.e. it won't be possible to
205 get image slices before the full frame is encoded any more. The libavformat
206 rtpenc muxer can still be used for RFC-2190 packetization.
207
dc4983d7 2082015-11-18 - 79ae1e6 - lavc 57.9.0 - avcodec.h
79ae1e63
JS
209 Add AV_PKT_DATA_FALLBACK_TRACK for making fallback associations between
210 streams.
211
dc4983d7 2122015-11-18 - 7f4ec43 - lavf 57.1.0 - avformat.h
7f4ec436
JS
213 Add av_stream_new_side_data().
214
dc4983d7 2152015-11-13 - 92d107a - lavu 55.3.0 - xtea.h
92d107a1
MS
216 Add av_xtea_le_init and av_xtea_le_crypt
217
dc4983d7 2182015-11-09 - 48ff668 - lavfi 6.1.0 - avfilter.h
48ff6683
NG
219 Add a frame_rate field to AVFilterLink
220
dc4983d7
AK
2212015-10-26 - lavc 57.7.0 - avcodec.h
222 ce70f28 - Deprecate av_free_packet(). Use av_packet_unref() as replacement,
223 it resets the packet in a more consistent way.
224 9b56d5c - Deprecate av_dup_packet(), it is a no-op for most cases.
225 Use av_packet_ref() to make a non-refcounted AVPacket refcounted.
226 a9a6010 - Add av_packet_alloc(), av_packet_clone(), av_packet_free().
227 They match the AVFrame functions with the same name.
ab79ee12 228
dc4983d7 2292015-10-21 - a17a766 - lavc 57.5.0 - avcodec.h
a17a7661
VG
230 Add data and linesize array to AVSubtitleRect, to be used instead of
231 the ones from the embedded AVPicture.
232
dc4983d7 2332015-10-16 - dc923bc - lavc 57.0.0 - qsv.h
dc923bc2
AK
234 Add an API for allocating opaque surfaces.
235
dc4983d7 2362015-10-12 - 11c5f43 - lavu 55.2.0 - dict.h
11c5f438
VG
237 Change return type of av_dict_copy() from void to int, so that a proper
238 error code can be reported.
239
ac981d16 2402015-09-29 - 948f3c1 - lavc 57.0.0 - avcodec.h
948f3c19 241 Change type of AVPacket.duration from int to int64_t.
242
ac981d16 2432015-09-18 - e3d4784 - lavc 57.2.0 - d3d11va.h
e3d4784e
SL
244 Add av_d3d11va_alloc_context(). This function must from now on be used for
245 allocating AVD3D11VAContext.
246
ac981d16
VG
2472015-09-07 - lavu 55.0.0
248 b8b5d82 - Change type of AVPixFmtDescriptor.flags from uint8_t to uint64_t.
249 6b3ef7f - Change type of AVComponentDescriptor fields from uint16_t to int
6b3ef7f0 250 and drop bit packing.
ac981d16 251 2268db2 - Add step, offset, and depth to AVComponentDescriptor to replace
2268db2c 252 the deprecated step_minus1, offset_plus1, and depth_minus1.
b8b5d827 253
ac981d16
VG
2542015-07-31 - lavu 54.17.0
255 7a7df34 - Add av_blowfish_alloc().
256 ae36545 - Add av_rc4_alloc().
257 5d8bea3 - Add av_xtea_alloc().
258 d9e8b47 - Add av_des_alloc().
7a7df34c 259
6877537f
JA
2602015-07-29 - 7e38340 - lavu 54.16.0 - hmac.h
261 Add AV_HMAC_SHA224 and AV_HMAC_SHA256.
262
ac981d16
VG
2632015-07-27 - lavc 56.35.0 - avcodec.h
264 7c6eb0a - Rename CODEC_FLAG* defines to AV_CODEC_FLAG*.
265 def9785 - Rename CODEC_CAP_* defines to AV_CODEC_CAP_*.
266 059a934 - Rename FF_INPUT_BUFFER_PADDING_SIZE and FF_MIN_BUFFER_SIZE
267 to AV_INPUT_BUFFER_PADDING_SIZE and AV_INPUT_BUFFER_MIN_SIZE.
b94ec304 268
ac981d16 2692015-07-20 - 5d3addb - lavc 56.33.0 - avcodec.h
5d3addb9
VG
270 Add AV_PKT_DATA_QUALITY_FACTOR to export the quality value of an AVPacket.
271
ac981d16 2722015-07-02 - 1316df7 - lavu 56.15.0
83212943
VG
273 Add av_version_info().
274
ac981d16
VG
2752015-07-01 - 0d449c8 - lavfi 5.1.0 - version.h
276 0f87f9b - lavd 55.2.0 - version.h
a5354084
VG
277 Add library identification symbols, LIBAVFILTER_IDENT and LIBAVDEVICE_IDENT.
278
ac981d16 2792015-06-07 - 252d620 - lavf 56.20.0 - avio.h
252d6200
LB
280 Add avio_put_str16be.
281
ac981d16 2822015-05-13 - f7cafb5 - lavu 54.14.0 - cpu.h
f7cafb5d
JA
283 Add AV_CPU_FLAG_AVXSLOW.
284
ac981d16 2852015-05-13 - e7c5e17 - lavc 56.23.0
e7c5e17d
SP
286 Add av_vda_default_init2.
287
ac981d16 2882015-04-19 - c253340 - lavu 54.12.0
c253340a
VG
289 Add AV_LOG_TRACE for extremely verbose debugging.
290
ac981d16 2912015-04-07 - 27f2746 - lavu 54.11.0
27f27462
LB
292 Add av_small_strptime().
293
ac981d16 2942015-03-29 - 6fe2641 - lavc 56.22.0
6fe2641d
HL
295 Add FF_PROFILE_DTS_EXPRESS.
296
ac981d16 2972015-03-29 - c484561 - lavu 54.10.0
c4845616 298 Add AV_PIX_FMT_MMAL for MMAL hardware acceleration.
299
ac981d16 3002015-02-19 - 31d2039 - lavc 56.13
31d2039c
AK
301 Add width, height, coded_width, coded_height and format to
302 AVCodecParserContext.
303
ac981d16 3042015-02-19 - 5b1d9ce - lavu 54.9.0
5b1d9cee
AK
305 Add AV_PIX_FMT_QSV for QSV hardware acceleration.
306
faa8ffda 3072015-01-27 - 728685f - lavc 56.12.0, lavu 54.8.0 - avcodec.h, frame.h
728685f3
AK
308 Add AV_PKT_DATA_AUDIO_SERVICE_TYPE and AV_FRAME_DATA_AUDIO_SERVICE_TYPE for
309 storing the audio service type as side data.
310
faa8ffda
AK
3112015-01-14 - e2ad0b6 - lavu 54.6.0 - imgutils.h
312 Add utility functions for image manipulation: av_image_get_buffer_size()
313 av_image_fill_arrays() and av_image_copy_to_buffer().
314
3152014-12-25 - c220a60 - lavc 56.10.0 - vdpau.h
c220a60f
RDC
316 Add av_vdpau_get_surface_parameters().
317
faa8ffda 3182014-12-25 - 6c99c92 - lavc 56.9.0 - avcodec.h
6c99c92a
RDC
319 Add AV_HWACCEL_FLAG_ALLOW_HIGH_DEPTH flag to av_vdpau_bind_context().
320
faa8ffda 3212014-12-25 - 57b6704 - lavc 56.8.0 - avcodec.h
57b6704e
RDC
322 Add AVCodecContext.sw_pix_fmt.
323
faa8ffda 3242014-11-07 - 1384df6 - lavf 56.06.3 - avformat.h
1384df64
MN
325 Add AVFormatContext.avoid_negative_ts.
326
faa8ffda 3272014-11-06 - 5e80fb7 - lavc 56.6.0 - vorbis_parser.h
5e80fb7f
AK
328 Add a public API for parsing vorbis packets.
329
faa8ffda 3302014-10-24 - 1bd0bdc - lavu 54.5.0 - time.h
1bd0bdcd
MS
331 Add av_gettime_relative().
332
faa8ffda 3332014-10-15 - 7ea1b34 - lavc 56.5.0 - avcodec.h
7ea1b347
AK
334 Replace AVCodecContext.time_base used for decoding
335 with AVCodecContext.framerate.
336
faa8ffda 3372014-10-15 - d565fef1- lavc 56.4.0 - avcodec.h
d565fef1
RDC
338 Add AV_HWACCEL_FLAG_IGNORE_LEVEL flag to av_vdpau_bind_context().
339
faa8ffda 3402014-10-13 - 2df0c32 - lavc 56.03.0 - avcodec.h
2df0c32e
AK
341 Add AVCodecContext.initial_padding. Deprecate the use of AVCodecContext.delay
342 for audio encoding.
343
faa8ffda 3442014-10-08 - 5a419b2 - lavu 54.04.0 - pixdesc.h
5a419b2d
VG
345 Add API to return the name of frame and context color properties.
346
faa8ffda 3472014-10-06 - e3e158e - lavc 56.2.0 - vdpau.h
e3e158e8
RDC
348 Add av_vdpau_bind_context(). This function should now be used for creating
349 (or resetting) a AVVDPAUContext instead of av_vdpau_alloc_context().
350
faa8ffda 3512014-08-25 - b263f8f - lavf 56.03.0 - avformat.h
b263f8ff
AK
352 Add AVFormatContext.max_ts_probe.
353
1eec9bfc 354------------------------------8<-------------------------------------
355 11 branch was cut here
356----------------------------->8--------------------------------------
357
3582014-08-28 - 9301486 - lavc 56.1.0 - avcodec.h
359 Add AV_PKT_DATA_STEREO3D to export container-level stereo3d information.
360
6ca11f71 3612014-08-13 - 8ddc326 - lavu 54.03.0 - mem.h
8ddc3262
AK
362 Add av_strndup().
363
6ca11f71 3642014-08-13 - a8c104a - lavu 54.02.0 - opt.h
a8c104a5
AS
365 Add av_opt_get_dict_val/set_dict_val with AV_OPT_TYPE_DICT to support
366 dictionary types being set as options.
367
6ca11f71 3682014-08-13 - afbd4b8 - lavf 56.01.0 - avformat.h
afbd4b7e
AS
369 Add AVFormatContext.event_flags and AVStream.event_flags for signaling to
370 the user when events happen in the file/stream.
371
6ca11f71 3722014-08-10 - fb1ddcd - lavr 2.1.0 - avresample.h
fb1ddcdc
LB
373 Add avresample_convert_frame() and avresample_config().
374
6ca11f71 3752014-08-10 - fb1ddcd - lavu 54.1.0 - error.h
fb1ddcdc
LB
376 Add AVERROR_INPUT_CHANGED and AVERROR_OUTPUT_CHANGED.
377
6ca11f71 3782014-08-08 - d35b94f - lavc 55.57.4 - avcodec.h
d35b94fb
DB
379 Deprecate FF_IDCT_XVIDMMX define and xvidmmx idct option.
380 Replaced by FF_IDCT_XVID and xvid respectively.
381
6ca11f71 3822014-08-07 - bb78903 - lsws 2.1.3 - swscale.h
bb789016
DB
383 sws_getCachedContext is not going to be removed in the future.
384
6ca11f71 3852014-08-07 - ad1ee5f - lavc 55.57.3 - avcodec.h
ad1ee5fa
DB
386 reordered_opaque is not going to be removed in the future.
387
6ca11f71 3882014-08-04 - e9abafc - lavu 53.22.0 - pixfmt.h
e9abafca
VG
389 Add AV_PIX_FMT_YA16 pixel format for 16 bit packed gray with alpha.
390
6ca11f71 3912014-08-04 - e96c3b8 - lavu 53.21.1 - avstring.h
e96c3b81
VG
392 Rename AV_PIX_FMT_Y400A to AV_PIX_FMT_YA8 to better identify the format.
393 An alias pixel format and color space name are provided for compatibility.
394
6ca11f71 3952014-08-04 - d2962e9 - lavu 53.21.0 - pixdesc.h
d2962e9f
LB
396 Support name aliases for pixel formats.
397
6ca11f71
AK
3982014-08-03 - 1ef9e83 - lavc 55.57.2 - avcodec.h
3992014-08-03 - 1ef9e83 - lavu 53.20.0 - frame.h
1ef9e837
KK
400 Deprecate AVCodecContext.dtg_active_format and use side-data instead.
401
6ca11f71 4022014-08-03 - 9f17685 - lavc 55.57.1 - avcodec.h
9f17685d
DB
403 Deprecate unused FF_IDCT_IPP define and ipp avcodec option.
404 Deprecate unused FF_DEBUG_PTS define and pts avcodec option.
405 Deprecate unused FF_CODER_TYPE_DEFLATE define and deflate avcodec option.
406 Deprecate unused FF_DCT_INT define and int avcodec option.
407 Deprecate unused avcodec option scenechange_factor.
408
6ca11f71 4092014-07-29 - 69e7336 - lavu 53.19.0 - avstring.h
69e7336b
LB
410 Make name matching function from lavf public as av_match_name().
411
6ca11f71 4122014-07-28 - c5fca01 - lavc 55.57.0 - avcodec.h
c5fca017
AK
413 Add AV_CODEC_PROP_REORDER to mark codecs supporting frame reordering.
414
6ca11f71 4152014-07-09 - a54f03b - lavu 53.18.0 - display.h
a54f03bf
VG
416 Add av_display_matrix_flip() to flip the transformation matrix.
417
6ca11f71 4182014-07-09 - f6ee61f - lavc 55.56.0 - dv_profile.h
f6ee61fb
AK
419 Add a public API for DV profile handling.
420
6ca11f71 4212014-06-20 - 9e500ef - lavu 53.17.0 - imgutils.h
9e500efd
JR
422 Add av_image_check_sar().
423
6ca11f71 4242014-06-20 - 874390e - lavc 55.55.0 - avcodec.h
874390e1
AK
425 Add av_packet_rescale_ts() to simplify timestamp conversion.
426
6ca11f71 4272014-06-18 - 194be1f - lavf 55.20.0 - avformat.h
194be1f4
AK
428 The proper way for providing a hint about the desired timebase to the muxers
429 is now setting AVStream.time_base, instead of AVStream.codec.time_base as was
430 done previously. The old method is now deprecated.
431
6ca11f71 4322014-06-01 - 0957b27 - lavc 55.54.0 - avcodec.h
0957b274
AK
433 Add AVCodecContext.side_data_only_packets to allow encoders to output packets
434 with only side data. This option may become mandatory in the future, so all
435 users are recommended to update their code and enable this option.
436
6ca11f71 4372014-06-01 - 8c02adc - lavu 53.16.0 - frame.h, pixfmt.h
8c02adc6 438 Move all color-related enums (AVColorPrimaries, AVColorSpace, AVColorRange,
439 AVColorTransferCharacteristic, and AVChromaLocation) inside lavu.
440 Add AVFrame fields for them on the next lavu major bump.
441
6ca11f71 4422014-05-28 - b2d4565 - lavr 1.3.0 - avresample.h
b2d45654
LB
443 Add avresample_max_output_samples
444
6ca11f71 4452014-05-28 - 6d21259 - lavf 55.19.0 - avformat.h
6d212599
LB
446 Add strict_std_compliance and related AVOptions to support experimental
447 muxing.
448
6ca11f71 4492014-05-20 - c23c96b - lavf 55.18.0 - avformat.h
c23c96b6
JG
450 Add av_stream_get_side_data() to access stream-level side data
451 in the same way as av_packet_get_side_data().
452
6ca11f71 4532014-05-19 - bddd8cb - lavu 53.15.0 - frame.h, display.h
bddd8cbf
VG
454 Add AV_FRAME_DATA_DISPLAYMATRIX for exporting frame-level
455 spatial rendering on video frames for proper display.
456
6ca11f71 4572014-05-19 - bddd8cb - lavc 55.53.0 - avcodec.h
bddd8cbf
VG
458 Add AV_PKT_DATA_DISPLAYMATRIX for exporting packet-level
459 spatial rendering on video frames for proper display.
460
6ca11f71 4612014-05-19 - a312f71 - lavf 55.17.1 - avformat.h
a312f710
AK
462 Deprecate AVStream.pts and the AVFrac struct, which was its only use case.
463 Those fields were poorly defined and not meant to be public, so there is
464 no replacement for them.
465
33082af7 4662014-05-18 - fd05602 - lavc 55.52.0 - avcodec.h
fd056029
AK
467 Add avcodec_free_context(). From now on it should be used for freeing
468 AVCodecContext.
469
33082af7 4702014-05-15 - 0c1959b - lavf 55.17.0 - avformat.h
56a721f0 471 Add AVFMT_FLAG_BITEXACT flag. Muxers now use it instead of checking
0c1959b0
AK
472 CODEC_FLAG_BITEXACT on the first stream.
473
33082af7 4742014-05-11 - 66e6c8a - lavu 53.14.0 - pixfmt.h
66e6c8a7
AK
475 Add AV_PIX_FMT_VDA for new-style VDA acceleration.
476
33082af7 4772014-05-01 - a2941c8 - lavc 55.50.3 - avcodec.h
a2941c8c
AK
478 Deprecate CODEC_FLAG_MV0. It is replaced by the flag "mv0" in the
479 "mpv_flags" private option of the mpegvideo encoders.
480
33082af7 4812014-05-01 - 6484149 - lavc 55.50.2 - avcodec.h
64841491
AK
482 Deprecate CODEC_FLAG_GMC. It is replaced by the "gmc" private option of the
483 libxvid encoder.
484
33082af7 4852014-05-01 - b2c3171 - lavc 55.50.1 - avcodec.h
b2c31710
AK
486 Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the
487 "mpv_flags" private option of the mpegvideo encoders.
488
33082af7 4892014-05-01 - 5fcceda - avcodec.h
5fccedaa
AK
490 Deprecate CODEC_FLAG_INPUT_PRESERVED. Its functionality is replaced by passing
491 reference-counted frames to encoders.
492
33082af7 4932014-04-28 - ed4b757 - lavc 55.50.0 - dxva2.h
ed4b7571
HL
494 Add FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO for old Intel GPUs.
495
33082af7 4962014-04-22 - 502512e - lavu 53.13.0 - avutil.h
502512ea
DB
497 Add av_get_time_base_q().
498
33082af7 4992014-04-17 - 0983d48 - lavu 53.12.0 - crc.h
0983d481
AG
500 Add AV_CRC_16_ANSI_LE crc variant.
501
33082af7 5022014-04-07 - 8b17243 - lavu 53.11.0 - pixfmt.h
8b17243d
VG
503 Add AV_PIX_FMT_YVYU422 pixel format.
504
33082af7 5052014-04-04 - 8542f9c - lavu 53.10.0 - replaygain.h
8542f9c4
AG
506 Full scale for peak values is now 100000 (instead of UINT32_MAX) and values
507 may overflow.
508
33082af7 5092014-04-03 - 7763118 - lavu 53.09.0 - log.h
7763118c
LB
510 Add AV_LOG(c) macro to have 256 color debug messages.
511
33082af7 5122014-03-24 - d161ae0 - lavu 53.08.0 - frame.h
d161ae0a
AK
513 Add av_frame_remove_side_data() for removing a single side data
514 instance from a frame.
515
33082af7 5162014-03-24 - 5a7e35d - lavu 53.07.0 - frame.h, replaygain.h
5a7e35dd
AK
517 Add AV_FRAME_DATA_REPLAYGAIN for exporting replaygain tags.
518 Add a new header replaygain.h with the AVReplayGain struct.
519
33082af7 5202014-03-24 - 5a7e35d - lavc 55.36.0 - avcodec.h
5a7e35dd
AK
521 Add AV_PKT_DATA_REPLAYGAIN for exporting replaygain tags.
522
33082af7 5232014-03-24 - 25b3258 - lavf 55.13.0 - avformat.h
25b32586
AK
524 Add AVStream.side_data and AVStream.nb_side_data for exporting stream-global
525 side data (e.g. replaygain tags, video rotation)
526
33082af7 5272014-03-24 - 0e2c3ee - lavc 55.35.0 - avcodec.h
0e2c3ee9
AK
528 Give the name AVPacketSideData to the previously anonymous struct used for
529 AVPacket.side_data.
530
33082af7 5312014-03-16 - 1481d24 - lavu 53.06.0 - pixfmt.h
1481d24c
JF
532 Add RGBA64 pixel format and variants.
533
33082af7 5342014-02-24 - 1155fd0 - lavu 53.05.0 - frame.h
1155fd02
AK
535 Add av_frame_copy() for copying the frame data.
536
33082af7 5372014-02-22 - 7e86c27 - lavr 1.2.0 - avresample.h
7e86c27b
AK
538 Add avresample_is_open() for checking whether a resample context is open.
539
33082af7 5402014-02-19 - c3ecd96 - lavu 53.04.0 - opt.h
c3ecd968
AK
541 Add AV_OPT_FLAG_EXPORT and AV_OPT_FLAG_READONLY to mark options meant (only)
542 for reading.
543
33082af7 5442014-02-19 - 6bb8720 - lavu 53.03.01 - opt.h
6bb8720f
AK
545 Deprecate unused AV_OPT_FLAG_METADATA.
546
968a62a9
AK
547------------------------------8<-------------------------------------
548 10 branch was cut here
549----------------------------->8--------------------------------------
550
33082af7 5512014-02-15 - c98f316 - lavu 53.3.0 - frame.h
c98f3169
TW
552 Add AV_FRAME_DATA_DOWNMIX_INFO value to the AVFrameSideDataType enum and
553 downmix_info.h API, which identify downmix-related metadata.
554
d711d839 5552014-02-04 - d9ae103 - lavf 55.11.0 - avformat.h
d9ae1031
LB
556 Add AVFormatContext.max_interleave_delta for controlling amount of buffering
557 when interleaving.
558
d711d839 5592014-01-20 - 93c553c - lavc 55.32.1 - avcodec.h
93c553c7
AK
560 Edges are not required anymore on video buffers allocated by get_buffer2()
561 (i.e. as if the CODEC_FLAG_EMU_EDGE flag was always on). Deprecate
562 CODEC_FLAG_EMU_EDGE and avcodec_get_edge_width().
563
d711d839 5642014-01-05 - 5b4797a - lavu 53.2.0 - frame.h
5b4797a2
TW
565 Add AV_FRAME_DATA_MATRIXENCODING value to the AVFrameSideDataType enum, which
566 identifies AVMatrixEncoding data.
567
d711d839 5682014-01-05 - 5c437fb - lavu 53.1.0 - channel_layout.h
5c437fb6
TW
569 Add values for various Dolby flags to the AVMatrixEncoding enum.
570
d711d839 5712013-12-20 - 2a41826 - lavc 55.30.0 - avcodec.h
2a41826b
GC
572 Add HEVC profiles
573
d711d839 5742013-12-11 - b9fb59d,9431356,d7b3ee9 - lavc 55.28.1 - avcodec.h
d7b3ee9a
AK
575 av_frame_alloc(), av_frame_unref() and av_frame_free() now can and should be
576 used instead of avcodec_alloc_frame(), avcodec_get_frame_defaults() and
577 avcodec_free_frame() respectively. The latter three functions are deprecated.
578
d711d839 5792013-12-09 - 7e244c6- - lavu 52.20.0 - frame.h
7e244c68
VG
580 Add AV_FRAME_DATA_STEREO3D value to the AVFrameSideDataType enum and
581 stereo3d.h API, that identify codec-independent stereo3d information.
582
d711d839 5832013-11-26 - 1eaac1d- - lavu 52.19.0 - frame.h
1eaac1d6
JS
584 Add AV_FRAME_DATA_A53_CC value to the AVFrameSideDataType enum, which
585 identifies ATSC A53 Part 4 Closed Captions data.
586
d711d839 5872013-11-14 - cce3e0a - lavu 52.18.0 - mem.h
cce3e0a4
AK
588 Move av_fast_malloc() and av_fast_realloc() for libavcodec to libavutil.
589
d711d839 5902013-11-14 - 8941971 - lavc 55.27.0 - avcodec.h
8941971a
AK
591 Deprecate AVCodecContext.error_rate, it is replaced by the 'error_rate'
592 private option of the mpegvideo encoder family.
593
d711d839 5942013-11-14 - 728c465 - lavc 55.26.0 - vdpau.h
ca22d1de 595 Add av_vdpau_get_profile().
728c4658
AK
596 Add av_vdpau_alloc_context(). This function must from now on be
597 used for allocating AVVDPAUContext.
ca22d1de 598
d711d839 5992013-11-04 - cd8f772 - lavc 55.25.0 - avcodec.h
cd8f772d
JE
600 Add ITU-R BT.2020 and other not yet included values to color primaries,
601 transfer characteristics and colorspaces.
602
48d1ed9c 6032013-10-31 - 28096e0 - lavu 52.17.0 - frame.h
28096e0a
JS
604 Add AVFrame.flags and AV_FRAME_FLAG_CORRUPT.
605
d711d839 6062013-09-28 - 0767bfd - lavfi 3.11.0 - avfilter.h
0767bfd1
AK
607 Add AVFilterGraph.execute and AVFilterGraph.opaque for custom slice threading
608 implementations.
609
d711d839 6102013-09-21 - e208e6d - lavu 52.16.0 - pixfmt.h
e208e6d2
KK
611 Add interleaved 4:2:2 8/10-bit formats AV_PIX_FMT_NV16 and
612 AV_PIX_FMT_NV20.
613
c38854c3 6142013-09-16 - 3feb3d6 - lavu 52.15.0 - mem.h
3feb3d6c
LB
615 Add av_reallocp.
616
c38854c3 6172013-08-10 - 5a9a9d4 - lavc 55.16.0 - avcodec.h
5a9a9d4a
LB
618 Extend AVPacket API with av_packet_unref, av_packet_ref,
619 av_packet_move_ref, av_packet_copy_props, av_packet_free_side_data.
620
c38854c3 6212013-08-05 - f824535 - lavc 55.13.0 - avcodec.h
f824535a 622 Deprecate the bitstream-related members from struct AVVDPAUContext.
41ed7ab4 623 The bitstream buffers no longer need to be explicitly freed.
f824535a 624
c38854c3 6252013-08-05 - 549294f - lavc 55.12.0 - avcodec.h
549294fb
RDC
626 Deprecate the CODEC_CAP_HWACCEL_VDPAU codec capability. Use CODEC_CAP_HWACCEL
627 and select the AV_PIX_FMT_VDPAU format with get_format() instead.
628
c38854c3 6292013-08-05 - a0ad5d0 - lavu 52.14.0 - pixfmt.h
a0ad5d01
RDC
630 Deprecate AV_PIX_FMT_VDPAU_*. Use AV_PIX_FMT_VDPAU instead.
631
c38854c3 6322013-08-02 - a8b1927 - lavc 55.11.0 - avcodec.h
a8b19271
YN
633 Add output_picture_number to AVCodecParserContext.
634
c38854c3 6352013-06-24 - 95d5246 - lavc 55.10.0 - avcodec.h
95d52464
KK
636 Add MPEG-2 AAC profiles
637
c38854c3 6382013-06-04 - fc962d4 - lavu 52.13.0 - mem.h
fc962d4e
MS
639 Add av_realloc_array and av_reallocp_array
640
c38854c3 6412013-05-24 - 129bb23 - lavfi 3.10.0 - avfilter.h
129bb238
AK
642 Add support for slice multithreading to lavfi. Filters supporting threading
643 are marked with AVFILTER_FLAG_SLICE_THREADS.
644 New fields AVFilterContext.thread_type, AVFilterGraph.thread_type and
645 AVFilterGraph.nb_threads (accessible directly or through AVOptions) may be
646 used to configure multithreading.
647
c38854c3 6482013-05-24 - 2a6eaea - lavu 52.12.0 - cpu.h
2a6eaeaa
AK
649 Add av_cpu_count() function for getting the number of logical CPUs.
650
c38854c3 6512013-05-24 - b493847 - lavc 55.7.0 - avcodec.h
b493847d
YN
652 Add picture_structure to AVCodecParserContext.
653
c38854c3 6542013-05-15 - e6c4ac7 - lavu 52.11.0 - pixdesc.h
e6c4ac7b
AK
655 Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*.
656
c38854c3 6572013-04-03 - 507b1e4 - lavc 55.4.0 - avcodec.h
507b1e45
MT
658 Add field_order to AVCodecParserContext.
659
c38854c3 6602013-04-19 - 5e83d9a - lavc 55.2.0 - avcodec.h
5e83d9ac
AK
661 Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output.
662
35386fbf
AK
6632013-04-11 - lavfi 3.8.0
664 38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate
665 avfilterhraph.h, user applications should include just avfilter.h
666 bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and
667 avfilter_graph_add_filter().
668 1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the
669 filter.
670 48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter().
671 1ba95a9 - Add avfilter_init_dict().
672 7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags.
673 7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs.
674 fa2a34c - Add avfilter_next(), deprecate av_filter_next().
675 Deprecate avfilter_uninit().
676
6772013-04-09 - lavfi 3.7.0 - avfilter.h
678 b439c99 - Add AVFilter.priv_class for exporting filter options through the
679 AVOptions API in the similar way private options work in lavc and lavf.
680 8114c10 - Add avfilter_get_class().
cdac3acb
AK
681 Switch all filters to use AVOptions.
682
35386fbf 6832013-03-19 - 2c328a9 - lavu 52.9.0 - pixdesc.h
2c328a90
AK
684 Add av_pix_fmt_count_planes() function for counting planes in a pixel format.
685
35386fbf 6862013-03-16 - 42c7c61 - lavfi 3.6.0
42c7c61a
AK
687 Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count.
688
35386fbf 6892013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.0, lavf 55.0.0,
d8b31be6 690lavd 54.0.0, lavfi 3.5.0
35386fbf 691 8e401db, 1cec062 - add a new API for reference counted buffers and buffer
d8b31be6 692 pools (new header libavutil/buffer.h).
35386fbf 693 1afddbe - add AVPacket.buf to allow reference counting for the AVPacket data.
d8b31be6
AK
694 Add av_packet_from_data() function for constructing packets from
695 av_malloc()ed data.
35386fbf 696 7ecc2d4 - move AVFrame from lavc to lavu (new header libavutil/frame.h), add
d8b31be6
AK
697 AVFrame.buf/extended_buf to allow reference counting for the AVFrame
698 data. Add new API for working with reference-counted AVFrames.
35386fbf 699 759001c - add the refcounted_frames field to AVCodecContext to make audio and
d8b31be6
AK
700 video decoders return reference-counted frames. Add get_buffer2()
701 callback to AVCodecContext which allocates reference-counted frames.
702 Add avcodec_default_get_buffer2() as the default get_buffer2()
703 implementation.
704 Deprecate AVCodecContext.get_buffer() / release_buffer() /
705 reget_buffer(), avcodec_default_get_buffer(),
706 avcodec_default_reget_buffer(), avcodec_default_release_buffer().
707 Remove avcodec_default_free_buffers(), which should not have ever
708 been called from outside of lavc.
709 Deprecate the following AVFrame fields:
710 * base -- is now stored in AVBufferRef
711 * reference, type, buffer_hints -- are unnecessary in the new API
712 * hwaccel_picture_private, owner, thread_opaque -- should not
41ed7ab4 713 have been accessed from outside of lavc
d8b31be6
AK
714 * qscale_table, qstride, qscale_type, mbskip_table, motion_val,
715 mb_type, dct_coeff, ref_index -- mpegvideo-specific tables,
716 which are not exported anymore.
35386fbf 717 7e35037 - switch libavfilter to use AVFrame instead of AVFilterBufferRef. Add
d8b31be6
AK
718 av_buffersrc_add_frame(), deprecate av_buffersrc_buffer().
719 Add av_buffersink_get_frame() and av_buffersink_get_samples(),
720 deprecate av_buffersink_read() and av_buffersink_read_samples().
721 Deprecate AVFilterBufferRef and all functions for working with it.
722
35386fbf 7232013-03-17 - 12c5c1d - lavu 52.8.0 - avstring.h
12c5c1d3
RD
724 Add av_isdigit, av_isgraph, av_isspace, av_isxdigit.
725
35386fbf 7262013-02-23 - 9f12235 - lavfi 3.4.0 - avfiltergraph.h
9f122356
JR
727 Add resample_lavr_opts to AVFilterGraph for setting libavresample options
728 for auto-inserted resample filters.
729
35386fbf 7302013-01-25 - 38c1466 - lavu 52.7.0 - dict.h
38c1466c
JR
731 Add av_dict_parse_string() to set multiple key/value pairs at once from a
732 string.
733
35386fbf 7342013-01-25 - b85a5e8 - lavu 52.6.0 - avstring.h
b85a5e87
VP
735 Add av_strnstr()
736
35386fbf 7372013-01-15 - 8ee288d - lavu 52.5.0 - hmac.h
8ee288d2
MS
738 Add AVHMAC.
739
35386fbf 7402013-01-13 - 44e065d - lavc 54.36.0 - vdpau.h
44e065d5
RDC
741 Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding.
742
f89466ad
DB
7432013-01-12 - 169fb94 - lavu 52.4.0 - pixdesc.h
744 Add AV_PIX_FMT_VDPAU flag.
745
142c3909 7462013-01-07 - 074a00d - lavr 1.1.0
074a00d1
JR
747 Add avresample_set_channel_mapping() for input channel reordering,
748 duplication, and silencing.
749
cca4742a
AK
750------------------------------8<-------------------------------------
751 9 branch was cut here
752----------------------------->8--------------------------------------
753
40d43d25
LB
7542012-12-29 - lavu 52.3.0
755 d8fd06c - Add av_basename() and av_dirname().
756 c1a02e8 - Add av_pix_fmt_get_chroma_sub_sample and deprecate
757 avcodec_get_chroma_sub_sample.
d8fd06c3 758
142c3909 7592012-11-11 - 5980f5d - lavu 52.2.0 - audioconvert.h
5980f5dd
JR
760 Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated.
761
142c3909 7622012-11-05 - dfde8a3 - lavu 52.1.0 - intmath.h
dfde8a34
JR
763 Add av_ctz() for trailing zero bit count
764
142c3909 7652012-10-21 - a893655 - lavu 51.45.0 - error.h
a893655b
NC
766 Add AVERROR_EXPERIMENTAL
767
142c3909 7682012-10-12 - d2fcb35 - lavu 51.44.0 - pixdesc.h
d2fcb356
AK
769 Add functions for accessing pixel format descriptors.
770 Accessing the av_pix_fmt_descriptors array directly is now
771 deprecated.
772
142c3909 7732012-10-11 - 9a92aea - lavu 51.43.0 - aes.h, md5.h, sha.h, tree.h
9a92aea2
MS
774 Add functions for allocating the opaque contexts for the algorithms,
775 deprecate the context size variables.
776
142c3909 7772012-10-10 - b522000 - lavf 54.18.0 - avio.h
b522000e
LB
778 Add avio_closep to complement avio_close.
779
142c3909 7802012-10-08 - 78071a1 - lavu 51.42.0 - pixfmt.h
78071a14
AK
781 Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*.
782 To provide backwards compatibility, PixelFormat is now #defined as
783 AVPixelFormat.
784 Note that this can break user code that includes pixfmt.h and uses the
785 'PixelFormat' identifier. Such code should either #undef PixelFormat
786 or stop using the PixelFormat name.
787
2f49e3da 7882012-10-05 - e7ba5b1 - lavr 1.0.0 - avresample.h
006afc7a
AK
789 Data planes parameters to avresample_convert() and
790 avresample_read() are now uint8_t** instead of void**.
791 Libavresample is now stable.
792
2f49e3da 7932012-09-24 - a42aada - lavc 54.28.0 - avcodec.h
a42aadab
AK
794 Add avcodec_free_frame(). This function must now
795 be used for freeing an AVFrame.
796
2f49e3da 7972012-09-12 - 8919fee - lavu 51.41.0 - audioconvert.h
8919fee7
TW
798 Added AV_CH_LOW_FREQUENCY_2 channel mask value.
799
2f49e3da 8002012-09-04 - 686a329 - lavu 51.40.0 - opt.h
686a3293
MS
801 Reordered the fields in default_val in AVOption, changed which
802 default_val field is used for which AVOptionType.
803
2f49e3da 8042012-08-30 - a231832 - lavc 54.26.1 - avcodec.h
a2318326
AK
805 Add codec descriptor properties AV_CODEC_PROP_LOSSY and
806 AV_CODEC_PROP_LOSSLESS.
807
7b44061f
AK
8082012-08-18 - lavc 54.26 - avcodec.h
809 Add codec descriptors for accessing codec properties without having
810 to refer to a specific decoder or encoder.
811
812 c223d79 - Add an AVCodecDescriptor struct and functions
813 avcodec_descriptor_get() and avcodec_descriptor_next().
814 51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY.
815 91e59fe - Add avcodec_descriptor_get_by_name().
816
817
8182012-08-08 - 1d9c2dc - lavu 51.39 - avutil.h
1d9c2dc8
MS
819 Don't implicitly include libavutil/common.h in avutil.h
820
7b44061f 8212012-08-08 - 987170c - lavu 51.38 - dict.h
987170cb
MR
822 Add av_dict_count().
823
7b44061f 8242012-08-07 - 104e10f - lavc 54.25 - avcodec.h
104e10fb 825 Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*.
2ff67c90
AK
826 To provide backwards compatibility, CodecID is now #defined as AVCodecID.
827 Note that this can break user code that includes avcodec.h and uses the
828 'CodecID' identifier. Such code should either #undef CodecID or stop using the
829 CodecID name.
104e10fb 830
7b44061f 8312012-08-03 - 239fdf1 - lavu 51.37.1 - cpu.h
239fdf1b
DB
832 lsws 2.1.1 - swscale.h
833 Rename AV_CPU_FLAG_MMX2 ---> AV_CPU_FLAG_MMXEXT.
834 Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT.
835
7b44061f 8362012-07-29 - 681ed00 - lavf 54.13.0 - avformat.h
681ed000
LB
837 Add AVFMT_FLAG_NOBUFFER for low latency use cases.
838
7b44061f 8392012-07-20 - b70d89a - lavfi 3.0.0 - avfilter.h
b70d89a0
RN
840 Add avfilter_unref_bufferp().
841
45ff9e5b 8422012-07-10 - 5fade8a - lavu 51.37.0
f3e5e6f0
LB
843 Add av_malloc_array() and av_mallocz_array()
844
45ff9e5b 8452012-06-22 - d3d3a32 - lavu 51.34.0
d3d3a32c
MR
846 Add av_usleep()
847
dc7e336c
MR
8482012-06-20 - ae0a301 - lavu 51.33.0
849 Move av_gettime() to libavutil, add libavutil/time.h
850
45ff9e5b 8512012-06-09 - 3971be0 - lavr 0.0.3
3971be0e
JS
852 Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing.
853
45ff9e5b 8542012-06-12 - 9baeff9 - lavfi 2.23.0 - avfilter.h
9baeff95
AK
855 Add AVFilterContext.nb_inputs/outputs. Deprecate
856 AVFilterContext.input/output_count.
857
45ff9e5b 8582012-06-12 - 84b9fbe - lavfi 2.22.0 - avfilter.h
84b9fbe0
AK
859 Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those
860 should now be used instead of accessing AVFilterPad members
861 directly.
862
45ff9e5b 8632012-06-12 - b0f0dfc - lavu 51.32.0 - audioconvert.h
b0f0dfc4
AK
864 Add av_get_channel_layout_channel_index(), av_get_channel_name()
865 and av_channel_layout_extract_channel().
866
45ff9e5b 8672012-05-25 - 154486f - lavu 51.31.0 - opt.h
154486f9
SP
868 Add av_opt_set_bin()
869
45ff9e5b 8702012-05-26 - e9cef89 - lavf 54.3.0
e9cef897
JZ
871 Add AVFMT_TS_NONSTRICT format flag to indicate that a muxer supports
872 non-increasing monotone timestamps.
873
d89eca50
AK
8742012-05-15 - lavfi 2.17.0
875 Add support for audio filters
876 ac71230/a2cd9be - add video/audio buffer sink in a new installed
877 header buffersink.h
878 720c6b7 - add av_buffersrc_write_frame(), deprecate
879 av_vsrc_buffer_add_frame()
880 ab16504 - add avfilter_copy_buf_props()
881 9453c9e - add extended_data to AVFilterBuffer
882 1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays()
883
8842012-05-09 - lavu 51.30.0 - samplefmt.h
885 142e740 - add av_samples_copy()
886 6d7f617 - add av_samples_set_silence()
887
8882012-05-09 - a5117a2 - lavc 54.13.1
a5117a24
AK
889 For audio formats with fixed frame size, the last frame
890 no longer needs to be padded with silence, libavcodec
891 will handle this internally (effectively all encoders
892 behave as if they had CODEC_CAP_SMALL_LAST_FRAME set).
893
d89eca50 8942012-05-07 - 828bd08 - lavc 54.13.0 - avcodec.h
828bd088
AK
895 Add sample_rate and channel_layout fields to AVFrame.
896
d89eca50 8972012-05-01 - 4010d72 - lavr 0.0.1
4010d724
JR
898 Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8.
899
f7ff0999 9002012-04-25 - 3527a73 - lavu 51.29.0 - cpu.h
3527a739
MR
901 Add av_parse_cpu_flags()
902
f7ff0999 9032012-04-24 - c8af852 - lavr 0.0.0
c8af852b
JR
904 Add libavresample audio conversion library
905
f7ff0999 9062012-04-20 - 0c0d1bc - lavu 51.28.0 - audio_fifo.h
0c0d1bce
JR
907 Add audio FIFO functions:
908 av_audio_fifo_free()
909 av_audio_fifo_alloc()
910 av_audio_fifo_realloc()
911 av_audio_fifo_write()
912 av_audio_fifo_read()
913 av_audio_fifo_drain()
914 av_audio_fifo_reset()
915 av_audio_fifo_size()
916 av_audio_fifo_space()
917
f7ff0999
JR
9182012-04-14 - lavfi 2.16.0 - avfiltergraph.h
919 d7bcc71 Add avfilter_graph_parse2().
920 91d3cbe Add avfilter_inout_alloc() and avfilter_inout_free().
91d3cbe0 921
f7ff0999 9222012-04-08 - 4d693b0 - lavu 51.27.0 - samplefmt.h
4d693b02
JR
923 Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()
924
f7ff0999 9252012-04-05 - 5cc51a5 - lavu 51.26.0 - audioconvert.h
5cc51a58
JR
926 Add av_get_default_channel_layout()
927
bf5f46b4
JG
9282012-03-20 - 3c90cc2 - lavfo 54.2.0
929 Deprecate av_read_packet(), use av_read_frame() with
930 AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags
931
5d20e7b7 9322012-03-06 - 4d851f8 - lavu 51.25.0 - cpu.h
4d851f8d
AK
933 Add av_set_cpu_flags_mask().
934
5d20e7b7
AK
9352012-03-05 - lavc 54.8.0
936 6699d07 Add av_get_exact_bits_per_sample()
937 9524cf7 Add av_get_audio_frame_duration()
9524cf79 938
5d20e7b7 9392012-03-04 - 44fe77b - lavc 54.7.0 - avcodec.h
44fe77b3
AK
940 Add av_codec_is_encoder/decoder().
941
5d20e7b7 9422012-03-01 - 442c132 - lavc 54.3.0 - avcodec.h
442c1320
MS
943 Add av_packet_shrink_side_data.
944
5d20e7b7 9452012-02-29 - dd2a4bc - lavf 54.2.0 - avformat.h
32253747
AK
946 Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC,
947 used for dealing with attached pictures/cover art.
948
f5f5b154 9492012-02-25 - c9bca80 - lavu 51.24.0 - error.h
c9bca801 950 Add AVERROR_UNKNOWN
75bdd55e 951 NOTE: this was backported to 0.8
c9bca801 952
f5f5b154 9532012-02-20 - e9cda85 - lavc 54.2.0
e9cda853
JR
954 Add duration field to AVCodecParserContext
955
f5f5b154 9562012-02-20 - 0b42a93 - lavu 51.23.1 - mathematics.h
0b42a938
JR
957 Add av_rescale_q_rnd()
958
f5f5b154 9592012-02-08 - 38d5533 - lavu 51.22.1 - pixdesc.h
38d55332
AK
960 Add PIX_FMT_PSEUDOPAL flag.
961
f5f5b154 9622012-02-08 - 52f82a1 - lavc 54.01.0
52f82a11
AK
963 Add avcodec_encode_video2() and deprecate avcodec_encode_video().
964
fcc518a0 9652012-02-01 - 316fc74 - lavc 54.01.0
316fc744
JG
966 Add av_fast_padded_malloc() as alternative for av_realloc() when aligned
967 memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZE
968 zero-padded bytes at the end.
969
fcc518a0 9702012-01-31 - dd6d3b0 - lavf 54.01.0
dd6d3b0e 971 Add avformat_get_riff_video_tags() and avformat_get_riff_audio_tags().
75bdd55e 972 NOTE: this was backported to 0.8
dd6d3b0e 973
fcc518a0 9742012-01-31 - af08d9a - lavc 54.01.0
af08d9ae 975 Add avcodec_is_open() function.
75bdd55e 976 NOTE: this was backported to 0.8
af08d9ae 977
fcc518a0 9782012-01-30 - 8b93312 - lavu 51.22.0 - intfloat.h
8b933129
PM
979 Add a new installed header libavutil/intfloat.h with int/float punning
980 functions.
75bdd55e 981 NOTE: this was backported to 0.8
8b933129 982
6cb28829
MS
9832012-01-25 - lavf 53.22.0
984 f1caf01 Allow doing av_write_frame(ctx, NULL) for flushing possible
985 buffered data within a muxer. Added AVFMT_ALLOW_FLUSH for
986 muxers supporting it (av_write_frame makes sure it is called
987 only for muxers with this flag).
988
75bdd55e
AK
989------------------------------8<-------------------------------------
990 0.8 branch was cut here
991----------------------------->8--------------------------------------
992
7512bb74 9932012-01-15 - lavc 53.34.0
a6ccae3f 994 New audio encoding API:
7512bb74 995 b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio
a6ccae3f 996 encoders.
7512bb74
AK
997 5ee5fa0 Add avcodec_fill_audio_frame() as a convenience function.
998 b2c75b6 Add avcodec_encode_audio2() and deprecate avcodec_encode_audio().
a6ccae3f
JR
999 Add AVCodec.encode2().
1000
7512bb74 10012012-01-12 - 3167dc9 - lavfi 2.15.0
3167dc95
AK
1002 Add a new installed header -- libavfilter/version.h -- with version macros.
1003
c04a954d
JG
10042011-01-03 - b73ec05 - lavu 51.21.0
1005 Add av_popcount64
1006
06e8d38f
AK
10072011-12-25 - lavfi 2.14.0
1008 e1d9dbf Add a new installed header - buffersrc.h
1009 It contains a new function av_buffersrc_buffer() that allows passing
1010 frames to the 'buffer' filter, but unlike av_vsrc_buffer_add_frame()
1011 it allows for direct rendering.
1012 1c9e340 Add avfilter_copy_frame_props() for copying properties from
1013 AVFrame to AVFilterBufferRef.
1014
10152011-12-25 - lavc 53.31.0
1016 Add the following new fields to AVFrame:
1017 b58dbb5 sample_aspect_ratio
1018 3a2ddf7 width, height
1019 8a4a5f6 format
1020
2a216ca2 10212011-12-18 - 8400b12 - lavc 53.28.1
8400b126
MR
1022 Deprecate AVFrame.age. The field is unused.
1023
c04a954d
JG
10242011-12-12 - 5266045 - lavf 53.17.0
1025 Add avformat_close_input().
52660454
AK
1026 Deprecate av_close_input_file() and av_close_input_stream().
1027
f134b5ec
VG
10282011-12-09 - b2890f5 - lavu 51.20.0 - audioconvert.h
1029 Expand the channel layout list.
1030
c04a954d 10312011-12-02 - 0eea212 - lavc 53.25.0
0eea2129
JR
1032 Add nb_samples and extended_data fields to AVFrame.
1033 Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
1034 Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
1035 avcodec_decode_audio4() writes output samples to an AVFrame, which allows
1036 audio decoders to use get_buffer().
1037
c04a954d 10382011-12-04 - 560f773 - lavc 53.24.0
560f773c
JR
1039 Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
1040 Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
1041 Change AVCodecContext.error[4] to [8] at next major bump.
1042 Add AV_NUM_DATA_POINTERS to simplify the bump transition.
1043
f134b5ec
VG
10442011-11-24 - lavu 51.19.0
1045 bd97b2e - add planar RGB pixel formats
1046 6b0768e - add PIX_FMT_PLANAR and PIX_FMT_RGB pixel descriptions
1047
b94a3b28 10482011-11-23 - bbb46f3 - lavu 51.18.0
bbb46f3e
JR
1049 Add av_samples_get_buffer_size(), av_samples_fill_arrays(), and
1050 av_samples_alloc(), to samplefmt.h.
1051
b94a3b28 10522011-11-23 - 8889cc4 - lavu 51.17.0
8889cc4f
JR
1053 Add planar sample formats and av_sample_fmt_is_planar() to samplefmt.h.
1054
b94a3b28 10552011-11-19 - f3a29b7 - lavc 53.21.0
f3a29b75
JR
1056 Move some AVCodecContext fields to a new private struct, AVCodecInternal,
1057 which is accessed from a new field, AVCodecContext.internal.
1058 - fields moved:
1059 AVCodecContext.internal_buffer --> AVCodecInternal.buffer
1060 AVCodecContext.internal_buffer_count --> AVCodecInternal.buffer_count
1061 AVCodecContext.is_copy --> AVCodecInternal.is_copy
1062
b94a3b28
MR
10632011-11-16 - 6270671 - lavu 51.16.0
1064 Add av_timegm()
1065
f872e4d0
AK
10662011-11-13 - lavf 53.15.0
1067 New interrupt callback API, allowing per-AVFormatContext/AVIOContext
1068 interrupt callbacks.
1069 6aa0b98 Add AVIOInterruptCB struct and the interrupt_callback field to
1070 AVFormatContext.
1071 1dee0ac Add avio_open2() with additional parameters. Those are
1072 an interrupt callback and an options AVDictionary.
1073 This will allow passing AVOptions to protocols after lavf
1074 54.0.
1075
eacec07e 10762011-11-06 - ba04ecf - lavu 51.14.0
ba04ecfd
RD
1077 Add av_strcasecmp() and av_strncasecmp() to avstring.h.
1078
eacec07e 10792011-11-06 - 07b172f - lavu 51.13.0
07b172fe
LB
1080 Add av_toupper()/av_tolower()
1081
eacec07e 10822011-11-05 - b6d08f4 - lavf 53.13.0
c9b309e8 1083 Add avformat_network_init()/avformat_network_deinit()
b6d08f40 1084
eacec07e 10852011-10-27 - 512557b - lavc 53.15.0
512557b2
JR
1086 Remove avcodec_parse_frame.
1087 Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY.
1088
eacec07e 10892011-10-19 - 569129a - lavf 53.10.0
569129a6
AK
1090 Add avformat_new_stream(). Deprecate av_new_stream().
1091
eacec07e 10922011-10-13 - b631fba - lavf 53.9.0
b631fba9
JR
1093 Add AVFMT_NO_BYTE_SEEK AVInputFormat flag.
1094
492bd1a2
AK
10952011-10-12 - lavu 51.12.0
1096 AVOptions API rewrite.
1097
1098 - 145f741 FF_OPT_TYPE* renamed to AV_OPT_TYPE_*
1099 - new setting/getting functions with slightly different semantics:
1100 dac66da av_set_string3 -> av_opt_set
1101 av_set_double -> av_opt_set_double
1102 av_set_q -> av_opt_set_q
1103 av_set_int -> av_opt_set_int
1104
1105 41d9d51 av_get_string -> av_opt_get
1106 av_get_double -> av_opt_get_double
1107 av_get_q -> av_opt_get_q
1108 av_get_int -> av_opt_get_int
1109
1110 - 8c5dcaa trivial rename av_next_option -> av_opt_next
1111 - 641c7af new functions - av_opt_child_next, av_opt_child_class_next
1112 and av_opt_find2()
1113
7f9b0ef9 11142011-09-03 - fb4ca26 - lavc 53.10.0
fb4ca26b
AK
1115 lavf 53.6.0
1116 lsws 2.1.0
1117 Add {avcodec,avformat,sws}_get_class().
1118
7f9b0ef9 11192011-09-03 - c11fb82 - lavu 51.10.0
c11fb828
AK
1120 Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function.
1121
96d8e18a
JN
11222011-08-26 - lavu 51.9.0
1123 - f2011ed Add av_fifo_peek2(), deprecate av_fifo_peek().
1124 - add41de..abc78a5 Do not include intfloat_readwrite.h,
1125 mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h.
f2011ed2 1126
7f9b0ef9 11272011-08-16 - 48f9e45 - lavf 53.4.0
48f9e457
AK
1128 Add avformat_query_codec().
1129
7f9b0ef9 11302011-08-16 - bca06e7 - lavc 53.8.0
bca06e77
AK
1131 Add avcodec_get_type().
1132
e3a70c7c
DB
11332011-08-06 - 2f63440 - lavf 53.4.0
1134 Add error_recognition to AVFormatContext.
1135
5038f9b2
LB
11362011-08-02 - 9d39cbf - lavc 53.7.1
1137 Add AV_PKT_FLAG_CORRUPT AVPacket flag.
1138
6cb11979 11392011-07-10 - a67c061 - lavf 53.3.0
f2f523ff 1140 Add avformat_find_stream_info(), deprecate av_find_stream_info().
9c47f2b2 1141 NOTE: this was backported to 0.7
f2f523ff 1142
6cb11979 11432011-07-10 - 0b950fe - lavc 53.6.0
f2f523ff 1144 Add avcodec_open2(), deprecate avcodec_open().
9c47f2b2
AK
1145 NOTE: this was backported to 0.7
1146
44911f29
AK
1147 Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and
1148 avcodec_alloc_context2().
f2f523ff 1149
6cb11979 11502011-06-23 - 67e9ae1 - lavu 51.8.0 - attributes.h
67e9ae14
MS
1151 Add av_printf_format().
1152
9c47f2b2
AK
1153------------------------------8<-------------------------------------
1154 0.7 branch was cut here
1155----------------------------->8--------------------------------------
1156
6cb11979 11572011-06-16 - 05e84c9, 25de595 - lavf 53.2.0 - avformat.h
7c44d716
AK
1158 Add avformat_open_input and avformat_write_header().
1159 Deprecate av_open_input_stream, av_open_input_file,
1160 AVFormatParameters and av_write_header.
1161
6cb11979 11622011-06-16 - 7e83e1c, dc59ec5 - lavu 51.7.0 - opt.h
7c44d716
AK
1163 Add av_opt_set_dict() and av_opt_find().
1164 Deprecate av_find_opt().
1165 Add AV_DICT_APPEND flag.
1166
6cb11979 11672011-06-10 - cb7c11c - lavu 51.6.0 - opt.h
cb7c11cc
MS
1168 Add av_opt_flag_is_set().
1169
6cb11979 11702011-06-08 - d9f80ea - lavu 51.5.0 - AVMetadata
d9f80ea2
AK
1171 Move AVMetadata from lavf to lavu and rename it to
1172 AVDictionary -- new installed header dict.h.
1173 All av_metadata_* functions renamed to av_dict_*.
1174
1397ac0a 11752011-06-07 - a6703fa - lavu 51.4.0 - av_get_bytes_per_sample()
a6703faa
SS
1176 Add av_get_bytes_per_sample() in libavutil/samplefmt.h.
1177 Deprecate av_get_bits_per_sample_fmt().
1178
6cb11979 11792011-06-05 - b39b062 - lavu 51.3.0 - opt.h
b39b0623
AK
1180 Add av_opt_free convenience function.
1181
04de5bf5 11822011-05-28 - 0420bd7 - lavu 51.2.0 - pixdesc.h
8f653e28
SS
1183 Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate
1184 avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor.
1185
19a686b8 11862011-05-25 - 30315a8 - lavf 53.1.0 - avformat.h
30315a8d
AC
1187 Add fps_probe_size to AVFormatContext.
1188
41e21e4d 11892011-05-18 - 64150ff - lavc 53.4.0 - AVCodecContext.request_sample_fmt
00e5da89
JR
1190 Add request_sample_fmt field to AVCodecContext.
1191
36dc49b7 11922011-05-10 - 188dea1 - lavc 53.3.0 - avcodec.h
188dea1d
AK
1193 Deprecate AVLPCType and the following fields in
1194 AVCodecContext: lpc_coeff_precision, prediction_order_method,
1195 min_partition_order, max_partition_order, lpc_type, lpc_passes.
1196 Corresponding FLAC encoder options should be used instead.
1197
36dc49b7 11982011-04-26 - bebe72f - lavu 51.1.0 - avutil.h
bebe72f4
SS
1199 Add AVPictureType enum and av_get_picture_type_char(), deprecate
1200 FF_*_TYPE defines and av_get_pict_type_char() defined in
1201 libavcodec/avcodec.h.
1202
36dc49b7 12032011-04-26 - 10d3940 - lavfi 2.3.0 - avfilter.h
10d39405
RPM
1204 Add pict_type and key_frame fields to AVFilterBufferRefVideo.
1205
36dc49b7 12062011-04-26 - 7a11c82 - lavfi 2.2.0 - vsrc_buffer
7a11c82f
MN
1207 Add sample_aspect_ratio fields to vsrc_buffer arguments
1208
b4a53314 12092011-04-21 - 94f7451 - lavc 53.1.0 - avcodec.h
94f7451a
RB
1210 Add CODEC_CAP_SLICE_THREADS for codecs supporting sliced threading.
1211
aad2f2f4
K
12122011-04-15 - lavc 52.120.0 - avcodec.h
1213 AVPacket structure got additional members for passing side information:
1214 4de339e introduce side information for AVPacket
1215 2d8591c make containers pass palette change in AVPacket
1216
86a89ae3
AK
12172011-04-12 - lavf 52.107.0 - avio.h
1218 Avio cleanup, part II - deprecate the entire URLContext API:
1219 175389c add avio_check as a replacement for url_exist
1220 ff1ec0c add avio_pause and avio_seek_time as replacements
1221 for _av_url_read_fseek/fpause
1222 cdc6a87 deprecate av_protocol_next(), avio_enum_protocols
1223 should be used instead.
1224 80c6e23 rename url_set_interrupt_cb->avio_set_interrupt_cb.
1225 f87b1b3 rename open flags: URL_* -> AVIO_*
1226 f8270bb add avio_enum_protocols.
1227 5593f03 deprecate URLProtocol.
1228 c486dad deprecate URLContext.
1229 026e175 deprecate the typedef for URLInterruptCB
1230 8e76a19 deprecate av_register_protocol2.
1231 b840484 deprecate URL_PROTOCOL_FLAG_NESTED_SCHEME
1232 1305d93 deprecate av_url_read_seek
1233 fa104e1 deprecate av_url_read_pause
1234 727c7aa deprecate url_get_filename().
1235 5958df3 deprecate url_max_packet_size().
1236 1869ea0 deprecate url_get_file_handle().
1237 32a97d4 deprecate url_filesize().
1238 e52a914 deprecate url_close().
1239 58a48c6 deprecate url_seek().
1240 925e908 deprecate url_write().
1241 dce3756 deprecate url_read_complete().
1242 bc371ac deprecate url_read().
1243 0589da0 deprecate url_open().
1244 62eaaea deprecate url_connect.
1245 5652bb9 deprecate url_alloc.
1246 333e894 deprecate url_open_protocol
1247 e230705 deprecate url_poll and URLPollEntry
1248
73389754
PR
12492011-04-10 - lavu 50.40.0 - pixfmt.h
1250 Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
1251
0c68c804
AK
12522011-04-08 - lavf 52.106.0 - avformat.h
1253 Minor avformat.h cleanup:
1254 a9bf9d8 deprecate av_guess_image2_codec
1255 c3675df rename avf_sdp_create->av_sdp_create
1256
4dcde00c
AK
12572011-04-03 - lavf 52.105.0 - avio.h
1258 Large-scale renaming/deprecating of AVIOContext-related functions:
1259 724f6a0 deprecate url_fdopen
1260 403ee83 deprecate url_open_dyn_packet_buf
1261 6dc7d80 rename url_close_dyn_buf -> avio_close_dyn_buf
1262 b92c545 rename url_open_dyn_buf -> avio_open_dyn_buf
1263 8978fed introduce an AVIOContext.seekable field as a replacement for
1264 AVIOContext.is_streamed and url_is_streamed()
1265 b64030f deprecate get_checksum()
1266 4c4427a deprecate init_checksum()
1267 4ec153b deprecate udp_set_remote_url/get_local_port
1268 933e90a deprecate av_url_read_fseek/fpause
1269 8d9769a deprecate url_fileno
1270 b7f2fdd rename put_flush_packet -> avio_flush
1271 35f1023 deprecate url_close_buf
1272 83fddae deprecate url_open_buf
1273 d9d86e0 rename url_fprintf -> avio_printf
1274 59f65d9 deprecate url_setbufsize
1275 3e68b3b deprecate url_ferror
1276 66e5b1d deprecate url_feof
1277 e8bb2e2 deprecate url_fget_max_packet_size
1278 76aa876 rename url_fsize -> avio_size
1279 e519753 deprecate url_fgetc
1280 655e45e deprecate url_fgets
1281 a2704c9 rename url_ftell -> avio_tell
1282 e16ead0 deprecate get_strz() in favor of avio_get_str
1283 0300db8,2af07d3 rename url_fskip -> avio_skip
1284 6b4aa5d rename url_fseek -> avio_seek
1285 61840b4 deprecate put_tag
1286 22a3212 rename url_fopen/fclose -> avio_open/close.
1287 0ac8e2b deprecate put_nbyte
1288 77eb550 rename put_byte -> avio_w8
1289 put_[b/l]e<type> -> avio_w[b/l]<type>
1290 put_buffer -> avio_write
1291 b7effd4 rename get_byte -> avio_r8,
1292 get_[b/l]e<type> -> avio_r[b/l]<type>
1293 get_buffer -> avio_read
1294 b3db9ce deprecate get_partial_buffer
1295 8d9ac96 rename av_alloc_put_byte -> avio_alloc_context
1296
0b18b49b
JR
12972011-03-25 - 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type
1298 Add audio_service_type field to AVCodecContext.
1299
dc6fdad5
MS
13002011-03-02 - 863c471 - lavf 52.103.0 - av_pkt_dump2, av_pkt_dump_log2
1301 Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
1302 source stream timebase for outputting timestamps. Deprecate
1303 av_pkt_dump and av_pkt_dump_log.
1304
d2bbf82e
RB
13052011-02-20 - e731b8d - lavf 52.102.0 - avio.h
1306 * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the
1307 original, and move it to a private header so it is no longer
1308 part of our public API. Instead, use av_alloc_put_byte().
1309 * ae628ec - rename ByteIOContext to AVIOContext.
1310
c3dbfa1a 13112011-02-16 - 09d171b - lavf 52.101.0 - avformat.h
09d171b9 1312 lavu 52.39.0 - parseutils.h
c3dbfa1a
JG
1313 * 610219a - Add av_ prefix to dump_format().
1314 * f6c7375 - Replace parse_date() in lavf with av_parse_time() in lavu.
1315 * ab0287f - Move find_info_tag from lavf to lavu and add av_prefix to it.
09d171b9 1316
737eb597
RT
13172011-02-15 - lavu 52.38.0 - merge libavcore
1318 libavcore is merged back completely into libavutil
1319
8ed4cc65
MR
13202011-02-10 - 55bad0c - lavc 52.113.0 - vbv_delay
1321 Add vbv_delay field to AVCodecContext
1322
935ee1b9
MR
13232011-02-14 - 24a83bd - lavf 52.100.0 - AV_DISPOSITION_CLEAN_EFFECTS
1324 Add AV_DISPOSITION_CLEAN_EFFECTS disposition flag.
1325
08a459f0
MR
13262011-02-14 - 910b5b8 - lavfi 1.76.0 - AVFilterLink sample_aspect_ratio
1327 Add sample_aspect_ratio field to AVFilterLink.
1328
77c330a0
AH
13292011-02-10 - 12c14cd - lavf 52.99.0 - AVStream.disposition
1330 Add AV_DISPOSITION_HEARING_IMPAIRED and AV_DISPOSITION_VISUAL_IMPAIRED.
1331
f2146944 13322011-02-09 - 5592734 - lavc 52.112.0 - avcodec_thread_init()
c0b102ca
AS
1333 Deprecate avcodec_thread_init()/avcodec_thread_free() use; instead
1334 set thread_count before calling avcodec_open.
1335
8e8cc52b 13362011-02-09 - 778b08a - lavc 52.111.0 - threading API
37b00b47
AS
1337 Add CODEC_CAP_FRAME_THREADS with new restrictions on get_buffer()/
1338 release_buffer()/draw_horiz_band() callbacks for appropriate codecs.
1339 Add thread_type and active_thread_type fields to AVCodecContext.
1340
c2bd7578 13412011-02-08 - 3940caa - lavf 52.98.0 - av_probe_input_buffer
3940caad
AH
1342 Add av_probe_input_buffer() to avformat.h for probing format from a
1343 ByteIOContext.
1344
ae0f8a1a 13452011-02-06 - fe174fc - lavf 52.97.0 - avio.h
fe174fc8
NG
1346 Add flag for non-blocking protocols: URL_FLAG_NONBLOCK
1347
ff197489
MS
13482011-02-04 - f124b08 - lavf 52.96.0 - avformat_free_context()
1349 Add avformat_free_context() in avformat.h.
1350
75fd0668
TH
13512011-02-03 - f5b82f4 - lavc 52.109.0 - add CODEC_ID_PRORES
1352 Add CODEC_ID_PRORES to avcodec.h.
1353
7ab8758b
JG
13542011-02-03 - fe9a3fb - lavc 52.109.0 - H.264 profile defines
1355 Add defines for H.264 * Constrained Baseline and Intra profiles
1356
4868bebe
AK
13572011-02-02 - lavf 52.95.0
1358 * 50196a9 - add a new installed header version.h.
1359 * 4efd5cf, dccbd97, 93b78d1 - add several variants of public
1360 avio_{put,get}_str* functions. Deprecate corresponding semi-public
1361 {put,get}_str*.
1362
13632011-02-02 - dfd2a00 - lavu 50.37.0 - log.h
1364 Make av_dlog public.
1365
343bfdd3 13662011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps
a242ac36
SS
1367 Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples.
1368
343bfdd3 13692011-01-14 - 7f88a5b - lavf 52.93.0 - av_metadata_copy()
f93fe776
SS
1370 Add av_metadata_copy() in avformat.h.
1371
343bfdd3 13722011-01-07 - 81c623f - lavc 52.107.0 - deprecate reordered_opaque
81c623fa
MN
1373 Deprecate reordered_opaque in favor of pkt_pts/dts.
1374
343bfdd3 13752011-01-07 - 1919fea - lavc 52.106.0 - pkt_dts
1919feaf
MN
1376 Add pkt_dts to AVFrame, this will in the future allow multithreading decoders
1377 to not mess up dts.
1378
343bfdd3 13792011-01-07 - 393cbb9 - lavc 52.105.0 - pkt_pts
393cbb96
MN
1380 Add pkt_pts to AVFrame.
1381
343bfdd3 13822011-01-07 - 060ec0a - lavc 52.104.0 - av_get_profile_name()
060ec0a8
AH
1383 Add av_get_profile_name to libavcodec/avcodec.h.
1384
343bfdd3 13852010-12-27 - 0ccabee - lavfi 1.71.0 - AV_PERM_NEG_LINESIZES
28e5d45c
SS
1386 Add AV_PERM_NEG_LINESIZES in avfilter.h.
1387
343bfdd3 13882010-12-27 - 9128ae0 - lavf 52.91.0 - av_find_best_stream()
9128ae08
NG
1389 Add av_find_best_stream to libavformat/avformat.h.
1390
343bfdd3 13912010-12-27 - 107a7e3 - lavf 52.90.0
107a7e3e
AK
1392 Add AVFMT_NOSTREAMS flag for formats with no streams,
1393 like e.g. text metadata.
1394
343bfdd3 13952010-12-22 - 0328b9e - lavu 50.36.0 - file.h
0328b9ea
SS
1396 Add functions av_file_map() and av_file_unmap() in file.h.
1397
343bfdd3 13982010-12-19 - 0bc55f5 - lavu 50.35.0 - error.h
0bc55f5d
NG
1399 Add "not found" error codes:
1400 AVERROR_DEMUXER_NOT_FOUND
1401 AVERROR_MUXER_NOT_FOUND
1402 AVERROR_DECODER_NOT_FOUND
1403 AVERROR_ENCODER_NOT_FOUND
1404 AVERROR_PROTOCOL_NOT_FOUND
1405 AVERROR_FILTER_NOT_FOUND
1406 AVERROR_BSF_NOT_FOUND
1407 AVERROR_STREAM_NOT_FOUND
1408
343bfdd3 14092010-12-09 - c61cdd0 - lavcore 0.16.0 - avcore.h
c61cdd0a
SS
1410 Move AV_NOPTS_VALUE, AV_TIME_BASE, AV_TIME_BASE_Q symbols from
1411 avcodec.h to avcore.h.
1412
343bfdd3 14132010-12-04 - 16cfc96 - lavc 52.98.0 - CODEC_CAP_NEG_LINESIZES
16cfc961
SS
1414 Add CODEC_CAP_NEG_LINESIZES codec capability flag in avcodec.h.
1415
343bfdd3 14162010-12-04 - bb4afa1 - lavu 50.34.0 - av_get_pix_fmt_string()
bb4afa13
SS
1417 Deprecate avcodec_pix_fmt_string() in favor of
1418 pixdesc.h/av_get_pix_fmt_string().
1419
343bfdd3 14202010-12-04 - 4da12e3 - lavcore 0.15.0 - av_image_alloc()
4da12e3b
SS
1421 Add av_image_alloc() to libavcore/imgutils.h.
1422
343bfdd3 14232010-12-02 - 037be76 - lavfi 1.67.0 - avfilter_graph_create_filter()
037be76e
SS
1424 Add function avfilter_graph_create_filter() in avfiltergraph.h.
1425
343bfdd3 14262010-11-25 - 4723bc2 - lavfi 1.65.0 - avfilter_get_video_buffer_ref_from_arrays()
d38c340f
SS
1427 Add function avfilter_get_video_buffer_ref_from_arrays() in
1428 avfilter.h.
06d19718 1429
343bfdd3 14302010-11-21 - 176a615 - lavcore 0.14.0 - audioconvert.h
176a6157
SS
1431 Add a public audio channel API in audioconvert.h, and deprecate the
1432 corresponding functions in libavcodec:
1433 avcodec_get_channel_name()
1434 avcodec_get_channel_layout()
1435 avcodec_get_channel_layout_string()
1436 avcodec_channel_layout_num_channels()
1437 and the CH_* macros defined in libavcodec/avcodec.h.
1438
343bfdd3 14392010-11-21 - 6bfc268 - lavf 52.85.0 - avformat.h
e58d0392
RD
1440 Add av_append_packet().
1441
343bfdd3 14422010-11-21 - a08d918 - lavc 52.97.0 - avcodec.h
e58d0392
RD
1443 Add av_grow_packet().
1444
343bfdd3 14452010-11-17 - 0985e1a - lavcore 0.13.0 - parseutils.h
0985e1a3
AJ
1446 Add av_parse_color() declared in libavcore/parseutils.h.
1447
343bfdd3 14482010-11-13 - cb2c971 - lavc 52.95.0 - AVCodecContext
c716f917
AJ
1449 Add AVCodecContext.subtitle_header and AVCodecContext.subtitle_header_size
1450 fields.
1451
343bfdd3 14522010-11-13 - 5aaea02 - lavfi 1.62.0 - avfiltergraph.h
5aaea022
SS
1453 Make avfiltergraph.h public.
1454
343bfdd3 14552010-11-13 - 4fcbb2a - lavfi 1.61.0 - avfiltergraph.h
4fcbb2af
SS
1456 Remove declarations from avfiltergraph.h for the functions:
1457 avfilter_graph_check_validity()
1458 avfilter_graph_config_links()
1459 avfilter_graph_config_formats()
1460 which are now internal.
1461 Use avfilter_graph_config() instead.
1462
343bfdd3 14632010-11-08 - d2af720 - lavu 50.33.0 - eval.h
d2af7205
SS
1464 Deprecate functions:
1465 av_parse_and_eval_expr(),
1466 av_parse_expr(),
1467 av_eval_expr(),
1468 av_free_expr(),
1469 in favor of the functions:
1470 av_expr_parse_and_eval(),
1471 av_expr_parse(),
1472 av_expr_eval(),
1473 av_expr_free().
1474
343bfdd3 14752010-11-08 - 24de0ed - lavfi 1.59.0 - avfilter_free()
24de0edb
SS
1476 Rename avfilter_destroy() to avfilter_free().
1477 This change breaks libavfilter API/ABI.
1478
343bfdd3 14792010-11-07 - 1e80a0e - lavfi 1.58.0 - avfiltergraph.h
1e80a0ea
SS
1480 Remove graphparser.h header, move AVFilterInOut and
1481 avfilter_graph_parse() declarations to libavfilter/avfiltergraph.h.
1482
343bfdd3 14832010-11-07 - 7313132 - lavfi 1.57.0 - AVFilterInOut
da6ec07c
SS
1484 Rename field AVFilterInOut.filter to AVFilterInOut.filter_ctx.
1485 This change breaks libavfilter API.
1486
343bfdd3 14872010-11-04 - 97dd1e4 - lavfi 1.56.0 - avfilter_graph_free()
97dd1e4a
SS
1488 Rename avfilter_graph_destroy() to avfilter_graph_free().
1489 This change breaks libavfilter API/ABI.
1490
343bfdd3 14912010-11-04 - e15aeea - lavfi 1.55.0 - avfilter_graph_alloc()
e15aeea6
SS
1492 Add avfilter_graph_alloc() to libavfilter/avfiltergraph.h.
1493
343bfdd3 14942010-11-02 - 6f84cd1 - lavcore 0.12.0 - av_get_bits_per_sample_fmt()
6f84cd12
SS
1495 Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and
1496 deprecate av_get_bits_per_sample_format().
1497
343bfdd3 14982010-11-02 - d63e456 - lavcore 0.11.0 - samplefmt.h
d63e456a
SS
1499 Add sample format functions in libavcore/samplefmt.h:
1500 av_get_sample_fmt_name(),
1501 av_get_sample_fmt(),
1502 av_get_sample_fmt_string(),
1503 and deprecate the corresponding libavcodec/audioconvert.h functions:
1504 avcodec_get_sample_fmt_name(),
1505 avcodec_get_sample_fmt(),
1506 avcodec_sample_fmt_string().
1507
343bfdd3 15082010-11-02 - 262d1c5 - lavcore 0.10.0 - samplefmt.h
262d1c5d
SS
1509 Define enum AVSampleFormat in libavcore/samplefmt.h, deprecate enum
1510 SampleFormat.
1511
343bfdd3 15122010-10-16 - 2a24df9 - lavfi 1.52.0 - avfilter_graph_config()
2a24df93
SS
1513 Add the function avfilter_graph_config() in avfiltergraph.h.
1514
343bfdd3 15152010-10-15 - 03700d3 - lavf 52.83.0 - metadata API
03700d39
AK
1516 Change demuxers to export metadata in generic format and
1517 muxers to accept generic format. Deprecate the public
1518 conversion API.
1519
343bfdd3 15202010-10-10 - 867ae7a - lavfi 1.49.0 - AVFilterLink.time_base
77611295
SS
1521 Add time_base field to AVFilterLink.
1522
343bfdd3 15232010-09-27 - c85eef4 - lavu 50.31.0 - av_set_options_string()
c6625ad5
SS
1524 Move av_set_options_string() from libavfilter/parseutils.h to
1525 libavutil/opt.h.
1526
343bfdd3 15272010-09-27 - acc0490 - lavfi 1.47.0 - AVFilterLink
4ecf1539
SS
1528 Make the AVFilterLink fields srcpad and dstpad store the pointers to
1529 the source and destination pads, rather than their indexes.
1530
343bfdd3 15312010-09-27 - 372e288 - lavu 50.30.0 - av_get_token()
b3dd5e59
SS
1532 Move av_get_token() from libavfilter/parseutils.h to
1533 libavutil/avstring.h.
1534
343bfdd3 15352010-09-26 - 635d4ae - lsws 0.12.0 - swscale.h
c5812793
SS
1536 Add the functions sws_alloc_context() and sws_init_context().
1537
343bfdd3 15382010-09-26 - 6ed0404 - lavu 50.29.0 - opt.h
41f87daa
SS
1539 Move libavcodec/opt.h to libavutil/opt.h.
1540
343bfdd3 15412010-09-24 - 1c1c80f - lavu 50.28.0 - av_log_set_flags()
1c1c80f0
MN
1542 Default of av_log() changed due to many problems to the old no repeat
1543 detection. Read the docs of AV_LOG_SKIP_REPEATED in log.h before
1544 enabling it for your app!.
1545
343bfdd3 15462010-09-24 - f66eb58 - lavc 52.90.0 - av_opt_show2()
07cac2a0
SS
1547 Deprecate av_opt_show() in favor or av_opt_show2().
1548
343bfdd3 15492010-09-14 - bc6f0af - lavu 50.27.0 - av_popcount()
07cac2a0
SS
1550 Add av_popcount() to libavutil/common.h.
1551
343bfdd3 15522010-09-08 - c6c98d0 - lavu 50.26.0 - av_get_cpu_flags()
15cae5e6
SS
1553 Add av_get_cpu_flags().
1554
343bfdd3 15552010-09-07 - 34017fd - lavcore 0.9.0 - av_image_copy()
16bacad4
SS
1556 Add av_image_copy().
1557
343bfdd3 15582010-09-07 - 9686abb - lavcore 0.8.0 - av_image_copy_plane()
16bacad4
SS
1559 Add av_image_copy_plane().
1560
343bfdd3 15612010-09-07 - 9b7269e - lavcore 0.7.0 - imgutils.h
1904035b
SS
1562 Adopt hierarchical scheme for the imgutils.h function names,
1563 deprecate the old names.
1564
343bfdd3 15652010-09-04 - 7160bb7 - lavu 50.25.0 - AV_CPU_FLAG_*
47806f41
SS
1566 Deprecate the FF_MM_* flags defined in libavcodec/avcodec.h in favor
1567 of the AV_CPU_FLAG_* flags defined in libavutil/cpu.h.
1568
343bfdd3 15692010-08-26 - 5da19b5 - lavc 52.87.0 - avcodec_get_channel_layout()
798dc641
SS
1570 Add avcodec_get_channel_layout() in audioconvert.h.
1571
343bfdd3 15722010-08-20 - e344336 - lavcore 0.6.0 - av_fill_image_max_pixsteps()
26553088
SS
1573 Rename av_fill_image_max_pixstep() to av_fill_image_max_pixsteps().
1574
343bfdd3 15752010-08-18 - a6ddf8b - lavcore 0.5.0 - av_fill_image_max_pixstep()
33d2e7b3
SS
1576 Add av_fill_image_max_pixstep() in imgutils.h.
1577
343bfdd3 15782010-08-17 - 4f2d2e4 - lavu 50.24.0 - AV_NE()
7f38d28c
SS
1579 Add the AV_NE macro.
1580
343bfdd3 15812010-08-17 - ad2c950 - lavfi 1.36.0 - audio framework
3f52a907
SS
1582 Implement AVFilterBufferRefAudioProps struct for audio properties,
1583 get_audio_buffer(), filter_samples() functions and related changes.
1584
343bfdd3 15852010-08-12 - 81c1eca - lavcore 0.4.0 - av_get_image_linesize()
d1a04371
SS
1586 Add av_get_image_linesize() in imgutils.h.
1587
343bfdd3 15882010-08-11 - c1db7bf - lavfi 1.34.0 - AVFilterBufferRef
5bf840c4
SS
1589 Resize data and linesize arrays in AVFilterBufferRef to 8.
1590
1591 This change breaks libavfilter API/ABI.
1592
343bfdd3 15932010-08-11 - 9f08d80 - lavc 52.85.0 - av_picture_data_copy()
c6a34954
SS
1594 Add av_picture_data_copy in avcodec.h.
1595
343bfdd3 15962010-08-11 - 84c0386 - lavfi 1.33.0 - avfilter_open()
c7c7feaa
SS
1597 Change avfilter_open() signature:
1598 AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name) ->
1599 int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);
1600
1601 This change breaks libavfilter API/ABI.
1602
343bfdd3 16032010-08-11 - cc80caf - lavfi 1.32.0 - AVFilterBufferRef
ad0d70c9
SS
1604 Add a type field to AVFilterBufferRef, and move video specific
1605 properties to AVFilterBufferRefVideoProps.
1606
4bf2d6e8 1607 This change breaks libavfilter API/ABI.
ad0d70c9 1608
343bfdd3 16092010-08-07 - 5d4890d - lavfi 1.31.0 - AVFilterLink
711d14cf
SS
1610 Rename AVFilterLink fields:
1611 AVFilterLink.srcpic -> AVFilterLink.src_buf
1612 AVFilterLink.cur_pic -> AVFilterLink.cur_buf
1613 AVFilterLink.outpic -> AVFilterLink.out_buf
1614
343bfdd3 16152010-08-07 - 7fce481 - lavfi 1.30.0
711d14cf
SS
1616 Rename functions and fields:
1617 avfilter_(un)ref_pic -> avfilter_(un)ref_buffer
1618 avfilter_copy_picref_props -> avfilter_copy_buffer_ref_props
1619 AVFilterBufferRef.pic -> AVFilterBufferRef.buffer
1620
343bfdd3 16212010-08-07 - ecc8dad - lavfi 1.29.0 - AVFilterBufferRef
711d14cf
SS
1622 Rename AVFilterPicRef to AVFilterBufferRef.
1623
343bfdd3 16242010-08-07 - d54e094 - lavfi 1.28.0 - AVFilterBuffer
e11b104a
SS
1625 Move format field from AVFilterBuffer to AVFilterPicRef.
1626
343bfdd3 16272010-08-06 - bf176f5 - lavcore 0.3.0 - av_check_image_size()
71cb41db
SS
1628 Deprecate avcodec_check_dimensions() in favor of the function
1629 av_check_image_size() defined in libavcore/imgutils.h.
1630
343bfdd3 16312010-07-30 - 56b5e9d - lavfi 1.27.0 - AVFilterBuffer
92dd4959
SS
1632 Increase size of the arrays AVFilterBuffer.data and
1633 AVFilterBuffer.linesize from 4 to 8.
1634
1635 This change breaks libavfilter ABI.
1636
343bfdd3 16372010-07-29 - e7bd48a - lavcore 0.2.0 - imgutils.h
3dec10cd
SS
1638 Add functions av_fill_image_linesizes() and
1639 av_fill_image_pointers(), declared in libavcore/imgutils.h.
1640
343bfdd3 16412010-07-27 - 126b638 - lavcore 0.1.0 - parseutils.h
fa8ead00
SS
1642 Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
1643 defined in libavcodec in favor of the newly added functions
1644 av_parse_video_size() and av_parse_video_rate() declared in
1645 libavcore/parseutils.h.
1646
343bfdd3 16472010-07-23 - 4485247 - lavu 50.23.0 - mathematics.h
c257c752
SS
1648 Add the M_PHI constant definition.
1649
343bfdd3 16502010-07-22 - bdab614 - lavfi 1.26.0 - media format generalization
73642926
SS
1651 Add a type field to AVFilterLink.
1652
1653 Change the field types:
1654 enum PixelFormat format -> int format in AVFilterBuffer
1655 enum PixelFormat *formats -> int *formats in AVFilterFormats
1656 enum PixelFormat *format -> int format in AVFilterLink
1657
1658 Change the function signatures:
1659 AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); ->
1660 AVFilterFormats *avfilter_make_format_list(const int *fmts);
1661
1662 int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); ->
1663 int avfilter_add_format (AVFilterFormats **avff, int fmt);
1664
1665 AVFilterFormats *avfilter_all_colorspaces(void); ->
1666 AVFilterFormats *avfilter_all_formats (enum AVMediaType type);
1667
1668 This change breaks libavfilter API/ABI.
1669
343bfdd3 16702010-07-21 - aac6ca6 - lavcore 0.0.0
a33e0365
SS
1671 Add libavcore.
1672
343bfdd3 16732010-07-17 - b5c582f - lavfi 1.25.0 - AVFilterBuffer
8e9d9308
SS
1674 Remove w and h fields from AVFilterBuffer.
1675
343bfdd3 16762010-07-17 - f0d77b2 - lavfi 1.24.0 - AVFilterBuffer
9840147d
SS
1677 Rename AVFilterPic to AVFilterBuffer.
1678
343bfdd3 16792010-07-17 - 57fe80f - lavf 52.74.0 - url_fskip()
57fe80fe
MS
1680 Make url_fskip() return an int error code instead of void.
1681
343bfdd3 16822010-07-11 - 23940f1 - lavc 52.83.0
6f5ac9c1 1683 Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields.
23940f14
JR
1684 Add AVLPCType enum.
1685 Deprecate AVCodecContext.use_lpc.
1686
343bfdd3 16872010-07-11 - e1d7c88 - lavc 52.82.0 - avsubtitle_free()
e1d7c883
RD
1688 Add a function for free the contents of a AVSubtitle generated by
1689 avcodec_decode_subtitle.
1690
343bfdd3 16912010-07-11 - b91d08f - lavu 50.22.0 - bswap.h and intreadwrite.h
617d56ca
SS
1692 Make the bswap.h and intreadwrite.h API public.
1693
343bfdd3 16942010-07-08 - ce1cd1c - lavu 50.21.0 - pixdesc.h
52706b95
SS
1695 Rename read/write_line() to av_read/write_image_line().
1696
343bfdd3 16972010-07-07 - 4d508e4 - lavfi 1.21.0 - avfilter_copy_picref_props()
16400da6 1698 Add avfilter_copy_picref_props().
52706b95 1699
343bfdd3 17002010-07-03 - 2d525ef - lavc 52.79.0
16400da6
SS
1701 Add FF_COMPLIANCE_UNOFFICIAL and change all instances of
1702 FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL.
34171e87 1703
343bfdd3 17042010-07-02 - 89eec74 - lavu 50.20.0 - lfg.h
13088d27
RP
1705 Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through
1706 lfg.h.
1707
343bfdd3 17082010-06-28 - a52e2c3 - lavfi 1.20.1 - av_parse_color()
6951515c
SS
1709 Extend av_parse_color() syntax, make it accept an alpha value specifier and
1710 set the alpha value to 255 by default.
1711
343bfdd3 17122010-06-22 - 735cf6b - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class
16400da6 1713 Add priv_data_size and priv_data_class to URLProtocol.
58cc11c7 1714
343bfdd3 17152010-06-22 - ffbb289 - lavf 52.70.0 - url_alloc(), url_connect()
16400da6 1716 Add url_alloc() and url_connect().
4636f115 1717
343bfdd3 17182010-06-22 - 9b07a2d - lavf 52.69.0 - av_register_protocol2()
16400da6 1719 Add av_register_protocol2(), deprecating av_register_protocol().
6c4cbc8d 1720
343bfdd3 17212010-06-09 - 65db058 - lavu 50.19.0 - av_compare_mod()
276b45af
SS
1722 Add av_compare_mod() to libavutil/mathematics.h.
1723
343bfdd3 17242010-06-05 - 0b99215 - lavu 50.18.0 - eval API
4cd5100c
SS
1725 Make the eval API public.
1726
343bfdd3 17272010-06-04 - 31878fc - lavu 50.17.0 - AV_BASE64_SIZE
6532c6f9
SS
1728 Add AV_BASE64_SIZE() macro.
1729
343bfdd3 17302010-06-02 - 7e566bb - lavc 52.73.0 - av_get_codec_tag_string()
2a00992f
SS
1731 Add av_get_codec_tag_string().
1732
343bfdd3 17332010-06-01 - 2b99142 - lsws 0.11.0 - convertPalette API
16400da6 1734 Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24().
7f464a0a 1735
343bfdd3 17362010-05-26 - 93ebfee - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL
fe9c2007 1737 Add CODEC_CAP_EXPERIMENTAL flag.
95c851e2 1738 NOTE: this was backported to 0.6
fe9c2007 1739
343bfdd3 17402010-05-23 - 9977863 - lavu 50.16.0 - av_get_random_seed()
16400da6 1741 Add av_get_random_seed().
cca68a54 1742
343bfdd3 17432010-05-18 - 796ac23 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT
16400da6 1744 Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags.
95c851e2 1745 NOTE: this was backported to 0.6
b724102a 1746
343bfdd3 17472010-05-09 - b6bc205 - lavfi 1.20.0 - AVFilterPicRef
fc25c049
SS
1748 Add interlaced and top_field_first fields to AVFilterPicRef.
1749
95c851e2
AK
1750------------------------------8<-------------------------------------
1751 0.6 branch was cut here
1752----------------------------->8--------------------------------------
1753
343bfdd3 17542010-05-01 - 8e2ee18 - lavf 52.62.0 - probe function
d0eb2b78
RD
1755 Add av_probe_input_format2 to API, it allows ignoring probe
1756 results below given score and returns the actual probe score.
1757
343bfdd3 17582010-04-01 - 3dd6180 - lavf 52.61.0 - metadata API
3dd6180f
AK
1759 Add a flag for av_metadata_set2() to disable overwriting of
1760 existing tags.
1761
343bfdd3 17622010-04-01 - 0fb49b5 - lavc 52.66.0
16400da6 1763 Add avcodec_get_edge_width().
0fb49b59 1764
343bfdd3 17652010-03-31 - d103218 - lavc 52.65.0
c846a984
RB
1766 Add avcodec_copy_context().
1767
343bfdd3 17682010-03-31 - 1a70d12 - lavf 52.60.0 - av_match_ext()
e33f1fa0
SS
1769 Make av_match_ext() public.
1770
343bfdd3 17712010-03-31 - 1149150 - lavu 50.14.0 - AVMediaType
fc8b1075
SS
1772 Move AVMediaType enum from libavcodec to libavutil.
1773
343bfdd3 17742010-03-31 - 72415b2 - lavc 52.64.0 - AVMediaType
fc8b1075
SS
1775 Define AVMediaType enum, and use it instead of enum CodecType, which
1776 is deprecated and will be dropped at the next major bump.
1777
343bfdd3 17782010-03-25 - 8795823 - lavu 50.13.0 - av_strerror()
82ba847e
SS
1779 Implement av_strerror().
1780
343bfdd3 17812010-03-23 - e1484eb - lavc 52.60.0 - av_dct_init()
16400da6 1782 Support DCT-I and DST-I.
e1484ebe 1783
343bfdd3 17842010-03-15 - b8819c8 - lavf 52.56.0 - AVFormatContext.start_time_realtime
a5b3d34b
MS
1785 Add AVFormatContext.start_time_realtime field.
1786
343bfdd3 17872010-03-13 - 5bb5c1d - lavfi 1.18.0 - AVFilterPicRef.pos
8955a324
SS
1788 Add AVFilterPicRef.pos field.
1789
343bfdd3 17902010-03-13 - 60c144f - lavu 50.12.0 - error.h
99de2b59
SS
1791 Move error code definitions from libavcodec/avcodec.h to
1792 the new public header libavutil/error.h.
1793
343bfdd3 17942010-03-07 - c709483 - lavc 52.56.0 - avfft.h
c7094831
MR
1795 Add public FFT interface.
1796
343bfdd3 17972010-03-06 - ac6ef86 - lavu 50.11.0 - av_stristr()
c18fb631
SS
1798 Add av_stristr().
1799
343bfdd3 18002010-03-03 - 4b83fc0 - lavu 50.10.0 - av_tree_enumerate()
4b83fc0f
VS
1801 Add av_tree_enumerate().
1802
343bfdd3 18032010-02-07 - b687c1a - lavu 50.9.0 - av_compare_ts()
fbef7a76
SS
1804 Add av_compare_ts().
1805
343bfdd3 18062010-02-05 - 3f3dc76 - lsws 0.10.0 - sws_getCoefficients()
e49407ee
SS
1807 Add sws_getCoefficients().
1808
343bfdd3 18092010-02-01 - ca76a11 - lavf 52.50.0 - metadata API
ca76a119
AK
1810 Add a list of generic tag names, change 'author' -> 'artist',
1811 'year' -> 'date'.
1812
343bfdd3 18132010-01-30 - 80a07f6 - lavu 50.8.0 - av_get_pix_fmt()
14ace37e
SS
1814 Add av_get_pix_fmt().
1815
343bfdd3 18162010-01-21 - 01cc47d - lsws 0.9.0 - sws_scale()
e49407ee
SS
1817 Change constness attributes of sws_scale() parameters.
1818
343bfdd3 18192010-01-10 - 3fb8e77 - lavfi 1.15.0 - avfilter_graph_config_links()
2d187e23
SS
1820 Add a log_ctx parameter to avfilter_graph_config_links().
1821
343bfdd3 18222010-01-07 - 8e9767f - lsws 0.8.0 - sws_isSupported{In,Out}put()
1c790092 1823 Add sws_isSupportedInput() and sws_isSupportedOutput() functions.
715cff9a 1824
343bfdd3 18252010-01-06 - c1d662f - lavfi 1.14.0 - avfilter_add_colorspace()
1e289b09
SS
1826 Change the avfilter_add_colorspace() signature, make it accept an
1827 (AVFilterFormats **) rather than an (AVFilterFormats *) as before.
1828
343bfdd3 18292010-01-03 - 4fd1f18 - lavfi 1.13.0 - avfilter_add_colorspace()
a2b16627
SS
1830 Add avfilter_add_colorspace().
1831
343bfdd3 18322010-01-02 - 8eb631f - lavf 52.46.0 - av_match_ext()
79c2f2d3
SS
1833 Add av_match_ext(), it should be used in place of match_ext().
1834
343bfdd3 18352010-01-01 - a1f547b - lavf 52.45.0 - av_guess_format()
bb1a8793
SS
1836 Add av_guess_format(), it should be used in place of guess_format().
1837
343bfdd3 18382009-12-13 - a181981 - lavf 52.43.0 - metadata API
16400da6
SS
1839 Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and
1840 AV_METADATA_DONT_STRDUP_VAL.
b8f11ec8 1841
343bfdd3 18422009-12-13 - 277c733 - lavu 50.7.0 - avstring.h API
f69d394f 1843 Add av_d2str().
60a92a77 1844
343bfdd3 18452009-12-13 - 02b398e - lavc 52.42.0 - AVStream
f69d394f 1846 Add avg_frame_rate.
c3d15329 1847
343bfdd3 18482009-12-12 - 3ba69a1 - lavu 50.6.0 - av_bmg_next()
54c24216
SS
1849 Introduce the av_bmg_next() function.
1850
343bfdd3 18512009-12-05 - a13a543 - lavfi 1.12.0 - avfilter_draw_slice()
11f6d098
SS
1852 Add a slice_dir parameter to avfilter_draw_slice().
1853
343bfdd3 18542009-11-26 - 4cc3f6a - lavfi 1.11.0 - AVFilter
7cab9a66
SS
1855 Remove the next field from AVFilter, this is not anymore required.
1856
343bfdd3 18572009-11-25 - 1433c4a - lavfi 1.10.0 - avfilter_next()
b5a683eb
SS
1858 Introduce the avfilter_next() function.
1859
343bfdd3 18602009-11-25 - 86a60fa - lavfi 1.9.0 - avfilter_register()
73e2247d
SS
1861 Change the signature of avfilter_register() to make it return an
1862 int. This is required since now the registration operation may fail.
1863
343bfdd3 18642009-11-25 - 74a0059 - lavu 50.5.0 - pixdesc.h API
d0df2fcc
SS
1865 Make the pixdesc.h API public.
1866
343bfdd3 18672009-10-27 - 243110f - lavfi 1.5.0 - AVFilter.next
290d4a44
SS
1868 Add a next field to AVFilter, this is used for simplifying the
1869 registration and management of the registered filters.
1870
343bfdd3 18712009-10-23 - cccd292 - lavfi 1.4.1 - AVFilter.description
54116673 1872 Add a description field to AVFilter.
01537e9f 1873
343bfdd3 18742009-10-19 - 6b5dc05 - lavfi 1.3.0 - avfilter_make_format_list()
027e85d8
SS
1875 Change the interface of avfilter_make_format_list() from
1876 avfilter_make_format_list(int n, ...) to
1877 avfilter_make_format_list(enum PixelFormat *pix_fmts).
1878
343bfdd3 18792009-10-18 - 0eb4ff9 - lavfi 1.0.0 - avfilter_get_video_buffer()
c3b27a3d
SS
1880 Make avfilter_get_video_buffer() recursive and add the w and h
1881 parameters to it.
1882
343bfdd3 18832009-10-07 - 46c40e4 - lavfi 0.5.1 - AVFilterPic
227d1b98 1884 Add w and h fields to AVFilterPic.
04670366 1885
343bfdd3 18862009-06-22 - 92400be - lavf 52.34.1 - AVFormatContext.packet_size
b394438e
RB
1887 This is now an unsigned int instead of a signed int.
1888
343bfdd3 18892009-06-19 - a4276ba - lavc 52.32.0 - AVSubtitle.pts
227d1b98
DB
1890 Add a pts field to AVSubtitle which gives the subtitle packet pts
1891 in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will
4bbe788a
RD
1892 not work right without this.
1893
343bfdd3 18942009-06-03 - 8f3f2e0 - lavc 52.30.2 - AV_PKT_FLAG_KEY
227d1b98 1895 PKT_FLAG_KEY has been deprecated and will be dropped at the next
8f3f2e06
RD
1896 major version. Use AV_PKT_FLAG_KEY instead.
1897
343bfdd3 18982009-06-01 - f988ce6 - lavc 52.30.0 - av_lockmgr_register()
f988ce6c
1899 av_lockmgr_register() can be used to register a callback function
1900 that lavc (and in the future, libraries that depend on lavc) can use
1901 to implement mutexes. The application should provide a callback function
227d1b98
DB
1902 that implements the AV_LOCK_* operations described in avcodec.h.
1903 When the lock manager is registered, FFmpeg is guaranteed to behave
1904 correctly in a multi-threaded application.
f988ce6c 1905
343bfdd3 19062009-04-30 - ce1d9c8 - lavc 52.28.0 - av_free_packet()
52bcc8e1
RP
1907 av_free_packet() is no longer an inline function. It is now exported.
1908
343bfdd3 19092009-04-11 - 80d403f - lavc 52.25.0 - deprecate av_destruct_packet_nofree()
0c13bbf5
RD
1910 Please use NULL instead. This has been supported since r16506
1911 (lavf > 52.23.1, lavc > 52.10.0).
1912
343bfdd3 19132009-04-07 - 7a00bba - lavc 52.23.0 - avcodec_decode_video/audio/subtitle
2851d225
RB
1914 The old decoding functions are deprecated, all new code should use the
1915 new functions avcodec_decode_video2(), avcodec_decode_audio3() and
1916 avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt
1917 argument instead of a const uint8_t *buf / int buf_size pair.
1918
343bfdd3 19192009-04-03 - 7b09db3 - lavu 50.3.0 - av_fifo_space()
b1516707
SS
1920 Introduce the av_fifo_space() function.
1921
343bfdd3 19222009-04-02 - fabd246 - lavc 52.23.0 - AVPacket
dd3bbb49
SS
1923 Move AVPacket declaration from libavformat/avformat.h to
1924 libavcodec/avcodec.h.
1925
343bfdd3 19262009-03-22 - 6e08ca9 - lavu 50.2.0 - RGB32 pixel formats
227d1b98
DB
1927 Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR,
1928 PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values.
1929 Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and
1930 PIX_FMT_BGR32_1 are now macros.
1931 avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases.
f3370e14 1932 Re-sort the enum PixelFormat list accordingly.
5a43bbc3
SS
1933 This change breaks API/ABI backward compatibility.
1934
343bfdd3 19352009-03-22 - f82674e - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants
dd3bbb49
SS
1936 Add the enum PixelFormat values:
1937 PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE,
1938 PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE.
1939
343bfdd3 19402009-03-21 - ee6624e - lavu 50.0.0 - av_random*
c8f742ca
DB
1941 The Mersenne Twister PRNG implemented through the av_random* functions
1942 was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions
1943 instead.
1944
343bfdd3 19452009-03-08 - 41dd680 - lavu 50.0.0 - AVFifoBuffer
889cdae8
DB
1946 av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped
1947 and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write
1948 and av_fifo_realloc2.
1949 In addition, the order of the function arguments of av_fifo_generic_read
227d1b98 1950 was changed to match av_fifo_generic_write.
889cdae8
DB
1951 The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by
1952 applications, they may not use sizeof() or directly access members.
22d4f236 1953
343bfdd3 19542009-03-01 - ec26457 - lavf 52.31.0 - Generic metadata API
889cdae8
DB
1955 Introduce a new metadata API (see av_metadata_get() and friends).
1956 The old API is now deprecated and should not be used anymore. This especially
429d6b21 1957 includes the following structure fields:
38ce707e
AJ
1958 - AVFormatContext.title
1959 - AVFormatContext.author
1960 - AVFormatContext.copyright
1961 - AVFormatContext.comment
1962 - AVFormatContext.album
1963 - AVFormatContext.year
1964 - AVFormatContext.track
1965 - AVFormatContext.genre
1966 - AVStream.language
1967 - AVStream.filename
1968 - AVProgram.provider_name
1969 - AVProgram.name
1970 - AVChapter.title