Commit | Line | Data |
---|---|---|
06d19718 RD |
1 | Never assume the API of libav* to be stable unless at least 1 week has passed since |
2 | the last major version increase. | |
3 | The last version increases were: | |
4 | libavcodec: ? | |
a33e0365 | 5 | libavcore: 2010-07-21 |
06d19718 | 6 | libavdevice: ? |
c3b27a3d | 7 | libavfilter: 2009-10-18 |
06d19718 RD |
8 | libavformat: ? |
9 | libpostproc: ? | |
10 | libswscale: ? | |
11 | libavutil: 2009-03-08 | |
12 | ||
13 | ||
14 | API changes, most recent first: | |
15 | ||
e11b104a SS |
16 | 2010-08-07 - r24728 - lavfi 1.28.0 - AVFilterBuffer |
17 | Move format field from AVFilterBuffer to AVFilterPicRef. | |
18 | ||
71cb41db SS |
19 | 2010-08-06 - r24709 - lavcore 0.3.0 - av_check_image_size() |
20 | Deprecate avcodec_check_dimensions() in favor of the function | |
21 | av_check_image_size() defined in libavcore/imgutils.h. | |
22 | ||
92dd4959 SS |
23 | 2010-07-30 - r24592 - lavfi 1.27.0 - AVFilterBuffer |
24 | Increase size of the arrays AVFilterBuffer.data and | |
25 | AVFilterBuffer.linesize from 4 to 8. | |
26 | ||
27 | This change breaks libavfilter ABI. | |
28 | ||
3dec10cd SS |
29 | 2010-07-29 - r24583 - lavcore 0.2.0 - imgutils.h |
30 | Add functions av_fill_image_linesizes() and | |
31 | av_fill_image_pointers(), declared in libavcore/imgutils.h. | |
32 | ||
fa8ead00 SS |
33 | 2010-07-27 - r24518 - lavcore 0.1.0 - parseutils.h |
34 | Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate() | |
35 | defined in libavcodec in favor of the newly added functions | |
36 | av_parse_video_size() and av_parse_video_rate() declared in | |
37 | libavcore/parseutils.h. | |
38 | ||
c257c752 SS |
39 | 2010-07-23 - r24439 - lavu 50.23.0 - mathematics.h |
40 | Add the M_PHI constant definition. | |
41 | ||
73642926 SS |
42 | 2010-07-22 - r24424 - lavfi 1.26.0 - media format generalization |
43 | Add a type field to AVFilterLink. | |
44 | ||
45 | Change the field types: | |
46 | enum PixelFormat format -> int format in AVFilterBuffer | |
47 | enum PixelFormat *formats -> int *formats in AVFilterFormats | |
48 | enum PixelFormat *format -> int format in AVFilterLink | |
49 | ||
50 | Change the function signatures: | |
51 | AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); -> | |
52 | AVFilterFormats *avfilter_make_format_list(const int *fmts); | |
53 | ||
54 | int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); -> | |
55 | int avfilter_add_format (AVFilterFormats **avff, int fmt); | |
56 | ||
57 | AVFilterFormats *avfilter_all_colorspaces(void); -> | |
58 | AVFilterFormats *avfilter_all_formats (enum AVMediaType type); | |
59 | ||
60 | This change breaks libavfilter API/ABI. | |
61 | ||
a33e0365 SS |
62 | 2010-07-21 - r24393 - lavcore 0.0.0 |
63 | Add libavcore. | |
64 | ||
8e9d9308 SS |
65 | 2010-07-17 - r24291 - lavfi 1.25.0 - AVFilterBuffer |
66 | Remove w and h fields from AVFilterBuffer. | |
67 | ||
9840147d SS |
68 | 2010-07-17 - r24284 - lavfi 1.24.0 - AVFilterBuffer |
69 | Rename AVFilterPic to AVFilterBuffer. | |
70 | ||
57fe80fe MS |
71 | 2010-07-17 - r24278 - lavf 52.74.0 - url_fskip() |
72 | Make url_fskip() return an int error code instead of void. | |
73 | ||
37497979 | 74 | 2010-07-11 - r24199 - lavc 52.83.0 |
6f5ac9c1 | 75 | Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields. |
23940f14 JR |
76 | Add AVLPCType enum. |
77 | Deprecate AVCodecContext.use_lpc. | |
78 | ||
e1d7c883 RD |
79 | 2010-07-11 - r24185 - lavc 52.82.0 - avsubtitle_free() |
80 | Add a function for free the contents of a AVSubtitle generated by | |
81 | avcodec_decode_subtitle. | |
82 | ||
617d56ca SS |
83 | 2010-07-11 - r24174 - lavu 50.22.0 - bswap.h and intreadwrite.h |
84 | Make the bswap.h and intreadwrite.h API public. | |
85 | ||
52706b95 SS |
86 | 2010-07-08 - r24101 - lavu 50.21.0 - pixdesc.h |
87 | Rename read/write_line() to av_read/write_image_line(). | |
88 | ||
89 | 2010-07-07 - r24091 - lavfi 1.21.0 - avfilter_copy_picref_props() | |
16400da6 | 90 | Add avfilter_copy_picref_props(). |
52706b95 | 91 | |
34171e87 | 92 | 2010-07-03 - r24021 - lavc 52.79.0 |
16400da6 SS |
93 | Add FF_COMPLIANCE_UNOFFICIAL and change all instances of |
94 | FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL. | |
34171e87 | 95 | |
13088d27 RP |
96 | 2010-07-02 - r23985 - lavu 50.20.0 - lfg.h |
97 | Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through | |
98 | lfg.h. | |
99 | ||
6951515c SS |
100 | 2010-06-28 - r23835 - lavfi 1.20.1 - av_parse_color() |
101 | Extend av_parse_color() syntax, make it accept an alpha value specifier and | |
102 | set the alpha value to 255 by default. | |
103 | ||
58cc11c7 | 104 | 2010-06-22 - r23706 - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class |
16400da6 | 105 | Add priv_data_size and priv_data_class to URLProtocol. |
58cc11c7 | 106 | |
4636f115 | 107 | 2010-06-22 - r23704 - lavf 52.70.0 - url_alloc(), url_connect() |
16400da6 | 108 | Add url_alloc() and url_connect(). |
4636f115 | 109 | |
16400da6 SS |
110 | 2010-06-22 - r23702 - lavf 52.69.0 - av_register_protocol2() |
111 | Add av_register_protocol2(), deprecating av_register_protocol(). | |
6c4cbc8d | 112 | |
276b45af SS |
113 | 2010-06-09 - r23551 - lavu 50.19.0 - av_compare_mod() |
114 | Add av_compare_mod() to libavutil/mathematics.h. | |
115 | ||
4cd5100c SS |
116 | 2010-06-05 - r23485 - lavu 50.18.0 - eval API |
117 | Make the eval API public. | |
118 | ||
6532c6f9 SS |
119 | 2010-06-04 - r23461 - lavu 50.17.0 - AV_BASE64_SIZE |
120 | Add AV_BASE64_SIZE() macro. | |
121 | ||
16400da6 | 122 | 2010-06-02 - r23421 - lavc 52.73.0 - av_get_codec_tag_string() |
2a00992f SS |
123 | Add av_get_codec_tag_string(). |
124 | ||
7f464a0a | 125 | 2010-06-01 - r31301 - lsws 0.11.0 - convertPalette API |
16400da6 | 126 | Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24(). |
7f464a0a | 127 | |
fe9c2007 SS |
128 | 2010-05-26 - r23334 - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL |
129 | Add CODEC_CAP_EXPERIMENTAL flag. | |
130 | ||
16400da6 SS |
131 | 2010-05-23 - r23255 - lavu 50.16.0 - av_get_random_seed() |
132 | Add av_get_random_seed(). | |
cca68a54 | 133 | |
b724102a | 134 | 2010-05-18 - r23161 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT |
16400da6 | 135 | Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags. |
b724102a | 136 | |
fc25c049 SS |
137 | 2010-05-09 - r23066 - lavfi 1.20.0 - AVFilterPicRef |
138 | Add interlaced and top_field_first fields to AVFilterPicRef. | |
139 | ||
d0eb2b78 RD |
140 | 2010-05-01 - r23002 - lavf 52.62.0 - probe function |
141 | Add av_probe_input_format2 to API, it allows ignoring probe | |
142 | results below given score and returns the actual probe score. | |
143 | ||
2100348c | 144 | 2010-04-01 - r22806 - lavf 52.61.0 - metadata API |
3dd6180f AK |
145 | Add a flag for av_metadata_set2() to disable overwriting of |
146 | existing tags. | |
147 | ||
0fb49b59 | 148 | 2010-04-01 - r22753 - lavc 52.66.0 |
16400da6 | 149 | Add avcodec_get_edge_width(). |
0fb49b59 | 150 | |
c846a984 RB |
151 | 2010-03-31 - r22750 - lavc 52.65.0 |
152 | Add avcodec_copy_context(). | |
153 | ||
e33f1fa0 SS |
154 | 2010-03-31 - r22748 - lavf 52.60.0 - av_match_ext() |
155 | Make av_match_ext() public. | |
156 | ||
fc8b1075 SS |
157 | 2010-03-31 - r22736 - lavu 50.14.0 - AVMediaType |
158 | Move AVMediaType enum from libavcodec to libavutil. | |
159 | ||
160 | 2010-03-31 - r22735 - lavc 52.64.0 - AVMediaType | |
161 | Define AVMediaType enum, and use it instead of enum CodecType, which | |
162 | is deprecated and will be dropped at the next major bump. | |
163 | ||
82ba847e SS |
164 | 2010-03-25 - r22684 - lavu 50.13.0 - av_strerror() |
165 | Implement av_strerror(). | |
166 | ||
69087742 | 167 | 2010-03-23 - r22649 - lavc 52.60.0 - av_dct_init() |
16400da6 | 168 | Support DCT-I and DST-I. |
e1484ebe | 169 | |
a5b3d34b MS |
170 | 2010-03-15 - r22540 - lavf 52.56.0 - AVFormatContext.start_time_realtime |
171 | Add AVFormatContext.start_time_realtime field. | |
172 | ||
8955a324 SS |
173 | 2010-03-13 - r22506 - lavfi 1.18.0 - AVFilterPicRef.pos |
174 | Add AVFilterPicRef.pos field. | |
175 | ||
99de2b59 SS |
176 | 2010-03-13 - r22501 - lavu 50.12.0 - error.h |
177 | Move error code definitions from libavcodec/avcodec.h to | |
178 | the new public header libavutil/error.h. | |
179 | ||
c7094831 MR |
180 | 2010-03-07 - r22291 - lavc 52.56.0 - avfft.h |
181 | Add public FFT interface. | |
182 | ||
c18fb631 SS |
183 | 2010-03-06 - r22251 - lavu 50.11.0 - av_stristr() |
184 | Add av_stristr(). | |
185 | ||
4b83fc0f VS |
186 | 2010-03-03 - r22174 - lavu 50.10.0 - av_tree_enumerate() |
187 | Add av_tree_enumerate(). | |
188 | ||
fbef7a76 SS |
189 | 2010-02-07 - r21673 - lavu 50.9.0 - av_compare_ts() |
190 | Add av_compare_ts(). | |
191 | ||
e49407ee SS |
192 | 2010-02-05 - r30513 - lsws 0.10.0 - sws_getCoefficients() |
193 | Add sws_getCoefficients(). | |
194 | ||
ca76a119 AK |
195 | 2010-02-01 - r21587 - lavf 52.50.0 - metadata API |
196 | Add a list of generic tag names, change 'author' -> 'artist', | |
197 | 'year' -> 'date'. | |
198 | ||
14ace37e SS |
199 | 2010-01-30 - r21545 - lavu 50.8.0 - av_get_pix_fmt() |
200 | Add av_get_pix_fmt(). | |
201 | ||
16400da6 | 202 | 2010-01-21 - r30381 - lsws 0.9.0 - sws_scale() |
e49407ee SS |
203 | Change constness attributes of sws_scale() parameters. |
204 | ||
2d187e23 SS |
205 | 2010-01-10 - r21121 - lavfi 1.15.0 - avfilter_graph_config_links() |
206 | Add a log_ctx parameter to avfilter_graph_config_links(). | |
207 | ||
16400da6 | 208 | 2010-01-07 - r30236 - lsws 0.8.0 - sws_isSupported{In,Out}put() |
1c790092 | 209 | Add sws_isSupportedInput() and sws_isSupportedOutput() functions. |
715cff9a | 210 | |
1e289b09 SS |
211 | 2010-01-06 - r21035 - lavfi 1.14.0 - avfilter_add_colorspace() |
212 | Change the avfilter_add_colorspace() signature, make it accept an | |
213 | (AVFilterFormats **) rather than an (AVFilterFormats *) as before. | |
214 | ||
a2b16627 SS |
215 | 2010-01-03 - r21007 - lavfi 1.13.0 - avfilter_add_colorspace() |
216 | Add avfilter_add_colorspace(). | |
217 | ||
79c2f2d3 SS |
218 | 2010-01-02 - r20998 - lavf 52.46.0 - av_match_ext() |
219 | Add av_match_ext(), it should be used in place of match_ext(). | |
220 | ||
bb1a8793 SS |
221 | 2010-01-01 - r20991 - lavf 52.45.0 - av_guess_format() |
222 | Add av_guess_format(), it should be used in place of guess_format(). | |
223 | ||
b8f11ec8 | 224 | 2009-12-13 - r20834 - lavf 52.43.0 - metadata API |
16400da6 SS |
225 | Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and |
226 | AV_METADATA_DONT_STRDUP_VAL. | |
b8f11ec8 | 227 | |
60a92a77 | 228 | 2009-12-13 - r20829 - lavu 50.7.0 - avstring.h API |
f69d394f | 229 | Add av_d2str(). |
60a92a77 | 230 | |
c3d15329 | 231 | 2009-12-13 - r20826 - lavc 52.42.0 - AVStream |
f69d394f | 232 | Add avg_frame_rate. |
c3d15329 | 233 | |
54c24216 SS |
234 | 2009-12-12 - r20808 - lavu 50.6.0 - av_bmg_next() |
235 | Introduce the av_bmg_next() function. | |
236 | ||
11f6d098 SS |
237 | 2009-12-05 - r20734 - lavfi 1.12.0 - avfilter_draw_slice() |
238 | Add a slice_dir parameter to avfilter_draw_slice(). | |
239 | ||
7cab9a66 SS |
240 | 2009-11-26 - r20611 - lavfi 1.11.0 - AVFilter |
241 | Remove the next field from AVFilter, this is not anymore required. | |
242 | ||
b5a683eb SS |
243 | 2009-11-25 - r20607 - lavfi 1.10.0 - avfilter_next() |
244 | Introduce the avfilter_next() function. | |
245 | ||
73e2247d SS |
246 | 2009-11-25 - r20605 - lavfi 1.9.0 - avfilter_register() |
247 | Change the signature of avfilter_register() to make it return an | |
248 | int. This is required since now the registration operation may fail. | |
249 | ||
d0df2fcc SS |
250 | 2009-11-25 - r20603 - lavu 50.5.0 - pixdesc.h API |
251 | Make the pixdesc.h API public. | |
252 | ||
290d4a44 SS |
253 | 2009-10-27 - r20385 - lavfi 1.5.0 - AVFilter.next |
254 | Add a next field to AVFilter, this is used for simplifying the | |
255 | registration and management of the registered filters. | |
256 | ||
54116673 SS |
257 | 2009-10-23 - r20356 - lavfi 1.4.1 - AVFilter.description |
258 | Add a description field to AVFilter. | |
01537e9f | 259 | |
027e85d8 SS |
260 | 2009-10-19 - r20302 - lavfi 1.3.0 - avfilter_make_format_list() |
261 | Change the interface of avfilter_make_format_list() from | |
262 | avfilter_make_format_list(int n, ...) to | |
263 | avfilter_make_format_list(enum PixelFormat *pix_fmts). | |
264 | ||
c3b27a3d SS |
265 | 2009-10-18 - r20272 - lavfi 1.0.0 - avfilter_get_video_buffer() |
266 | Make avfilter_get_video_buffer() recursive and add the w and h | |
267 | parameters to it. | |
268 | ||
04670366 | 269 | 2009-10-07 - r20189 - lavfi 0.5.1 - AVFilterPic |
227d1b98 | 270 | Add w and h fields to AVFilterPic. |
04670366 | 271 | |
b394438e RB |
272 | 2009-06-22 - r19250 - lavf 52.34.1 - AVFormatContext.packet_size |
273 | This is now an unsigned int instead of a signed int. | |
274 | ||
4bbe788a | 275 | 2009-06-19 - r19222 - lavc 52.32.0 - AVSubtitle.pts |
227d1b98 DB |
276 | Add a pts field to AVSubtitle which gives the subtitle packet pts |
277 | in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will | |
4bbe788a RD |
278 | not work right without this. |
279 | ||
8f3f2e06 | 280 | 2009-06-03 - r19078 - lavc 52.30.2 - AV_PKT_FLAG_KEY |
227d1b98 | 281 | PKT_FLAG_KEY has been deprecated and will be dropped at the next |
8f3f2e06 RD |
282 | major version. Use AV_PKT_FLAG_KEY instead. |
283 | ||
f988ce6c AÖ |
284 | 2009-06-01 - r19025 - lavc 52.30.0 - av_lockmgr_register() |
285 | av_lockmgr_register() can be used to register a callback function | |
286 | that lavc (and in the future, libraries that depend on lavc) can use | |
287 | to implement mutexes. The application should provide a callback function | |
227d1b98 DB |
288 | that implements the AV_LOCK_* operations described in avcodec.h. |
289 | When the lock manager is registered, FFmpeg is guaranteed to behave | |
290 | correctly in a multi-threaded application. | |
f988ce6c | 291 | |
16400da6 | 292 | 2009-04-30 - r18719 - lavc 52.28.0 - av_free_packet() |
52bcc8e1 RP |
293 | av_free_packet() is no longer an inline function. It is now exported. |
294 | ||
16400da6 | 295 | 2009-04-11 - r18431 - lavc 52.25.0 - deprecate av_destruct_packet_nofree() |
0c13bbf5 RD |
296 | Please use NULL instead. This has been supported since r16506 |
297 | (lavf > 52.23.1, lavc > 52.10.0). | |
298 | ||
2851d225 RB |
299 | 2009-04-07 - r18351 - lavc 52.23.0 - avcodec_decode_video/audio/subtitle |
300 | The old decoding functions are deprecated, all new code should use the | |
301 | new functions avcodec_decode_video2(), avcodec_decode_audio3() and | |
302 | avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt | |
303 | argument instead of a const uint8_t *buf / int buf_size pair. | |
304 | ||
16400da6 | 305 | 2009-04-03 - r18321 - lavu 50.3.0 - av_fifo_space() |
b1516707 SS |
306 | Introduce the av_fifo_space() function. |
307 | ||
dd3bbb49 SS |
308 | 2009-04-02 - r18317 - lavc 52.23.0 - AVPacket |
309 | Move AVPacket declaration from libavformat/avformat.h to | |
310 | libavcodec/avcodec.h. | |
311 | ||
5a43bbc3 | 312 | 2009-03-22 - r18163 - lavu 50.2.0 - RGB32 pixel formats |
227d1b98 DB |
313 | Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR, |
314 | PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values. | |
315 | Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and | |
316 | PIX_FMT_BGR32_1 are now macros. | |
317 | avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases. | |
f3370e14 | 318 | Re-sort the enum PixelFormat list accordingly. |
5a43bbc3 SS |
319 | This change breaks API/ABI backward compatibility. |
320 | ||
dd3bbb49 SS |
321 | 2009-03-22 - r18133 - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants |
322 | Add the enum PixelFormat values: | |
323 | PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE, | |
324 | PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE. | |
325 | ||
b4656e6b | 326 | 2009-03-21 - r18116 - lavu 50.0.0 - av_random* |
c8f742ca DB |
327 | The Mersenne Twister PRNG implemented through the av_random* functions |
328 | was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions | |
329 | instead. | |
330 | ||
889cdae8 DB |
331 | 2009-03-08 - r17869 - lavu 50.0.0 - AVFifoBuffer |
332 | av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped | |
333 | and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write | |
334 | and av_fifo_realloc2. | |
335 | In addition, the order of the function arguments of av_fifo_generic_read | |
227d1b98 | 336 | was changed to match av_fifo_generic_write. |
889cdae8 DB |
337 | The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by |
338 | applications, they may not use sizeof() or directly access members. | |
22d4f236 | 339 | |
889cdae8 DB |
340 | 2009-03-01 - r17682 - lavf 52.31.0 - Generic metadata API |
341 | Introduce a new metadata API (see av_metadata_get() and friends). | |
342 | The old API is now deprecated and should not be used anymore. This especially | |
429d6b21 | 343 | includes the following structure fields: |
38ce707e AJ |
344 | - AVFormatContext.title |
345 | - AVFormatContext.author | |
346 | - AVFormatContext.copyright | |
347 | - AVFormatContext.comment | |
348 | - AVFormatContext.album | |
349 | - AVFormatContext.year | |
350 | - AVFormatContext.track | |
351 | - AVFormatContext.genre | |
352 | - AVStream.language | |
353 | - AVStream.filename | |
354 | - AVProgram.provider_name | |
355 | - AVProgram.name | |
356 | - AVChapter.title |