APIchanges 100 KB
Newer Older
1
Never assume the API of libav* to be stable unless at least 1 month has passed
2
since the last major version increase or the API was added.
3

4
The last version increases were:
5 6 7 8 9
libavcodec:    2015-08-28
libavdevice:   2015-08-28
libavfilter:   2015-08-28
libavformat:   2015-08-28
libavresample: 2015-08-28
10 11
libpostproc:   2015-08-28
libswresample: 2015-08-28
12 13
libswscale:    2015-08-28
libavutil:     2015-08-28
14 15 16


API changes, most recent first:
17

18
2016-07-09 - xxxxxxx / 90f469a - lavc 57.50.100 / 57.20.0 - avcodec.h
19 20
  Add FF_PROFILE_H264_MULTIVIEW_HIGH and FF_PROFILE_H264_STEREO_HIGH.

21 22 23 24 25 26 27 28
2016-06-30 - c1c7e0ab - lavf 57.41.100 - avformat.h
  Moved codecpar field from AVStream to the end of the struct, so that
  the following private fields are in the same location as in FFmpeg 3.0 (lavf 57.25.100).

2016-06-30 - 042fb69d - lavu 55.28.100 - frame.h
  Moved hw_frames_ctx field from AVFrame to the end of the struct, so that
  the following private fields are in the same location as in FFmpeg 3.0 (lavu 55.17.103).

29
2016-06-29 - 1a751455 - lavfi 6.47.100 - avfilter.h
30 31 32 33 34 35 36
  Fix accidental ABI breakage in AVFilterContext.
  ABI was broken in 8688d3a, lavfi 6.42.100 and released as ffmpeg 3.1.

  Because of this, ffmpeg and ffplay built against lavfi>=6.42.100 will not be
  compatible with lavfi>=6.47.100. Potentially also affects other users of
  libavfilter if they are using one of the affected fields.

37 38 39
-------- 8< --------- FFmpeg 3.1 was cut here -------- 8< ---------

2016-06-26 - 481f320 / 1c9e861 - lavu 55.27.100 / 55.13.0 - hwcontext.h
40 41
  Add av_hwdevice_ctx_create().

42
2016-06-26 - b95534b / e47b8bb - lavc 57.48.101 / 57.19.1 - avcodec.h
43 44
  Adjust values for JPEG 2000 profiles.

45
2016-06-23 - 5d75e46 / db7968b - lavf 57.40.100 / 57.7.0 - avio.h
46 47 48
  Add AVIODataMarkerType, write_data_type, ignore_boundary_point and
  avio_write_marker.

49
2016-06-23 - abb3cc4 / 0c4468d - lavu 55.26.100 / 55.12.0 - opt.h
50 51
  Add av_stereo3d_type_name() and av_stereo3d_from_name().

52
2016-06-22 - 3689efe / c46db38 - lavu 55.25.100 / 55.11.0 - hwcontext_dxva2.h
53 54
  Add new installed header with DXVA2-specific hwcontext definitions.

55
2016-04-27 - fb91871 - lavu 55.23.100 - log.h
56 57 58
  Add a new function av_log_format_line2() which returns number of bytes
  written to the target buffer.

59
2016-04-21 - 7fc329e - lavc 57.37.100 - avcodec.h
60 61 62 63
  Add a new audio/video encoding and decoding API with decoupled input
  and output -- avcodec_send_packet(), avcodec_receive_frame(),
  avcodec_send_frame() and avcodec_receive_packet().

64
2016-04-17 - af9cac1 / 33d1898 - lavc 57.35.100 / 57.15.0 - avcodec.h
65
  Add a new bitstream filtering API working with AVPackets.
66
  Deprecate the old bitstream filtering API.
67

68
2016-04-14 - 8688d3a / 07a844f - lavfi 6.42.100 / 6.3.0 - avfilter.h
69 70
  Add AVFilterContext.hw_device_ctx.

71
2016-04-14 - 28abb21 / 551c677 - lavu 55.22.100 / 55.9.0 - hwcontext_vaapi.h
72 73
  Add new installed header with VAAPI-specific hwcontext definitions.

74
2016-04-14 - afccfaf / b1f01e8 - lavu 55.21.100 / 55.7.0 - hwcontext.h
75 76
  Add AVHWFramesConstraints and associated API.

77
2016-04-11 - 6f69f7a / 9200514 - lavf 57.33.100 / 57.5.0 - avformat.h
78 79
  Add AVStream.codecpar, deprecate AVStream.codec.

80
2016-04-02 - e8a9b64 - lavu 55.20.100 - base64.h
81 82
  Add AV_BASE64_DECODE_SIZE(x) macro.

83 84 85
2016-xx-xx - lavc 57.33.100 / 57.14.0 - avcodec.h
  f9b1cf1 / 998e1b8 - Add AVCodecParameters and its related API.
  e6053b3 / a806834 - Add av_get_audio_frame_duration2().
86

87
2016-03-11 - 6d8ab35 - lavf/lavc 57.28.101
88 89 90
  Add requirement to bitstream filtering API that returned packets with
  size == 0 and side_data_elems == 0 are to be skipped by the caller.

91
2016-03-04 - 9362973 - lavf 57.28.100
92 93
  Add protocol blacklisting API

94
2016-02-28 - 4dd4d53 - lavc 57.27.101
95 96 97 98 99
  Validate AVFrame returned by get_buffer2 to have required
  planes not NULL and unused planes set to NULL as crashes
  and buffer overflow are possible with certain streams if
  that is not the case.

100
2016-02-26 - 30e7685 - lavc 57.27.100 - avcodec.h
101 102 103 104 105
  "flags2" decoding option now allows the flag "ass_ro_flush_noop" preventing
  the reset of the ASS ReadOrder field on flush. This affects the content of
  AVSubtitles.rects[N]->ass when "sub_text_format" is set to "ass" (see
  previous entry).

106
2016-02-26 - 2941282 - lavc 57.26.100 - avcodec.h
107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
  Add a "sub_text_format" subtitles decoding option allowing the values "ass"
  (recommended) and "ass_with_timings" (not recommended, deprecated, default).
  The default value for this option will change to "ass" at the next major
  libavcodec version bump.

  The current default is "ass_with_timings" for compatibility. This means that
  all subtitles text decoders currently still output ASS with timings printed
  as strings in the AVSubtitles.rects[N]->ass fields.

  Setting "sub_text_format" to "ass" allows a better timing accuracy (ASS
  timing is limited to a 1/100 time base, so this is relevant for any subtitles
  format needing a bigger one), ease timing adjustments, and prevents the need
  of removing the timing from the decoded string yourself. This form is also
  known as "the Matroska form". The timing information (start time, duration)
  can be found in the AVSubtitles fields.

123
2016-02-24 - 7e49cdd / 7b3214d0 - lavc 57.25.100 / 57.13.0 - avcodec.h
124 125
  Add AVCodecContext.hw_frames_ctx.

126 127 128
2016-02-24 - 1042402 / b3dd30d - lavfi 6.36.100 / 6.2.0 - avfilter.h
  avfilter.h - Add AVFilterLink.hw_frames_ctx.
  buffersrc.h - Add AVBufferSrcParameters and functions for handling it.
129

130
2016-02-23 - 14f7a3d - lavc 57.25.100
131 132
  Add AV_PKT_DATA_MPEGTS_STREAM_ID for exporting the MPEGTS stream ID.

133 134
2016-02-18 - 08acab8 - lavu 55.18.100 - audio_fifo.h
  Add av_audio_fifo_peek_at().
135

136 137 138
2016-xx-xx - lavu 55.18.100 / 55.6.0
  26abd51 / 721a4ef buffer.h - Add av_buffer_pool_init2().
  1a70878 / 89923e4 hwcontext.h - Add a new installed header hwcontext.h with a new API
139
                        for handling hwaccel frames.
140
  6992276 / ad884d1 hwcontext_cuda.h - Add a new installed header hwcontext_cuda.h with
141
                             CUDA-specific hwcontext definitions.
142
  d779d8d / a001ce3 hwcontext_vdpau.h - Add a new installed header hwcontext_vdpau.h with
143
                              VDPAU-specific hwcontext definitions.
144
  63c3e35 / 7bc780c pixfmt.h - Add AV_PIX_FMT_CUDA.
145

146 147
-------- 8< --------- FFmpeg 3.0 was cut here -------- 8< ---------

148
2016-02-10 - bc9a596 / 9f61abc - lavf 57.25.100 / 57.3.0 - avformat.h
149 150
  Add AVFormatContext.opaque, io_open and io_close, allowing custom IO

151
2016-02-01 - 1dba837 - lavf 57.24.100 - avformat.h, avio.h
152 153
  Add protocol_whitelist to AVFormatContext, AVIOContext

154
2016-01-31 - 66e9d2f - lavu 55.17.100 - frame.h
155 156
  Add AV_FRAME_DATA_GOP_TIMECODE for exporting MPEG1/2 GOP timecodes.

157
2016-01-01 - 5e8b053 / 2c68113 - lavc 57.21.100 / 57.12.0 - avcodec.h
158 159
  Add AVCodecDescriptor.profiles and avcodec_profile_name().

160
2015-12-28 - 1f9139b - lavf 57.21.100 - avformat.h
161 162
  Add automatic bitstream filtering; add av_apply_bitstream_filters()

163
2015-12-22 - 39a09e9 - lavfi 6.21.101 - avfilter.h
164 165 166 167
  Deprecate avfilter_link_set_closed().
  Applications are not supposed to mess with links,
  they should close the sinks.

168
2015-12-17 - lavc 57.18.100 / 57.11.0 - avcodec.h dirac.h
169 170
  xxxxxxx - Add av_packet_add_side_data().
  xxxxxxx - Add AVCodecContext.coded_side_data.
171
  xxxxxxx - Add AVCPBProperties API.
172 173
  xxxxxxx - Add a new public header dirac.h containing
            av_dirac_parse_sequence_header()
174

175
2015-12-11 - 676a93f - lavf 57.20.100 - avformat.h
176 177
  Add av_program_add_stream_index()

178
2015-11-29 - 93fb4a4 - lavc 57.16.101 - avcodec.h
179 180 181 182
  Deprecate rtp_callback without replacement, i.e. it won't be possible to
  get image slices before the full frame is encoded any more. The libavformat
  rtpenc muxer can still be used for RFC-2190 packetization.

183
2015-11-22 - fe20e34 - lavc 57.16.100 - avcodec.h
184 185 186
  Add AV_PKT_DATA_FALLBACK_TRACK for making fallback associations between
  streams.

187
2015-11-22 - ad317c9 - lavf 57.19.100 - avformat.h
188 189
  Add av_stream_new_side_data().

190
2015-11-22 - e12f403 - lavu 55.8.100 - xtea.h
191
    Add av_xtea_le_init and av_xtea_le_crypt
192

193 194 195
2015-11-18 - lavu 55.7.100 - mem.h
  Add av_fast_mallocz()

196
2015-10-29 - lavc 57.12.100 / 57.8.0 - avcodec.h
197 198 199 200
  xxxxxx - Deprecate av_free_packet(). Use av_packet_unref() as replacement,
           it resets the packet in a more consistent way.
  xxxxxx - Deprecate av_dup_packet(), it is a no-op for most cases.
           Use av_packet_ref() to make a non-refcounted AVPacket refcounted.
201 202
  xxxxxx - Add av_packet_alloc(), av_packet_clone(), av_packet_free().
           They match the AVFrame functions with the same name.
203

204
2015-10-27 - 1e477a9 - lavu 55.5.100 - cpu.h
205 206
  Add AV_CPU_FLAG_AESNI.

207
2015-10-22 - ee573b4 / a17a766 - lavc 57.9.100 / 57.5.0 - avcodec.h
208 209 210
  Add data and linesize array to AVSubtitleRect, to be used instead of
  the ones from the embedded AVPicture.

211
2015-10-22 - 866a417 / dc923bc - lavc 57.8.100 / 57.0.0 - qsv.h
212 213
  Add an API for allocating opaque surfaces.

214
2015-10-15 - 2c2d162 - lavf 57.4.100
215 216
  Remove the latm demuxer that was a duplicate of the loas demuxer.

217
2015-10-14 - b994788 / 11c5f43 - lavu 55.4.100 / 55.2.0 - dict.h
218 219 220
  Change return type of av_dict_copy() from void to int, so that a proper
  error code can be reported.

221
2015-09-29 - b01891a / 948f3c1 - lavc 57.3.100 / 57.2.0 - avcodec.h
222 223
  Change type of AVPacket.duration from int to int64_t.

224
2015-09-17 - 7c46f24 / e3d4784 - lavc 57.3.100 / 57.2.0 - d3d11va.h
225 226 227
  Add av_d3d11va_alloc_context(). This function must from now on be used for
  allocating AVD3D11VAContext.

228 229 230 231
2015-09-15 - lavf 57.2.100 - avformat.h
  probesize and max_analyze_duration switched to 64bit, both
  are only accessible through AVOptions

232 233 234 235
2015-09-15 - lavf 57.1.100 - avformat.h
  bit_rate was changed to 64bit, make sure you update any
  printf() or other type sensitive code

236 237 238 239
2015-09-15 - lavc 57.2.100 - avcodec.h
  bit_rate/rc_max_rate/rc_min_rate were changed to 64bit, make sure you update
  any printf() or other type sensitive code

240
2015-09-07 - lavu 55.0.100 / 55.0.0
241 242
  c734b34 / b8b5d82 - Change type of AVPixFmtDescriptor.flags from uint8_t to uint64_t.
  f53569a / 6b3ef7f - Change type of AVComponentDescriptor fields from uint16_t to int
243
            and drop bit packing.
244
  151aa2e / 2268db2 - Add step, offset, and depth to AVComponentDescriptor to replace
245
            the deprecated step_minus1, offset_plus1, and depth_minus1.
246

247 248
-------- 8< --------- FFmpeg 2.8 was cut here -------- 8< ---------

249
2015-08-27 - 1dd854e1 - lavc 56.58.100 - vaapi.h
250 251 252
  Deprecate old VA-API context (vaapi_context) fields that were only
  set and used by libavcodec. They are all managed internally now.

253
2015-08-19 - 9f8e57ef - lavu 54.31.100 - pixfmt.h
254 255 256 257 258 259
  Add a unique pixel format for VA-API (AV_PIX_FMT_VAAPI) that
  indicates the nature of the underlying storage: a VA surface. This
  yields the same value as AV_PIX_FMT_VAAPI_VLD.
  Deprecate old VA-API related pixel formats: AV_PIX_FMT_VAAPI_MOCO,
  AV_PIX_FMT_VAAPI_IDCT, AV_PIX_FMT_VAAPI_VLD.

260 261 262 263 264
2015-08-02 - lavu 54.30.100 / 54.17.0
  9ed59f1 / 7a7df34c -  Add av_blowfish_alloc().
  a130ec9 / ae365453 -  Add av_rc4_alloc().
  9ca1997 / 5d8bea3b -  Add av_xtea_alloc().
  3cf08e9 / d9e8b47e -  Add av_des_alloc().
265

266 267 268 269
2015-07-27 - lavc 56.56.100 / 56.35.0 - avcodec.h
  94d68a4 / 7c6eb0a1 - Rename CODEC_FLAG* defines to AV_CODEC_FLAG*.
  444e987 / def97856 - Rename CODEC_CAP_* defines to AV_CODEC_CAP_*.
  29d147c / 059a9348 - Rename FF_INPUT_BUFFER_PADDING_SIZE and FF_MIN_BUFFER_SIZE
270 271
              to AV_INPUT_BUFFER_PADDING_SIZE and AV_INPUT_BUFFER_MIN_SIZE.

272
2015-07-22 - c40ecff - lavc 56.51.100 - avcodec.h
273 274
  Add AV_PKT_DATA_QUALITY_STATS to export the quality value, PSNR, and pict_type
  of an AVPacket.
275

276
2015-07-16 - 8dad213 - lavc 56.49.100
277 278 279
  Add av_codec_get_codec_properties(), FF_CODEC_PROPERTY_LOSSLESS
  and FF_CODEC_PROPERTY_CLOSED_CAPTIONS

280
2015-07-03 - d563e13 / 83212943 - lavu 54.28.100 / 56.15.0
281
  Add av_version_info().
282

283 284
-------- 8< --------- FFmpeg 2.7 was cut here -------- 8< ---------

285
2015-06-04 - cc17b43 - lswr  1.2.100
286 287
  Add swr_get_out_samples()

288
2015-05-27 - c312bfa - lavu 54.26.100 - cpu.h
289 290
  Add AV_CPU_FLAG_AVXSLOW.

291
2015-05-26 - 1fb9b2a - lavu 54.25.100 - rational.h
292 293
  Add av_q2intfloat().

294
2015-05-13 - cc48409 / e7c5e17 - lavc 56.39.100 / 56.23.0
295 296
  Add av_vda_default_init2.

297
2015-05-11 - 541d75f - lavf 56.33.100 - avformat.h
298 299
  Add AVOpenCallback AVFormatContext.open_cb

300
2015-05-07 - a7dd933 - 56.38.100 - avcodec.h
301 302
  Add av_packet_side_data_name().

303 304 305
2015-05-07 - 01e59d4 - 56.37.102 - avcodec.h
  Add FF_PROFILE_VP9_2 and FF_PROFILE_VP9_3.

306
2015-05-04 - 079b7f6 - 56.37.100 - avcodec.h
James Almer's avatar
James Almer committed
307 308
  Add FF_PROFILE_VP9_0 and FF_PROFILE_VP9_1.

309
2015-04-22 - 748d481 - lavf 56.31.100 - avformat.h
310 311 312
  Add AVFMT_FLAG_FAST_SEEK flag. Some formats (initially mp3) use it to enable
  fast, but inaccurate seeking.

313
2015-04-20 - 8e8219e / c253340 - lavu 54.23.100 / 54.12.0 - log.h
314 315
  Add AV_LOG_TRACE for extremely verbose debugging.

316
2015-04-02 - 26e0e393 - lavf 56.29.100 - avio.h
317 318 319 320
  Add AVIODirEntryType.AVIO_ENTRY_SERVER.
  Add AVIODirEntryType.AVIO_ENTRY_SHARE.
  Add AVIODirEntryType.AVIO_ENTRY_WORKGROUP.

321
2015-03-31 - 3188696 - lavu 54.22.100 - avstring.h
322 323
  Add av_append_path_component()

324 325 326 327 328 329 330 331 332
2015-03-27 - 184084c - lavf 56.27.100 - avio.h url.h
  New directory listing API.

  Add AVIODirEntryType enum.
  Add AVIODirEntry, AVIODirContext structures.
  Add avio_open_dir(), avio_read_dir(), avio_close_dir(), avio_free_directory_entry().
  Add ff_alloc_dir_entry().
  Extend URLProtocol with url_open_dir(), url_read_dir(), url_close_dir().

333
2015-03-29 - 268ff17 / c484561 - lavu 54.21.100 / 54.10.0 - pixfmt.h
334 335
  Add AV_PIX_FMT_MMAL for MMAL hardware acceleration.

336
2015-03-19 - 11fe56c - 56.29.100 / lavc 56.22.0
337 338
  Add FF_PROFILE_DTS_EXPRESS.

339 340
-------- 8< --------- FFmpeg 2.6 was cut here -------- 8< ---------

341
2015-03-04 - cca4476 - lavf 56.25.100
wm4's avatar
wm4 committed
342 343
  Add avformat_flush()

344
2015-03-03 - 81a9126 - lavf 56.24.100
345 346
  Add avio_put_str16be()

347
2015-02-19 - 560eb71 / 31d2039 - lavc 56.23.100 / 56.13.0
348 349 350
  Add width, height, coded_width, coded_height and format to
  AVCodecParserContext.

351
2015-02-19 - e375511 / 5b1d9ce - lavu 54.19.100 / 54.9.0
352 353
  Add AV_PIX_FMT_QSV for QSV hardware acceleration.

354
2015-02-14 - ba22295 - lavc 56.21.102
355 356
  Deprecate VIMA decoder.

357
2015-01-27 - 62a82c6 / 728685f - lavc 56.21.100 / 56.12.0, lavu 54.18.100 / 54.8.0 - avcodec.h, frame.h
358 359 360
  Add AV_PKT_DATA_AUDIO_SERVICE_TYPE and AV_FRAME_DATA_AUDIO_SERVICE_TYPE for
  storing the audio service type as side data.

361 362 363
2015-01-16 - a47c933 - lavf 56.19.100 - avformat.h
  Add data_codec and data_codec_id for storing codec of data stream

364
2015-01-11 - 007c33d - lavd 56.4.100 - avdevice.h
365 366 367
  Add avdevice_list_input_sources().
  Add avdevice_list_output_sinks().

368
2014-12-25 - d7aaeea / c220a60 - lavc 56.19.100 / 56.10.0 - vdpau.h
369 370
  Add av_vdpau_get_surface_parameters().

371
2014-12-25 - ddb9a24 / 6c99c92 - lavc 56.18.100 / 56.9.0 - avcodec.h
372 373
  Add AV_HWACCEL_FLAG_ALLOW_HIGH_DEPTH flag to av_vdpau_bind_context().

374
2014-12-25 - d16079a / 57b6704 - lavc 56.17.100 / 56.8.0 - avcodec.h
375 376
  Add AVCodecContext.sw_pix_fmt.

377
2014-12-04 - 6e9ac02 - lavc 56.14.100 - dv_profile.h
378 379
  Add av_dv_codec_profile2().

380 381
-------- 8< --------- FFmpeg 2.5 was cut here -------- 8< ---------

382
2014-11-21 - ab922f9 - lavu 54.15.100 - dict.h
383 384
   Add av_dict_get_string().

385
2014-11-18 - a54a51c - lavu 54.14.100 - float_dsp.h
386 387
  Add avpriv_float_dsp_alloc().

388
2014-11-16 - 6690d4c3 - lavf 56.13.100 - avformat.h
389 390
  Add AVStream.recommended_encoder_configuration with accessors.

391
2014-11-16 - bee5844d - lavu 54.13.100 - opt.h
392 393
  Add av_opt_serialize().

394
2014-11-16 - eec69332 - lavu 54.12.100 - opt.h
395 396
  Add av_opt_is_set_to_default().

397
2014-11-06 - 44fa267 / 5e80fb7 - lavc 56.11.100 / 56.6.0 - vorbis_parser.h
398 399
  Add a public API for parsing vorbis packets.

400
2014-10-15 - 17085a0 / 7ea1b34 - lavc 56.7.100 / 56.5.0 - avcodec.h
401 402 403
  Replace AVCodecContext.time_base used for decoding
  with AVCodecContext.framerate.

404
2014-10-15 - 51c810e / d565fef1 - lavc 56.6.100 / 56.4.0 - avcodec.h
405 406
  Add AV_HWACCEL_FLAG_IGNORE_LEVEL flag to av_vdpau_bind_context().

407
2014-10-13 - da21895 / 2df0c32e - lavc 56.5.100 / 56.3.0 - avcodec.h
408 409 410
  Add AVCodecContext.initial_padding. Deprecate the use of AVCodecContext.delay
  for audio encoding.

411
2014-10-08 - bb44f7d / 5a419b2 - lavu 54.10.100 / 54.4.0 - pixdesc.h
412 413
  Add API to return the name of frame and context color properties.

414
2014-10-06 - a61899a / e3e158e - lavc 56.3.100 / 56.2.0 - vdpau.h
415 416 417
  Add av_vdpau_bind_context(). This function should now be used for creating
  (or resetting) a AVVDPAUContext instead of av_vdpau_alloc_context().

418 419
2014-10-02 - cdd6f05 - lavc 56.2.100 - avcodec.h
2014-10-02 - cdd6f05 - lavu 54.9.100 - frame.h
420 421 422 423 424
  Add AV_FRAME_DATA_SKIP_SAMPLES. Add lavc CODEC_FLAG2_SKIP_MANUAL and
  AVOption "skip_manual", which makes lavc export skip information via
  AV_FRAME_DATA_SKIP_SAMPLES AVFrame side data, instead of skipping and
  discarding samples automatically.

425
2014-10-02 - 0d92b0d - lavu 54.8.100 - avstring.h
426 427
  Add av_match_list()

428
2014-09-24 - ac68295 - libpostproc 53.1.100
429
  Add visualization support
430

431
2014-09-19 - 6edd6a4 - lavc 56.1.101 - dv_profile.h
432 433
  deprecate avpriv_dv_frame_profile2(), which was made public by accident.

434 435 436

-------- 8< --------- FFmpeg 2.4 was cut here -------- 8< ---------

437
2014-08-25 - 215db29 / b263f8f - lavf 56.3.100 / 56.3.0 - avformat.h
438 439
  Add AVFormatContext.max_ts_probe.

440
2014-08-28 - f30a815 / 9301486 - lavc 56.1.100 / 56.1.0 - avcodec.h
441 442
  Add AV_PKT_DATA_STEREO3D to export container-level stereo3d information.

443
2014-08-23 - 8fc9bd0 - lavu 54.7.100 - dict.h
444 445 446 447
  AV_DICT_DONT_STRDUP_KEY and AV_DICT_DONT_STRDUP_VAL arguments are now
  freed even on error. This is consistent with the behaviour all users
  of it we could find expect.

448
2014-08-21 - 980a5b0 - lavu 54.6.100 - frame.h motion_vector.h
449 450
  Add AV_FRAME_DATA_MOTION_VECTORS side data and AVMotionVector structure

451
2014-08-16 - b7d5e01 - lswr 1.1.100 - swresample.h
452 453
  Add AVFrame based API

454
2014-08-16 - c2829dc - lavu 54.4.100 - dict.h
455 456
  Add av_dict_set_int helper function.

457
2014-08-13 - c8571c6 / 8ddc326 - lavu 54.3.100 / 54.3.0 - mem.h
458 459
  Add av_strndup().

460
2014-08-13 - 2ba4577 / a8c104a - lavu 54.2.100 / 54.2.0 - opt.h
461 462 463
  Add av_opt_get_dict_val/set_dict_val with AV_OPT_TYPE_DICT to support
  dictionary types being set as options.

464
2014-08-13 - afbd4b8 - lavf 56.01.0 - avformat.h
465 466 467
  Add AVFormatContext.event_flags and AVStream.event_flags for signaling to
  the user when events happen in the file/stream.

468
2014-08-10 - 78eaaa8 / fb1ddcd - lavr 2.1.0 - avresample.h
469 470
  Add avresample_convert_frame() and avresample_config().

471
2014-08-10 - 78eaaa8 / fb1ddcd - lavu 54.1.100 / 54.1.0 - error.h
472 473
  Add AVERROR_INPUT_CHANGED and AVERROR_OUTPUT_CHANGED.

474
2014-08-08 - 3841f2a / d35b94f - lavc 55.73.102 / 55.57.4 - avcodec.h
475 476 477
  Deprecate FF_IDCT_XVIDMMX define and xvidmmx idct option.
  Replaced by FF_IDCT_XVID and xvid respectively.

478
2014-08-08 - 5c3c671 - lavf 55.53.100 - avio.h
479 480
  Add avio_feof() and deprecate url_feof().

481
2014-08-07 - bb78903 - lsws 2.1.3 - swscale.h
482
  sws_getContext is not going to be removed in the future.
483

484
2014-08-07 - a561662 / ad1ee5f - lavc 55.73.101 / 55.57.3 - avcodec.h
485 486
  reordered_opaque is not going to be removed in the future.

487
2014-08-02 - 28a2107 - lavu 52.98.100 - pixelutils.h
488 489
  Add pixelutils API with SAD functions

490
2014-08-04 - 6017c98 / e9abafc - lavu 52.97.100 / 53.22.0 - pixfmt.h
491 492
  Add AV_PIX_FMT_YA16 pixel format for 16 bit packed gray with alpha.

493
2014-08-04 - 4c8bc6f / e96c3b8 - lavu 52.96.101 / 53.21.1 - avstring.h
494 495 496
  Rename AV_PIX_FMT_Y400A to AV_PIX_FMT_YA8 to better identify the format.
  An alias pixel format and color space name are provided for compatibility.

497
2014-08-04 - 073c074 / d2962e9 - lavu 52.96.100 / 53.21.0 - pixdesc.h
498 499
  Support name aliases for pixel formats.

500 501
2014-08-03 - 71d008e / 1ef9e83 - lavc 55.72.101 / 55.57.2 - avcodec.h
2014-08-03 - 71d008e / 1ef9e83 - lavu 52.95.100 / 53.20.0 - frame.h
502
  Deprecate AVCodecContext.dtg_active_format and use side-data instead.
503

504
2014-08-03 - e680c73 - lavc 55.72.100 - avcodec.h
505 506
  Add get_pixels() to AVDCT

507
2014-08-03 - 9400603 / 9f17685 - lavc 55.71.101 / 55.57.1 - avcodec.h
508 509 510 511 512 513
  Deprecate unused FF_IDCT_IPP define and ipp avcodec option.
  Deprecate unused FF_DEBUG_PTS define and pts avcodec option.
  Deprecate unused FF_CODER_TYPE_DEFLATE define and deflate avcodec option.
  Deprecate unused FF_DCT_INT define and int avcodec option.
  Deprecate unused avcodec option scenechange_factor.

514
2014-07-30 - ba3e331 - lavu 52.94.100 - frame.h
515 516
  Add av_frame_side_data_name()

517
2014-07-29 - 80a3a66 / 3a19405 - lavf 56.01.100 / 56.01.0 - avformat.h
518 519 520 521 522 523
  Add mime_type field to AVProbeData, which now MUST be initialized in
  order to avoid uninitialized reads of the mime_type pointer, likely
  leading to crashes.
  Typically, this means you will do 'AVProbeData pd = { 0 };' instead of
  'AVProbeData pd;'.

524
2014-07-29 - 31e0b5d / 69e7336 - lavu 52.92.100 / 53.19.0 - avstring.h
525 526
  Make name matching function from lavf public as av_match_name().

527
2014-07-28 - 2e5c8b0 / c5fca01 - lavc 55.71.100 / 55.57.0 - avcodec.h
528 529
  Add AV_CODEC_PROP_REORDER to mark codecs supporting frame reordering.

530 531 532 533 534
2014-07-27 - ff9a154 - lavf 55.50.100 - avformat.h
  New field int64_t probesize2 instead of deprecated
  field int probesize.

2014-07-27 - 932ff70 - lavc 55.70.100 - avdct.h
Michael Niedermayer's avatar
Michael Niedermayer committed
535 536
  Add AVDCT / avcodec_dct_alloc() / avcodec_dct_init().

537
2014-07-23 - 8a4c086 - lavf 55.49.100 - avio.h
538 539
  Add avio_read_to_bprint()

540 541 542

-------- 8< --------- FFmpeg 2.3 was cut here -------- 8< ---------

543
2014-07-14 - 62227a7 - lavf 55.47.100 - avformat.h
544 545
  Add av_stream_get_parser()

546
2014-07-09 - c67690f / a54f03b - lavu 52.92.100 / 53.18.0 - display.h
547 548
  Add av_display_matrix_flip() to flip the transformation matrix.

549
2014-07-09 - 1b58f13 / f6ee61f - lavc 55.69.100 / 55.56.0 - dv_profile.h
550 551
  Add a public API for DV profile handling.

552
2014-06-20 - 0dceefc / 9e500ef - lavu 52.90.100 / 53.17.0 - imgutils.h
553 554
  Add av_image_check_sar().

555
2014-06-20 - 4a99333 / 874390e - lavc 55.68.100 / 55.55.0 - avcodec.h
556 557
  Add av_packet_rescale_ts() to simplify timestamp conversion.

558
2014-06-18 - ac293b6 / 194be1f - lavf 55.44.100 / 55.20.0 - avformat.h
559 560 561 562
  The proper way for providing a hint about the desired timebase to the muxers
  is now setting AVStream.time_base, instead of AVStream.codec.time_base as was
  done previously. The old method is now deprecated.

563 564 565 566
2014-06-11 - 67d29da - lavc 55.66.101 - avcodec.h
  Increase FF_INPUT_BUFFER_PADDING_SIZE to 32 due to some corner cases needing
  it

567
2014-06-10 - 5482780 - lavf 55.43.100 - avformat.h
568 569 570
  New field int64_t max_analyze_duration2 instead of deprecated
  int max_analyze_duration.

571
2014-05-30 - 00759d7 - lavu 52.89.100 - opt.h
572 573
  Add av_opt_copy()

574
2014-06-01 - 03bb99a / 0957b27 - lavc 55.66.100 / 55.54.0 - avcodec.h
575 576 577 578
  Add AVCodecContext.side_data_only_packets to allow encoders to output packets
  with only side data. This option may become mandatory in the future, so all
  users are recommended to update their code and enable this option.

579
2014-06-01 - 6e8e9f1 / 8c02adc - lavu 52.88.100 / 53.16.0 - frame.h, pixfmt.h
580 581
  Move all color-related enums (AVColorPrimaries, AVColorSpace, AVColorRange,
  AVColorTransferCharacteristic, and AVChromaLocation) inside lavu.
582
  And add AVFrame fields for them.
583

584
2014-05-29 - bdb2e80 / b2d4565 - lavr 1.3.0 - avresample.h
585 586
  Add avresample_max_output_samples

587
2014-05-28 - d858ee7 / 6d21259 - lavf 55.42.100 / 55.19.0 - avformat.h
588 589 590
  Add strict_std_compliance and related AVOptions to support experimental
  muxing.

591
2014-05-26 - 55cc60c - lavu 52.87.100 - threadmessage.h
592 593
  Add thread message queue API.

594
2014-05-26 - c37d179 - lavf 55.41.100 - avformat.h
595 596
  Add format_probesize to AVFormatContext.

597
2014-05-20 - 7d25af1 / c23c96b - lavf 55.39.100 / 55.18.0 - avformat.h
598 599 600
  Add av_stream_get_side_data() to access stream-level side data
  in the same way as av_packet_get_side_data().

601
2014-05-20 - 7336e39 - lavu 52.86.100 - fifo.h
602 603
  Add av_fifo_alloc_array() function.

604
2014-05-19 - ef1d4ee / bddd8cb - lavu 52.85.100 / 53.15.0 - frame.h, display.h
605 606 607
  Add AV_FRAME_DATA_DISPLAYMATRIX for exporting frame-level
  spatial rendering on video frames for proper display.

608
2014-05-19 - ef1d4ee / bddd8cb - lavc 55.64.100 / 55.53.0 - avcodec.h
609 610 611
  Add AV_PKT_DATA_DISPLAYMATRIX for exporting packet-level
  spatial rendering on video frames for proper display.

612
2014-05-19 - 999a99c / a312f71 - lavf 55.38.101 / 55.17.1 - avformat.h
613
  Deprecate AVStream.pts and the AVFrac struct, which was its only use case.
614
  See use av_stream_get_end_pts()
615

616
2014-05-18 - 68c0518 / fd05602 - lavc 55.63.100 / 55.52.0 - avcodec.h
617 618 619
  Add avcodec_free_context(). From now on it should be used for freeing
  AVCodecContext.

620
2014-05-17 - 0eec06e / 1bd0bdc - lavu 52.84.100 / 54.5.0 - time.h
621 622
  Add av_gettime_relative() av_gettime_relative_is_monotonic()

623
2014-05-15 - eacf7d6 / 0c1959b - lavf 55.38.100 / 55.17.0 - avformat.h
Gabriel Dume's avatar
Gabriel Dume committed
624
  Add AVFMT_FLAG_BITEXACT flag. Muxers now use it instead of checking
625 626
  CODEC_FLAG_BITEXACT on the first stream.

627
2014-05-15 - 96cb4c8 - lswr 0.19.100 - swresample.h
628 629
  Add swr_close()

630
2014-05-11 - 14aef38 / 66e6c8a - lavu 52.83.100 / 53.14.0 - pixfmt.h
631 632
  Add AV_PIX_FMT_VDA for new-style VDA acceleration.

633
2014-05-07 - 351f611 - lavu 52.82.100 - fifo.h
634 635
  Add av_fifo_freep() function.

636
2014-05-02 - ba52fb11 - lavu 52.81.100 - opt.h
637 638
  Add av_opt_set_dict2() function.

639
2014-05-01 - e77b985 / a2941c8 - lavc 55.60.103 / 55.50.3 - avcodec.h
640 641 642
  Deprecate CODEC_FLAG_MV0. It is replaced by the flag "mv0" in the
  "mpv_flags" private option of the mpegvideo encoders.

643
2014-05-01 - e40ae8c / 6484149 - lavc 55.60.102 / 55.50.2 - avcodec.h
644 645 646
  Deprecate CODEC_FLAG_GMC. It is replaced by the "gmc" private option of the
  libxvid encoder.

647
2014-05-01 - 1851643 / b2c3171 - lavc 55.60.101 / 55.50.1 - avcodec.h
648 649 650
  Deprecate CODEC_FLAG_NORMALIZE_AQP. It is replaced by the flag "naq" in the
  "mpv_flags" private option of the mpegvideo encoders.

651
2014-05-01 - cac07d0 / 5fcceda - avcodec.h
652 653 654
  Deprecate CODEC_FLAG_INPUT_PRESERVED. Its functionality is replaced by passing
  reference-counted frames to encoders.

655 656 657 658
2014-04-30 - 617e866 - lavu 52.81.100 - pixdesc.h
  Add av_find_best_pix_fmt_of_2(), av_get_pix_fmt_loss()
  Deprecate avcodec_get_pix_fmt_loss(), avcodec_find_best_pix_fmt_of_2()

659 660 661
2014-04-29 - 1bf6396 - lavc 55.60.100 - avcodec.h
  Add AVCodecDescriptor.mime_types field.

662
2014-04-29 - b804eb4 - lavu 52.80.100 - hash.h
663 664
  Add av_hash_final_bin(), av_hash_final_hex() and av_hash_final_b64().

665
2014-03-07 - 8b2a130 - lavc 55.50.0 / 55.53.100 - dxva2.h
666 667
  Add FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO for old Intel GPUs.

668
2014-04-22 - 502512e /dac7e8a - lavu 53.13.0 / 52.78.100 - avutil.h
669 670
  Add av_get_time_base_q().

671
2014-04-17 - a8d01a7 / 0983d48 - lavu 53.12.0 / 52.77.100 - crc.h
672 673
  Add AV_CRC_16_ANSI_LE crc variant.

674
2014-04-15 - ef818d8 - lavf 55.37.101 - avformat.h
675 676
  Add av_format_inject_global_side_data()

677
2014-04-12 - 4f698be - lavu 52.76.100 - log.h
678 679
  Add av_log_get_flags()

680
2014-04-11 - 6db42a2b - lavd 55.12.100 - avdevice.h
681 682 683
  Add avdevice_capabilities_create() function.
  Add avdevice_capabilities_free() function.

684
2014-04-07 - 0a1cc04 / 8b17243 - lavu 52.75.100 / 53.11.0 - pixfmt.h
685 686
  Add AV_PIX_FMT_YVYU422 pixel format.

687
2014-04-04 - c1d0536 / 8542f9c - lavu 52.74.100 / 53.10.0 - replaygain.h
688 689 690
  Full scale for peak values is now 100000 (instead of UINT32_MAX) and values
  may overflow.

691
2014-04-03 - c16e006 / 7763118 - lavu 52.73.100 / 53.9.0 - log.h
692 693
  Add AV_LOG(c) macro to have 256 color debug messages.

694
2014-04-03 - eaed4da9 - lavu 52.72.100 - opt.h
695
  Add AV_OPT_MULTI_COMPONENT_RANGE define to allow return
696 697
  multi-component option ranges.

698
2014-03-29 - cd50a44b - lavu 52.70.100 - mem.h
699 700
  Add av_dynarray_add_nofree() function.

701
2014-02-24 - 3e1f241 / d161ae0 - lavu 52.69.100 / 53.8.0 - frame.h
702 703 704
  Add av_frame_remove_side_data() for removing a single side data
  instance from a frame.

705
2014-03-24 - 83e8978 / 5a7e35d - lavu 52.68.100 / 53.7.0 - frame.h, replaygain.h
706 707 708
  Add AV_FRAME_DATA_REPLAYGAIN for exporting replaygain tags.
  Add a new header replaygain.h with the AVReplayGain struct.

709
2014-03-24 - 83e8978 / 5a7e35d - lavc 55.54.100 / 55.36.0 - avcodec.h
710 711
  Add AV_PKT_DATA_REPLAYGAIN for exporting replaygain tags.

712
2014-03-24 - 595ba3b / 25b3258 - lavf 55.35.100 / 55.13.0 - avformat.h
713 714 715
  Add AVStream.side_data and AVStream.nb_side_data for exporting stream-global
  side data (e.g. replaygain tags, video rotation)

716
2014-03-24 - bd34e26 / 0e2c3ee - lavc 55.53.100 / 55.35.0 - avcodec.h
717 718 719
  Give the name AVPacketSideData to the previously anonymous struct used for
  AVPacket.side_data.

720 721 722

-------- 8< --------- FFmpeg 2.2 was cut here -------- 8< ---------

723 724 725
2014-03-18 - 37c07d4 - lsws 2.5.102
  Make gray16 full-scale.

726
2014-03-16 - 6b1ca17 / 1481d24 - lavu 52.67.100 / 53.6.0 - pixfmt.h
727
  Add RGBA64_LIBAV pixel format and variants for compatibility
Jean First's avatar
Jean First committed
728

729
2014-03-11 - 3f3229c - lavf 55.34.101 - avformat.h
730 731
  Set AVFormatContext.start_time_realtime when demuxing.

732
2014-03-03 - 06fed440 - lavd 55.11.100 - avdevice.h
733 734 735 736 737
  Add av_input_audio_device_next().
  Add av_input_video_device_next().
  Add av_output_audio_device_next().
  Add av_output_video_device_next().

738
2014-02-24 - fff5262 / 1155fd0 - lavu 52.66.100 / 53.5.0 - frame.h
739 740
  Add av_frame_copy() for copying the frame data.

741
2014-02-24 - a66be60 - lswr 0.18.100 - swresample.h
742 743
  Add swr_is_initialized() for checking whether a resample context is initialized.

744
2014-02-22 - 5367c0b / 7e86c27 - lavr 1.2.0 - avresample.h
745 746
  Add avresample_is_open() for checking whether a resample context is open.

747
2014-02-19 - 6a24d77 / c3ecd96 - lavu 52.65.100 / 53.4.0  - opt.h
748 749 750
  Add AV_OPT_FLAG_EXPORT and AV_OPT_FLAG_READONLY to mark options meant (only)
  for reading.

751
2014-02-19 - f4c8d00 / 6bb8720 - lavu 52.64.101 / 53.3.1 - opt.h
752 753
  Deprecate unused AV_OPT_FLAG_METADATA.

754
2014-02-16 - 81c3f81 - lavd 55.10.100 - avdevice.h
755 756
  Add avdevice_list_devices() and avdevice_free_list_devices()

757 758 759 760
2014-02-16 - db3c970 - lavf 55.33.100 - avio.h
  Add avio_find_protocol_name() to find out the name of the protocol that would
  be selected for a given URL.

761
2014-02-15 - a2bc6c1 / c98f316 - lavu 52.64.100 / 53.3.0 - frame.h
762 763 764
  Add AV_FRAME_DATA_DOWNMIX_INFO value to the AVFrameSideDataType enum and
  downmix_info.h API, which identify downmix-related metadata.

765 766 767
2014-02-11 - 1b05ac2 - lavf 55.32.100 - avformat.h
  Add av_write_uncoded_frame() and av_interleaved_write_uncoded_frame().

768
2014-02-04 - 3adb5f8 / d9ae103 - lavf 55.30.100 / 55.11.0 - avformat.h
769 770 771
  Add AVFormatContext.max_interleave_delta for controlling amount of buffering
  when interleaving.

772
2014-02-02 - 5871ee5 - lavf 55.29.100 - avformat.h
773 774
  Add output_ts_offset muxing option to AVFormatContext.

775 776
2014-01-27 - 102bd64 - lavd 55.7.100 - avdevice.h
                       lavf 55.28.100 - avformat.h
777
  Add avdevice_dev_to_app_control_message() function.
778 779 780

2014-01-27 - 7151411 - lavd 55.6.100 - avdevice.h
                       lavf 55.27.100 - avformat.h
781
  Add avdevice_app_to_dev_control_message() function.
782

783
2014-01-24 - 86bee79 - lavf 55.26.100 - avformat.h
784 785
  Add AVFormatContext option metadata_header_padding to allow control over the
  amount of padding added.
786

787
2014-01-20 - eef74b2 / 93c553c - lavc 55.48.102 / 55.32.1 - avcodec.h
788 789 790 791
  Edges are not required anymore on video buffers allocated by get_buffer2()
  (i.e. as if the CODEC_FLAG_EMU_EDGE flag was always on). Deprecate
  CODEC_FLAG_EMU_EDGE and avcodec_get_edge_width().

792
2014-01-19 - 1a193c4 - lavf 55.25.100 - avformat.h
793
  Add avformat_get_mov_video_tags() and avformat_get_mov_audio_tags().
794

795
2014-01-19 - 3532dd5 - lavu 52.63.100 - rational.h
796 797
  Add av_make_q() function.

798
2014-01-05 - 4cf4da9 / 5b4797a - lavu 52.62.100 / 53.2.0 - frame.h
799 800 801
  Add AV_FRAME_DATA_MATRIXENCODING value to the AVFrameSideDataType enum, which
  identifies AVMatrixEncoding data.

802
2014-01-05 - 751385f / 5c437fb - lavu 52.61.100 / 53.1.0 - channel_layout.h
803 804
  Add values for various Dolby flags to the AVMatrixEncoding enum.

805
2014-01-04 - b317f94 - lavu 52.60.100 - mathematics.h
806 807
  Add av_add_stable() function.

808
2013-12-22 - 911676c - lavu 52.59.100 - avstring.h
809 810
  Add av_strnlen() function.

811
2013-12-09 - 64f73ac - lavu 52.57.100 - opencl.h
812
  Add av_opencl_benchmark() function.
813

814
2013-11-30 - 82b2e9c - lavu 52.56.100 - ffversion.h
815 816 817
  Moves version.h to libavutil/ffversion.h.
  Install ffversion.h and make it public.

818
2013-12-11 - 29c83d2 / b9fb59d,409a143 / 9431356,44967ab / d7b3ee9 - lavc 55.45.101 / 55.28.1 - avcodec.h
819 820 821 822
  av_frame_alloc(), av_frame_unref() and av_frame_free() now can and should be
  used instead of avcodec_alloc_frame(), avcodec_get_frame_defaults() and
  avcodec_free_frame() respectively. The latter three functions are deprecated.

823
2013-12-09 - 7a60348 / 7e244c6- - lavu 52.58.100 / 52.20.0 - frame.h
824 825 826
  Add AV_FRAME_DATA_STEREO3D value to the AVFrameSideDataType enum and
  stereo3d.h API, that identify codec-independent stereo3d information.

827
2013-11-26 - 625b290 / 1eaac1d- - lavu 52.55.100 / 52.19.0 - frame.h
828 829 830
  Add AV_FRAME_DATA_A53_CC value to the AVFrameSideDataType enum, which
  identifies ATSC A53 Part 4 Closed Captions data.

831
2013-11-22 - 6859065 - lavu 52.54.100 - avstring.h
832 833
  Add av_utf8_decode() function.

834 835 836
2013-11-22 - fb7d70c - lavc 55.44.100 - avcodec.h
  Add HEVC profiles

837
2013-11-20 - c28b61c - lavc 55.44.100 - avcodec.h
838 839 840 841
  Add av_packet_{un,}pack_dictionary()
  Add AV_PKT_METADATA_UPDATE side data type, used to transmit key/value
  strings between a stream and the application.

842
2013-11-14 - 7c888ae / cce3e0a - lavu 52.53.100 / 52.18.0 - mem.h
843 844
  Move av_fast_malloc() and av_fast_realloc() for libavcodec to libavutil.

845
2013-11-14 - b71e4d8 / 8941971 - lavc 55.43.100 / 55.27.0 - avcodec.h
846 847 848
  Deprecate AVCodecContext.error_rate, it is replaced by the 'error_rate'
  private option of the mpegvideo encoder family.

849
2013-11-14 - 31c09b7 / 728c465 - lavc 55.42.100 / 55.26.0 - vdpau.h
850
  Add av_vdpau_get_profile().
851 852
  Add av_vdpau_alloc_context(). This function must from now on be
  used for allocating AVVDPAUContext.
853

854
2013-11-04 - be41f21 / cd8f772 - lavc 55.41.100 / 55.25.0 - avcodec.h
855
                       lavu 52.51.100 - frame.h
856 857 858
  Add ITU-R BT.2020 and other not yet included values to color primaries,
  transfer characteristics and colorspaces.

859
2013-11-04 - 85cabf1 - lavu 52.50.100 - avutil.h
860 861
  Add av_fopen_utf8()

862
2013-10-31 - 78265fc / 28096e0 - lavu 52.49.100 / 52.17.0 - frame.h
863 864
  Add AVFrame.flags and AV_FRAME_FLAG_CORRUPT.

865 866 867

-------- 8< --------- FFmpeg 2.1 was cut here -------- 8< ---------

868
2013-10-27 - dbe6f9f - lavc 55.39.100 - avcodec.h
869 870
  Add CODEC_CAP_DELAY support to avcodec_decode_subtitle2.

871
2013-10-27 - d61617a - lavu 52.48.100 - parseutils.h
872 873
  Add av_get_known_color_name().

874
2013-10-17 - 8696e51 - lavu 52.47.100 - opt.h
875 876 877
  Add AV_OPT_TYPE_CHANNEL_LAYOUT and channel layout option handlers
  av_opt_get_channel_layout() and av_opt_set_channel_layout().

878
2013-10-06 - ccf96f8 -libswscale 2.5.101 - options.c
879 880
  Change default scaler to bicubic

881
2013-10-03 - e57dba0 - lavc 55.34.100 - avcodec.h
882 883
  Add av_codec_get_max_lowres()

884
2013-10-02 - 5082fcc - lavf 55.19.100 - avformat.h
885 886 887
  Add audio/video/subtitle AVCodec fields to AVFormatContext to force specific
  decoders

888
2013-09-28 - 7381d31 / 0767bfd - lavfi 3.88.100 / 3.11.0 - avfilter.h
889 890 891
  Add AVFilterGraph.execute and AVFilterGraph.opaque for custom slice threading
  implementations.

892
2013-09-21 - 85f8a3c / e208e6d - lavu 52.46.100 / 52.16.0 - pixfmt.h
893 894 895
  Add interleaved 4:2:2 8/10-bit formats AV_PIX_FMT_NV16 and
  AV_PIX_FMT_NV20.

896
2013-09-16 - c74c3fb / 3feb3d6 - lavu 52.44.100 / 52.15.0 - mem.h
897 898
  Add av_reallocp.

899
2013-09-04 - 3e1f507 - lavc 55.31.101 - avcodec.h
900 901
  avcodec_close() argument can be NULL.

902
2013-09-04 - 36cd017a - lavf 55.16.101 - avformat.h
903 904
  avformat_close_input() argument can be NULL and point on NULL.

905 906 907
2013-08-29 - e31db62 - lavf 55.15.100 - avformat.h
  Add av_format_get_probe_score().

908
2013-08-15 - 1e0e193 - lsws 2.5.100 -
909 910
  Add a sws_dither AVOption, allowing to set the dither algorithm used

911
2013-08-11 - d404fe35 - lavc 55.27.100 - vdpau.h
912 913
  Add a render2 alternative to the render callback function.

914
2013-08-11 - af05edc - lavc 55.26.100 - vdpau.h
915 916 917
  Add allocation function for AVVDPAUContext, allowing
  to extend it in the future without breaking ABI/API.

918
2013-08-10 - 67a580f / 5a9a9d4 - lavc 55.25.100 / 55.16.0 - avcodec.h
919 920 921
  Extend AVPacket API with av_packet_unref, av_packet_ref,
  av_packet_move_ref, av_packet_copy_props, av_packet_free_side_data.

922
2013-08-05 - 9547e3e / f824535 - lavc 55.22.100 / 55.13.0 - avcodec.h
923
  Deprecate the bitstream-related members from struct AVVDPAUContext.
Michael Niedermayer's avatar
Michael Niedermayer committed
924
  The bitstream buffers no longer need to be explicitly freed.
925

926
2013-08-05 - 3b805dc / 549294f - lavc 55.21.100 / 55.12.0 - avcodec.h
927 928 929
  Deprecate the CODEC_CAP_HWACCEL_VDPAU codec capability. Use CODEC_CAP_HWACCEL
  and select the AV_PIX_FMT_VDPAU format with get_format() instead.

930
2013-08-05 - 4ee0984 / a0ad5d0 - lavu 52.41.100 / 52.14.0 - pixfmt.h
931 932
  Deprecate AV_PIX_FMT_VDPAU_*. Use AV_PIX_FMT_VDPAU instead.

933
2013-08-02 - 82fdfe8 / a8b1927 - lavc 55.20.100 / 55.11.0 - avcodec.h
934 935
  Add output_picture_number to AVCodecParserContext.

936
2013-07-23 - abc8110 - lavc 55.19.100 - avcodec.h
937 938 939
  Add avcodec_chroma_pos_to_enum()
  Add avcodec_enum_to_chroma_pos()

940 941 942

-------- 8< --------- FFmpeg 2.0 was cut here -------- 8< ---------

943
2013-07-03 - 838bd73 - lavfi 3.78.100 - avfilter.h
944 945 946
  Deprecate avfilter_graph_parse() in favor of the equivalent
  avfilter_graph_parse_ptr().

947
2013-06-24 - af5f9c0 / 95d5246 - lavc 55.17.100 / 55.10.0 - avcodec.h
948
  Add MPEG-2 AAC profiles
949

950
2013-06-25 - af5f9c0 / 95d5246 - lavf 55.10.100 - avformat.h
951 952
  Add AV_DISPOSITION_* flags to indicate text track kind.

953
2013-06-15 - 99b8cd0 - lavu 52.36.100
James Almer's avatar
James Almer committed
954 955 956 957 958 959
  Add AVRIPEMD:
   av_ripemd_alloc()
   av_ripemd_init()
   av_ripemd_update()
   av_ripemd_final()

960 961 962
2013-06-10 - 82ef670 - lavu 52.35.101 - hmac.h
  Add AV_HMAC_SHA224, AV_HMAC_SHA256, AV_HMAC_SHA384, AV_HMAC_SHA512

963
2013-06-04 - 30b491f / fc962d4 - lavu 52.35.100 / 52.13.0 - mem.h
964 965
  Add av_realloc_array and av_reallocp_array

966 967 968 969 970 971 972
2013-05-30 - 682b227 - lavu 52.35.100
  Add AVSHA512:
   av_sha512_alloc()
   av_sha512_init()
   av_sha512_update()
   av_sha512_final()

973
2013-05-24 - 8d4e969 / 129bb23 - lavfi 3.10.0 / 3.70.100 - avfilter.h
974 975 976 977 978 979
  Add support for slice multithreading to lavfi. Filters supporting threading
  are marked with AVFILTER_FLAG_SLICE_THREADS.
  New fields AVFilterContext.thread_type, AVFilterGraph.thread_type and
  AVFilterGraph.nb_threads (accessible directly or through AVOptions) may be
  used to configure multithreading.

980
2013-05-24 - fe40a9f / 2a6eaea - lavu 52.12.0 / 52.34.100 - cpu.h
981 982
  Add av_cpu_count() function for getting the number of logical CPUs.

983
2013-05-24 - 0c25c39 / b493847 - lavc 55.7.0 / 55.12.100 - avcodec.h
984 985
  Add picture_structure to AVCodecParserContext.

986
2013-05-17 - 3a751ea - lavu 52.33.100 - opt.h
987 988
  Add AV_OPT_TYPE_COLOR value to AVOptionType enum.

989
2013-05-13 - e398416 - lavu 52.31.100 - mem.h
990 991
  Add av_dynarray2_add().

992
2013-05-12 - 1776177 - lavfi 3.65.100
993 994
  Add AVFILTER_FLAG_SUPPORT_TIMELINE* filter flags.

995
2013-04-19 - 380cfce - lavc 55.4.100
996 997
  Add AV_CODEC_PROP_TEXT_SUB property for text based subtitles codec.

998
2013-04-18 - 7c1a002 - lavf 55.3.100
999 1000 1001
  The matroska demuxer can now output proper verbatim ASS packets. It will
  become the default starting lavf 56.0.100.

1002
2013-04-10 - af0d270 - lavu 25.26.100 - avutil.h,opt.h
1003 1004 1005
  Add av_int_list_length()
  and av_opt_set_int_list().

1006
2013-03-30 - 5c73645 - lavu 52.24.100 - samplefmt.h
1007 1008
  Add av_samples_alloc_array_and_samples().

1009
2013-03-29 - ef7b6b4 - lavf 55.1.100 - avformat.h
1010 1011
  Add av_guess_frame_rate()

1012
2013-03-20 - 8d928a9 - lavu 52.22.100 - opt.h
1013 1014
  Add AV_OPT_TYPE_DURATION value to AVOptionType enum.

1015
2013-03-17 - 7aa9af5 - lavu 52.20.100 - opt.h
1016 1017
  Add AV_OPT_TYPE_VIDEO_RATE value to AVOptionType enum.

1018 1019 1020

-------- 8< --------- FFmpeg 1.2 was cut here -------- 8< ---------

1021
2013-03-07 - 9767ec6 - lavu 52.18.100 - avstring.h,bprint.h
Stefano Sabatini's avatar
Stefano Sabatini committed
1022 1023
  Add av_escape() and av_bprint_escape() API.

1024
2013-02-24 - b59cd08 - lavfi 3.41.100 - buffersink.h
1025 1026
  Add sample_rates field to AVABufferSinkParams.

1027 1028 1029
2013-01-17 - a1a707f - lavf 54.61.100
  Add av_codec_get_tag2().

1030 1031 1032
2013-01-01 - 2eb2e17 - lavfi 3.34.100
  Add avfilter_get_audio_buffer_ref_from_arrays_channels.

1033 1034 1035

-------- 8< --------- FFmpeg 1.1 was cut here -------- 8< ---------

1036
2012-12-20 - 34de47aa - lavfi 3.29.100 - avfilter.h
1037 1038 1039
  Add AVFilterLink.channels, avfilter_link_get_channels()
  and avfilter_ref_get_channels().

1040
2012-12-15 - 96d815fc - lavc 54.80.100 - avcodec.h
1041 1042
  Add pkt_size field to AVFrame.

1043
2012-11-25 - c70ec631 - lavu 52.9.100 - opt.h
1044 1045 1046 1047 1048 1049 1050 1051
  Add the following convenience functions to opt.h:
   av_opt_get_image_size
   av_opt_get_pixel_fmt
   av_opt_get_sample_fmt
   av_opt_set_image_size
   av_opt_set_pixel_fmt
   av_opt_set_sample_fmt

1052
2012-11-17 - 4cd74c81 - lavu 52.8.100 - bprint.h
1053 1054
  Add av_bprint_strftime().

1055
2012-11-15 - 92648107 - lavu 52.7.100 - opt.h
1056 1057
  Add av_opt_get_key_value().

1058
2012-11-13 - 79456652 - lavfi 3.23.100 - avfilter.h
1059 1060
  Add channels field to AVFilterBufferRefAudioProps.

1061
2012-11-03 - 481fdeee - lavu 52.3.100 - opt.h
1062 1063
  Add AV_OPT_TYPE_SAMPLE_FMT value to AVOptionType enum.

1064
2012-10-21 - 6fb2fd8 - lavc  54.68.100 - avcodec.h
1065 1066 1067 1068 1069 1070
                       lavfi  3.20.100 - avfilter.h
  Add AV_PKT_DATA_STRINGS_METADATA side data type, used to transmit key/value
  strings between AVPacket and AVFrame, and add metadata field to
  AVCodecContext (which shall not be accessed by users; see AVFrame metadata
  instead).

1071
2012-09-27 - a70b493 - lavd 54.3.100 - version.h
1072 1073
  Add LIBAVDEVICE_IDENT symbol.

1074
2012-09-27 - a70b493 - lavfi 3.18.100 - version.h
1075 1076
  Add LIBAVFILTER_IDENT symbol.

1077
2012-09-27 - a70b493 - libswr 0.16.100 - version.h
1078 1079 1080
  Add LIBSWRESAMPLE_VERSION, LIBSWRESAMPLE_BUILD
  and LIBSWRESAMPLE_IDENT symbols.

1081 1082 1083

-------- 8< --------- FFmpeg 1.0 was cut here -------- 8< ---------

1084
2012-09-06 - 29e972f - lavu 51.72.100 - parseutils.h
1085 1086 1087 1088 1089
  Add av_small_strptime() time parsing function.

  Can be used as a stripped-down replacement for strptime(), on
  systems which do not support it.

1090 1091 1092 1093
2012-08-25 - 2626cc4 - lavf 54.28.100
  Matroska demuxer now identifies SRT subtitles as AV_CODEC_ID_SUBRIP instead
  of AV_CODEC_ID_TEXT.

1094
2012-08-13 - 5c0d8bc - lavfi 3.8.100 - avfilter.h
1095 1096 1097
  Add avfilter_get_class() function, and priv_class field to AVFilter
  struct.

1098
2012-08-12 - a25346e - lavu 51.69.100 - opt.h
1099 1100
  Add AV_OPT_FLAG_FILTERING_PARAM symbol in opt.h.

1101
2012-07-31 - 23fc4dd - lavc 54.46.100
1102 1103
  Add channels field to AVFrame.

1104
2012-07-30 - f893904 - lavu 51.66.100
1105 1106 1107
  Add av_get_channel_description()
  and av_get_standard_channel_layout() functions.

1108
2012-07-21 - 016a472 - lavc 54.43.100
1109 1110
  Add decode_error_flags field to AVFrame.

1111
2012-07-20 - b062936 - lavf 54.18.100
1112 1113
  Add avformat_match_stream_specifier() function.

1114
2012-07-14 - f49ec1b - lavc 54.38.100 - avcodec.h
1115 1116 1117
  Add metadata to AVFrame, and the accessor functions
  av_frame_get_metadata() and av_frame_set_metadata().

1118
2012-07-10 - 0e003d8 - lavc 54.33.100
1119 1120
  Add av_fast_padded_mallocz().

1121
2012-07-10 - 21d5609 - lavfi 3.2.0 - avfilter.h
1122 1123
  Add init_opaque() callback to AVFilter struct.

1124
2012-06-26 - e6674e4 - lavu 51.63.100 - imgutils.h
1125 1126 1127 1128 1129
  Add functions to libavutil/imgutils.h:
  av_image_get_buffer_size()
  av_image_fill_arrays()
  av_image_copy_to_buffer()

1130
2012-06-24 - c41899a - lavu 51.62.100 - version.h
1131 1132
  version moved from avutil.h to version.h

1133
2012-04-11 - 359abb1 - lavu 51.58.100 - error.h
1134 1135 1136
  Add av_make_error_string() and av_err2str() utilities to
  libavutil/error.h.

1137
2012-06-05 - 62b39d4 - lavc 54.24.100
1138 1139
  Add pkt_duration field to AVFrame.

1140
2012-05-24 - f2ee065 - lavu 51.54.100
1141 1142 1143
  Move AVPALETTE_SIZE and AVPALETTE_COUNT macros from
  libavcodec/avcodec.h to libavutil/pixfmt.h.

1144
2012-05-14 - 94a9ac1 - lavf 54.5.100
1145 1146
  Add av_guess_sample_aspect_ratio() function.

1147
2012-04-20 - 65fa7bc - lavfi 2.70.100
1148 1149
  Add avfilter_unref_bufferp() to avfilter.h.

1150
2012-04-13 - 162e400 - lavfi 2.68.100
1151 1152
  Install libavfilter/asrc_abuffer.h public header.

1153
2012-03-26 - a67d9cf - lavfi 2.66.100
1154 1155
  Add avfilter_fill_frame_from_{audio_,}buffer_ref() functions.

1156
2013-05-15 - ff46809 / e6c4ac7 - lavu 52.32.100 / 52.11.0 - pixdesc.h
1157 1158
  Replace PIX_FMT_* flags with AV_PIX_FMT_FLAG_*.

1159
2013-04-03 - 6fc58a8 / 507b1e4 - lavc 55.7.100 / 55.4.0 - avcodec.h
1160 1161
  Add field_order to AVCodecParserContext.

1162
2013-04-19 - f4b05cd / 5e83d9a - lavc 55.5.100 / 55.2.0 - avcodec.h
1163 1164
  Add CODEC_FLAG_UNALIGNED to allow decoders to produce unaligned output.

1165 1166
2013-04-11 - lavfi 3.53.100 / 3.8.0
  231fd44 / 38f0c07 - Move all content from avfiltergraph.h to avfilter.h. Deprecate
1167
            avfilterhraph.h, user applications should include just avfilter.h
1168
  86070b8 / bc1a985 - Add avfilter_graph_alloc_filter(), deprecate avfilter_open() and
1169
            avfilter_graph_add_filter().
1170
  4fde705 / 1113672 - Add AVFilterContext.graph pointing to the AVFilterGraph that contains the
1171
            filter.
1172 1173 1174 1175 1176
  710b0aa / 48a5ada - Add avfilter_init_str(), deprecate avfilter_init_filter().
  46de9ba / 1ba95a9 - Add avfilter_init_dict().
  16fc24b / 7cdd737 - Add AVFilter.flags field and AVFILTER_FLAG_DYNAMIC_{INPUTS,OUTPUTS} flags.
  f4db6bf / 7e8fe4b - Add avfilter_pad_count() for counting filter inputs/outputs.
  835cc0f / fa2a34c - Add avfilter_next(), deprecate av_filter_next().
1177 1178
            Deprecate avfilter_uninit().

1179 1180
2013-04-09 - lavfi 3.51.100 / 3.7.0 - avfilter.h
  0594ef0 / b439c99 - Add AVFilter.priv_class for exporting filter options through the
1181
            AVOptions API in the similar way private options work in lavc and lavf.
1182
  44d4488 / 8114c10 - Add avfilter_get_class().
1183 1184
  Switch all filters to use AVOptions.

1185
2013-03-19 - 17ebef2 / 2c328a9 - lavu 52.20.100 / 52.9.0 - pixdesc.h
1186 1187
  Add av_pix_fmt_count_planes() function for counting planes in a pixel format.

1188
2013-03-16 - ecade98 / 42c7c61 - lavfi 3.47.100 / 3.6.0
1189 1190
  Add AVFilterGraph.nb_filters, deprecate AVFilterGraph.filter_count.

1191 1192 1193
2013-03-08 - Reference counted buffers - lavu 52.8.0, lavc 55.0.100 / 55.0.0, lavf 55.0.100 / 55.0.0,
lavd 54.4.100 / 54.0.0, lavfi 3.5.0
  36099df / 8e401db, 532f31a / 1cec062 - add a new API for reference counted buffers and buffer
1194
                     pools (new header libavutil/buffer.h).
1195
  2653e12 / 1afddbe - add AVPacket.buf to allow reference counting for the AVPacket data.
1196 1197
            Add av_packet_from_data() function for constructing packets from
            av_malloc()ed data.
1198
  c4e8821 / 7ecc2d4 - move AVFrame from lavc to lavu (new header libavutil/frame.h), add
1199 1200
            AVFrame.buf/extended_buf to allow reference counting for the AVFrame
            data. Add new API for working with reference-counted AVFrames.
1201
  80e9e63 / 759001c - add the refcounted_frames field to AVCodecContext to make audio and
1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214
            video decoders return reference-counted frames. Add get_buffer2()
            callback to AVCodecContext which allocates reference-counted frames.
            Add avcodec_default_get_buffer2() as the default get_buffer2()
            implementation.
            Deprecate AVCodecContext.get_buffer() / release_buffer() /
            reget_buffer(), avcodec_default_get_buffer(),
            avcodec_default_reget_buffer(), avcodec_default_release_buffer().
            Remove avcodec_default_free_buffers(), which should not have ever
            been called from outside of lavc.
            Deprecate the following AVFrame fields:
                * base -- is now stored in AVBufferRef
                * reference, type, buffer_hints -- are unnecessary in the new API
                * hwaccel_picture_private, owner, thread_opaque -- should not
1215
                  have been accessed from outside of lavc
1216 1217 1218
                * qscale_table, qstride, qscale_type, mbskip_table, motion_val,
                  mb_type, dct_coeff, ref_index -- mpegvideo-specific tables,
                  which are not exported anymore.
1219
  a05a44e / 7e35037 - switch libavfilter to use AVFrame instead of AVFilterBufferRef. Add
1220 1221 1222 1223 1224
            av_buffersrc_add_frame(), deprecate av_buffersrc_buffer().
            Add av_buffersink_get_frame() and av_buffersink_get_samples(),
            deprecate av_buffersink_read() and av_buffersink_read_samples().
            Deprecate AVFilterBufferRef and all functions for working with it.

1225
2013-03-17 - 6c17ff8 / 12c5c1d - lavu 52.19.100 / 52.8.0 - avstring.h
1226 1227
  Add av_isdigit, av_isgraph, av_isspace, av_isxdigit.

1228
2013-02-23 - 71cf094 / 9f12235 - lavfi 3.40.100 / 3.4.0 - avfiltergraph.h
1229 1230 1231
  Add resample_lavr_opts to AVFilterGraph for setting libavresample options
  for auto-inserted resample filters.

1232
2013-01-25 - e7e14bc / 38c1466 - lavu 52.17.100 / 52.7.0 - dict.h
1233 1234 1235
  Add av_dict_parse_string() to set multiple key/value pairs at once from a
  string.

1236
2013-01-25 - 25be630 / b85a5e8 - lavu 52.16.100 / 52.6.0 - avstring.h
1237 1238
  Add av_strnstr()

1239
2013-01-15 - e7e0186 / 8ee288d - lavu 52.15.100 / 52.5.0 - hmac.h
1240 1241
  Add AVHMAC.

1242
2013-01-13 - 8ee7b38 / 44e065d - lavc 54.87.100 / 54.36.0 - vdpau.h
1243 1244
  Add AVVDPAUContext struct for VDPAU hardware-accelerated decoding.

1245
2013-01-12 - dae382b / 169fb94 - lavu 52.14.100 / 52.4.0 - pixdesc.h
1246 1247
  Add AV_PIX_FMT_VDPAU flag.

1248
2013-01-07 - 249fca3 / 074a00d - lavr 1.1.0
1249 1250 1251
  Add avresample_set_channel_mapping() for input channel reordering,
  duplication, and silencing.

1252 1253 1254 1255
2012-12-29 - lavu 52.13.100 / 52.3.0 - avstring.h
  2ce43b3 / d8fd06c - Add av_basename() and av_dirname().
  e13d5e9 / c1a02e8 - Add av_pix_fmt_get_chroma_sub_sample and deprecate
                      avcodec_get_chroma_sub_sample.
1256

1257
2012-11-11 - 03b0787 / 5980f5d - lavu 52.6.100 / 52.2.0 - audioconvert.h
1258 1259
  Rename audioconvert.h to channel_layout.h. audioconvert.h is now deprecated.

1260
2012-10-21 - e3a91c5 / a893655 - lavu 51.77.100 / 51.45.0 - error.h
1261 1262
  Add AVERROR_EXPERIMENTAL

1263
2012-10-12 - a33ed6b / d2fcb35 - lavu 51.76.100 / 51.44.0 - pixdesc.h
1264 1265 1266 1267
  Add functions for accessing pixel format descriptors.
  Accessing the av_pix_fmt_descriptors array directly is now
  deprecated.

1268
2012-10-11 - f391e40 / 9a92aea - lavu 51.75.100 / 51.43.0 - aes.h, md5.h, sha.h, tree.h
1269 1270
  Add functions for allocating the opaque contexts for the algorithms,

1271
2012-10-10 - de31814 / b522000 - lavf 54.32.100 / 54.18.0 - avio.h
1272 1273
  Add avio_closep to complement avio_close.

1274
2012-10-08 - ae77266 / 78071a1 - lavu 51.74.100 / 51.42.0 - pixfmt.h
1275 1276 1277 1278 1279 1280 1281
  Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*.
  To provide backwards compatibility, PixelFormat is now #defined as
  AVPixelFormat.
  Note that this can break user code that includes pixfmt.h and uses the
  'PixelFormat' identifier. Such code should either #undef PixelFormat
  or stop using the PixelFormat name.

1282
2012-10-05 - 55c49af / e7ba5b1 - lavr 1.0.0 - avresample.h
1283 1284 1285 1286
  Data planes parameters to avresample_convert() and
  avresample_read() are now uint8_t** instead of void**.
  Libavresample is now stable.

1287 1288 1289
2012-09-26 - 3ba0dab7 / 1384df64 - lavf 54.29.101 / 56.06.3 - avformat.h
  Add AVFormatContext.avoid_negative_ts.

1290
2012-09-24 - 46a3595 / a42aada - lavc 54.59.100 / 54.28.0 - avcodec.h
1291 1292 1293
  Add avcodec_free_frame(). This function must now
  be used for freeing an AVFrame.

1294
2012-09-12 - e3e09f2 / 8919fee - lavu 51.73.100 / 51.41.0 - audioconvert.h
1295 1296
  Added AV_CH_LOW_FREQUENCY_2 channel mask value.

1297
2012-09-04 - b21b5b0 / 686a329 - lavu 51.71.100 / 51.40.0 - opt.h
1298 1299 1300
  Reordered the fields in default_val in AVOption, changed which
  default_val field is used for which AVOptionType.

1301
2012-08-30 - 98298eb / a231832 - lavc 54.54.101 / 54.26.1 - avcodec.h
1302 1303 1304
  Add codec descriptor properties AV_CODEC_PROP_LOSSY and
  AV_CODEC_PROP_LOSSLESS.

1305 1306 1307 1308
2012-08-18 - lavc 54.26 - avcodec.h
  Add codec descriptors for accessing codec properties without having
  to refer to a specific decoder or encoder.

1309
  f5f3684 / c223d79 - Add an AVCodecDescriptor struct and functions
1310
            avcodec_descriptor_get() and avcodec_descriptor_next().
1311 1312
  f5f3684 / 51efed1 - Add AVCodecDescriptor.props and AV_CODEC_PROP_INTRA_ONLY.
  6c180b3 / 91e59fe - Add avcodec_descriptor_get_by_name().
1313

1314
2012-08-08 - f5f3684 / 987170c - lavu 51.68.100 / 51.38.0 - dict.h
1315 1316
  Add av_dict_count().

1317
2012-08-07 - 7a72695 / 104e10f - lavc 54.51.100 / 54.25.0 - avcodec.h
1318
  Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*.
1319 1320 1321 1322
  To provide backwards compatibility, CodecID is now #defined as AVCodecID.
  Note that this can break user code that includes avcodec.h and uses the
  'CodecID' identifier. Such code should either #undef CodecID or stop using the
  CodecID name.
1323

1324
2012-08-03 - e776ee8 / 239fdf1 - lavu 51.66.101 / 51.37.1 - cpu.h
1325 1326 1327 1328
                       lsws 2.1.1   - swscale.h
  Rename AV_CPU_FLAG_MMX2  ---> AV_CPU_FLAG_MMXEXT.
  Rename SWS_CPU_CAPS_MMX2 ---> SWS_CPU_CAPS_MMXEXT.

1329
2012-07-29 - 7c26761 / 681ed00 - lavf 54.22.100 / 54.13.0 - avformat.h
1330 1331
  Add AVFMT_FLAG_NOBUFFER for low latency use cases.

1332
2012-07-10 - fbe0245 / f3e5e6f - lavu 51.65.100 / 51.37.0
1333 1334
  Add av_malloc_array() and av_mallocz_array()

1335
2012-06-22 - e847f41 / d3d3a32 - lavu 51.61.100 / 51.34.0
1336 1337
  Add av_usleep()

1338
2012-06-20 - 4da42eb / ae0a301 - lavu 51.60.100 / 51.33.0
1339 1340
  Move av_gettime() to libavutil, add libavutil/time.h

1341
2012-06-09 - 82edf67 / 3971be0 - lavr 0.0.3
1342 1343
  Add a parameter to avresample_build_matrix() for Dolby/DPLII downmixing.

1344
2012-06-12 - c7b9eab / 9baeff9 - lavfi 2.79.100 / 2.23.0 - avfilter.h
1345 1346 1347
  Add AVFilterContext.nb_inputs/outputs. Deprecate
  AVFilterContext.input/output_count.

1348
2012-06-12 - c7b9eab / 84b9fbe - lavfi 2.79.100 / 2.22.0 - avfilter.h
1349 1350 1351 1352
  Add avfilter_pad_get_type() and avfilter_pad_get_name(). Those
  should now be used instead of accessing AVFilterPad members
  directly.

1353
2012-06-12 - 3630a07 / b0f0dfc - lavu 51.57.100 / 51.32.0 - audioconvert.h
1354 1355 1356
  Add av_get_channel_layout_channel_index(), av_get_channel_name()
  and av_channel_layout_extract_channel().

1357
2012-05-25 - 53ce990 / 154486f - lavu 51.55.100 / 51.31.0 - opt.h
1358 1359
  Add av_opt_set_bin()

1360
2012-05-15 - lavfi 2.74.100 / 2.17.0
1361
  Add support for audio filters
1362
  61930bd / ac71230, 1cbf7fb / a2cd9be - add video/audio buffer sink in a new installed
1363
                    header buffersink.h
1364
  1cbf7fb / 720c6b7 - add av_buffersrc_write_frame(), deprecate
1365
            av_vsrc_buffer_add_frame()
1366 1367 1368
  61930bd / ab16504 - add avfilter_copy_buf_props()
  61930bd / 9453c9e - add extended_data to AVFilterBuffer
  61930bd / 1b8c927 - add avfilter_get_audio_buffer_ref_from_arrays()
1369

1370 1371 1372
2012-05-09 - lavu 51.53.100 / 51.30.0 - samplefmt.h
  61930bd / 142e740 - add av_samples_copy()
  61930bd / 6d7f617 - add av_samples_set_silence()
1373

1374
2012-05-09 - 61930bd / a5117a2 - lavc 54.21.101 / 54.13.1
1375 1376 1377 1378 1379
  For audio formats with fixed frame size, the last frame
  no longer needs to be padded with silence, libavcodec
  will handle this internally (effectively all encoders
  behave as if they had CODEC_CAP_SMALL_LAST_FRAME set).

1380
2012-05-07 - 653d117 / 828bd08 - lavc 54.20.100 / 54.13.0 - avcodec.h
1381 1382
  Add sample_rate and channel_layout fields to AVFrame.

1383
2012-05-01 - 2330eb1 / 4010d72 - lavr 0.0.1
1384 1385
  Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8.

1386
2012-04-25 - e890b68 / 3527a73 - lavu 51.48.100 / 51.29.0 - cpu.h
1387 1388
  Add av_parse_cpu_flags()

1389
2012-04-24 - 3ead79e / c8af852 - lavr 0.0.0
Justin Ruggles's avatar
Justin Ruggles committed
1390 1391
  Add libavresample audio conversion library

1392
2012-04-20 - 3194ab7 / 0c0d1bc - lavu 51.47.100 / 51.28.0 - audio_fifo.h
1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403
  Add audio FIFO functions:
    av_audio_fifo_free()
    av_audio_fifo_alloc()
    av_audio_fifo_realloc()
    av_audio_fifo_write()
    av_audio_fifo_read()
    av_audio_fifo_drain()
    av_audio_fifo_reset()
    av_audio_fifo_size()
    av_audio_fifo_space()

1404 1405
2012-04-14 - lavfi 2.70.100 / 2.16.0 - avfiltergraph.h
  7432bcf / d7bcc71 Add avfilter_graph_parse2().
1406

1407
2012-04-08 - 6bfb304 / 4d693b0 - lavu 51.46.100 / 51.27.0 - samplefmt.h
1408 1409
  Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()

1410
2012-03-21 - b75c67d - lavu 51.43.100
1411 1412
  Add bprint.h for bprint API.

1413
2012-02-21 - 9cbf17e - lavc 54.4.100
1414 1415
  Add av_get_pcm_codec() function.

1416
2012-02-16 - 560b224 - libswr 0.7.100
1417 1418
  Add swr_set_matrix() function.

1419
2012-02-09 - c28e7af - lavu 51.39.100
1420 1421 1422
  Add a new installed header libavutil/timestamp.h with timestamp
  utilities.

1423
2012-02-06 - 70ffda3 - lavu 51.38.100
1424 1425
  Add av_parse_ratio() function to parseutils.h.

1426
2012-02-06 - 70ffda3 - lavu 51.38.100
1427 1428
  Add AV_LOG_MAX_OFFSET macro to log.h.

1429
2012-02-02 - 0eaa123 - lavu 51.37.100
1430 1431
  Add public timecode helpers.

1432
2012-01-24 - 0c3577b - lavfi 2.60.100
1433 1434
  Add avfilter_graph_dump.

1435
2012-03-20 - 0ebd836 / 3c90cc2 - lavfo 54.2.0
1436 1437 1438
  Deprecate av_read_packet(), use av_read_frame() with
  AVFMT_FLAG_NOPARSE | AVFMT_FLAG_NOFILLIN in AVFormatContext.flags

1439 1440 1441
2012-03-05 - lavc 54.10.100 / 54.8.0
  f095391 / 6699d07 Add av_get_exact_bits_per_sample()
  f095391 / 9524cf7 Add av_get_audio_frame_duration()
1442

1443
2012-03-04 - 2af8f2c / 44fe77b - lavc 54.8.100 / 54.7.0 - avcodec.h
1444 1445
  Add av_codec_is_encoder/decoder().

1446
2012-03-01 - 1eb7f39 / 442c132 - lavc 54.5.100 / 54.3.0 - avcodec.h
1447 1448
  Add av_packet_shrink_side_data.

1449
2012-02-29 - 79ae084 / dd2a4bc - lavf 54.2.100 / 54.2.0 - avformat.h
1450 1451 1452
  Add AVStream.attached_pic and AV_DISPOSITION_ATTACHED_PIC,
  used for dealing with attached pictures/cover art.

1453
2012-02-25 - 305e4b3 / c9bca80 - lavu 51.41.100 / 51.24.0 - error.h
1454
  Add AVERROR_UNKNOWN
1455
  NOTE: this was backported to 0.8
1456

1457
2012-02-20 - eadd426 / e9cda85 - lavc 54.2.100 / 54.2.0
1458 1459
  Add duration field to AVCodecParserContext

1460
2012-02-20 - eadd426 / 0b42a93 - lavu 51.40.100 / 51.23.1 - mathematics.h
1461 1462
  Add av_rescale_q_rnd()

1463
2012-02-08 - f2b20b7 / 38d5533 - lavu 51.38.101 / 51.22.1 - pixdesc.h
1464 1465
  Add PIX_FMT_PSEUDOPAL flag.

1466
2012-02-08 - f2b20b7 / 52f82a1 - lavc 54.2.100 / 54.1.0
1467 1468
  Add avcodec_encode_video2() and deprecate avcodec_encode_video().

1469
2012-02-01 - 4c677df / 316fc74 - lavc 54.1.0
1470 1471 1472 1473
  Add av_fast_padded_malloc() as alternative for av_realloc() when aligned
  memory is required. The buffer will always have FF_INPUT_BUFFER_PADDING_SIZE
  zero-padded bytes at the end.

1474
2012-01-31 - a369a6b / dd6d3b0 - lavf 54.1.0
1475
  Add avformat_get_riff_video_tags() and avformat_get_riff_audio_tags().
1476
  NOTE: this was backported to 0.8
1477

1478
2012-01-31 - a369a6b / af08d9a - lavc 54.1.0
1479
  Add avcodec_is_open() function.
1480
  NOTE: this was backported to 0.8
1481

1482
2012-01-30 - 151ecc2 / 8b93312 - lavu 51.36.100 / 51.22.0 - intfloat.h
1483 1484
  Add a new installed header libavutil/intfloat.h with int/float punning
  functions.
1485
  NOTE: this was backported to 0.8
1486

1487 1488
2012-01-25 - lavf 53.31.100 / 53.22.0
  3c5fe5b / f1caf01 Allow doing av_write_frame(ctx, NULL) for flushing possible
1489 1490 1491 1492
          buffered data within a muxer. Added AVFMT_ALLOW_FLUSH for
          muxers supporting it (av_write_frame makes sure it is called
          only for muxers with this flag).

1493
2012-01-15 - lavc 53.56.105 / 53.34.0
1494
  New audio encoding API:
1495
  67f5650 / b2c75b6 Add CODEC_CAP_VARIABLE_FRAME_SIZE capability for use by audio
1496
          encoders.
1497 1498
  67f5650 / 5ee5fa0 Add avcodec_fill_audio_frame() as a convenience function.
  67f5650 / b2c75b6 Add avcodec_encode_audio2() and deprecate avcodec_encode_audio().
1499 1500
          Add AVCodec.encode2().

1501
2012-01-12 - b18e17e / 3167dc9 - lavfi 2.59.100 / 2.15.0
1502 1503
  Add a new installed header -- libavfilter/version.h -- with version macros.

1504 1505 1506

-------- 8< --------- FFmpeg 0.9 was cut here -------- 8< ---------

1507 1508 1509
2011-12-08 - a502939 - lavfi 2.52.0
  Add av_buffersink_poll_frame() to buffersink.h.

1510
2011-12-08 - 26c6fec - lavu 51.31.0
1511 1512
  Add av_log_format_line.

1513
2011-12-03 - 976b095 - lavu 51.30.0
1514 1515
  Add AVERROR_BUG.

1516
2011-11-24 - 573ffbb - lavu 51.28.1
1517 1518
  Add av_get_alt_sample_fmt() to samplefmt.h.

1519
2011-11-03 - 96949da - lavu 51.23.0
1520 1521
  Add av_strcasecmp() and av_strncasecmp() to avstring.h.

1522 1523 1524
2011-10-20 - b35e9e1 - lavu 51.22.0
  Add av_strtok() to avstring.h.

1525
2012-01-03 - ad1c8dd / b73ec05 - lavu 51.34.100 / 51.21.0
1526
  Add av_popcount64
1527

1528
2011-12-18 - 7c29313 / 8400b12 - lavc 53.46.1 / 53.28.1
1529 1530
  Deprecate AVFrame.age. The field is unused.

1531
2011-12-12 - 8bc7fe4 / 5266045 - lavf 53.25.0 / 53.17.0
1532
  Add avformat_close_input().
1533 1534
  Deprecate av_close_input_file() and av_close_input_stream().

1535
2011-12-09 - c59b80c / b2890f5 - lavu 51.32.0 / 51.20.0 - audioconvert.h
1536 1537
  Expand the channel layout list.

1538
2011-12-02 - e4de716 / 0eea212 - lavc 53.40.0 / 53.25.0
1539 1540 1541 1542 1543 1544
  Add nb_samples and extended_data fields to AVFrame.
  Deprecate AVCODEC_MAX_AUDIO_FRAME_SIZE.
  Deprecate avcodec_decode_audio3() in favor of avcodec_decode_audio4().
  avcodec_decode_audio4() writes output samples to an AVFrame, which allows
  audio decoders to use get_buffer().

1545
2011-12-04 - e4de716 / 560f773 - lavc 53.40.0 / 53.24.0
1546 1547 1548 1549 1550
  Change AVFrame.data[4]/base[4]/linesize[4]/error[4] to [8] at next major bump.
  Change AVPicture.data[4]/linesize[4] to [8] at next major bump.
  Change AVCodecContext.error[4] to [8] at next major bump.
  Add AV_NUM_DATA_POINTERS to simplify the bump transition.

1551 1552 1553
2011-11-24 - lavu 51.29.0 / 51.19.0
  92afb43 / bd97b2e - add planar RGB pixel formats
  92afb43 / 6b0768e - add PIX_FMT_PLANAR and PIX_FMT_RGB pixel descriptions
1554

1555
2011-11-23 - 8e576d5 / bbb46f3 - lavu 51.27.0 / 51.18.0
1556 1557 1558
  Add av_samples_get_buffer_size(), av_samples_fill_arrays(), and
  av_samples_alloc(), to samplefmt.h.

1559
2011-11-23 - 8e576d5 / 8889cc4 - lavu 51.27.0 / 51.17.0
1560 1561
  Add planar sample formats and av_sample_fmt_is_planar() to samplefmt.h.

1562
2011-11-19 - dbb38bc / f3a29b7 - lavc 53.36.0 / 53.21.0
1563 1564 1565 1566 1567 1568 1569
  Move some AVCodecContext fields to a new private struct, AVCodecInternal,
  which is accessed from a new field, AVCodecContext.internal.
  - fields moved:
      AVCodecContext.internal_buffer       --> AVCodecInternal.buffer
      AVCodecContext.internal_buffer_count --> AVCodecInternal.buffer_count
      AVCodecContext.is_copy               --> AVCodecInternal.is_copy

1570
2011-11-16 - 8709ba9 / 6270671 - lavu 51.26.0 / 51.16.0
1571 1572
  Add av_timegm()

1573
2011-11-13 - lavf 53.21.0 / 53.15.0
1574 1575
  New interrupt callback API, allowing per-AVFormatContext/AVIOContext
  interrupt callbacks.
1576
  5f268ca / 6aa0b98 Add AVIOInterruptCB struct and the interrupt_callback field to
1577
          AVFormatContext.
1578
  5f268ca / 1dee0ac Add avio_open2() with additional parameters. Those are
1579 1580 1581 1582
          an interrupt callback and an options AVDictionary.
          This will allow passing AVOptions to protocols after lavf
          54.0.

1583
2011-11-06 - 13b7781 / ba04ecf - lavu 51.24.0 / 51.14.0
1584 1585
  Add av_strcasecmp() and av_strncasecmp() to avstring.h.

1586
2011-11-06 - 13b7781 / 07b172f - lavu 51.24.0 / 51.13.0
1587 1588
  Add av_toupper()/av_tolower()

1589
2011-11-05 - d8cab5c / b6d08f4 - lavf 53.19.0 / 53.13.0
1590
  Add avformat_network_init()/avformat_network_deinit()
1591

1592
2011-10-27 - 6faf0a2 / 512557b - lavc 53.24.0 / 53.15.0
1593 1594 1595
  Remove avcodec_parse_frame.
  Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY.

1596
2011-10-19 - d049257 / 569129a - lavf 53.17.0 / 53.10.0
1597 1598
  Add avformat_new_stream(). Deprecate av_new_stream().

1599
2011-10-13 - 91eb1b1 / b631fba - lavf 53.16.0 / 53.9.0
1600 1601
  Add AVFMT_NO_BYTE_SEEK AVInputFormat flag.

1602
2011-10-12 - lavu 51.21.0 / 51.12.0
1603 1604
  AVOptions API rewrite.

1605
  - f884ef0 / 145f741 FF_OPT_TYPE* renamed to AV_OPT_TYPE_*
1606
  - new setting/getting functions with slightly different semantics:
1607
        f884ef0 / dac66da av_set_string3 -> av_opt_set
1608 1609 1610 1611
                av_set_double  -> av_opt_set_double
                av_set_q       -> av_opt_set_q
                av_set_int     -> av_opt_set_int

1612
        f884ef0 / 41d9d51 av_get_string  -> av_opt_get
1613 1614 1615 1616
                av_get_double  -> av_opt_get_double
                av_get_q       -> av_opt_get_q
                av_get_int     -> av_opt_get_int

1617 1618
  - f884ef0 / 8c5dcaa trivial rename av_next_option -> av_opt_next
  - f884ef0 / 641c7af new functions - av_opt_child_next, av_opt_child_class_next
1619 1620
    and av_opt_find2()

1621
2011-09-22 - a70e787 - lavu 51.17.0
1622 1623
  Add av_x_if_null().

1624
2011-09-18 - 645cebb - lavc 53.16.0
1625 1626
  Add showall flag2

1627
2011-09-16 - ea8de10 - lavfi 2.42.0
1628 1629
  Add avfilter_all_channel_layouts.

1630
2011-09-16 - 9899037 - lavfi 2.41.0
1631 1632 1633 1634 1635 1636 1637
  Rename avfilter_all_* function names to avfilter_make_all_*.

  In particular, apply the renames:
  avfilter_all_formats         -> avfilter_make_all_formats
  avfilter_all_channel_layouts -> avfilter_make_all_channel_layouts
  avfilter_all_packing_formats -> avfilter_make_all_packing_formats

1638
2011-09-12 - 4381bdd - lavfi 2.40.0
1639 1640
  Change AVFilterBufferRefAudioProps.sample_rate type from uint32_t to int.

1641
2011-09-12 - 2c03174 - lavfi 2.40.0
1642 1643 1644
  Simplify signature for avfilter_get_audio_buffer(), make it
  consistent with avfilter_get_video_buffer().

1645
2011-09-06 - 4f7dfe1 - lavfi 2.39.0
1646 1647
  Rename libavfilter/vsink_buffer.h to libavfilter/buffersink.h.

1648
2011-09-06 - c4415f6 - lavfi 2.38.0
1649 1650 1651 1652 1653 1654
  Unify video and audio sink API.

  In particular, add av_buffersink_get_buffer_ref(), deprecate
  av_vsink_buffer_get_video_buffer_ref() and change the value for the
  opaque field passed to the abuffersink init function.

1655
2011-09-04 - 61e2e29 - lavu 51.16.0
1656 1657
  Add av_asprintf().

1658
2011-08-22 - dacd827 - lavf 53.10.0
1659 1660
  Add av_find_program_from_stream().

1661
2011-08-20 - 69e2c1a - lavu 51.13.0
1662 1663
  Add av_get_media_type_string().

1664
2011-09-03 - 1889c67 / fb4ca26 - lavc 53.13.0
1665
                       lavf 53.11.0
1666 1667 1668
                       lsws  2.1.0
  Add {avcodec,avformat,sws}_get_class().

1669
2011-08-03 - 1889c67 / c11fb82 - lavu 51.15.0
1670 1671
  Add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find() function.

1672
2011-08-14 - 323b930 - lavu 51.12.0
1673 1674
  Add av_fifo_peek2(), deprecate av_fifo_peek().

1675 1676
2011-08-26 - lavu 51.14.0 / 51.9.0
  - 976a8b2 / add41de..976a8b2 / abc78a5 Do not include intfloat_readwrite.h,
1677
    mathematics.h, rational.h, pixfmt.h, or log.h from avutil.h.
1678

1679
2011-08-16 - 27fbe31 / 48f9e45 - lavf 53.11.0 / 53.8.0
1680 1681
  Add avformat_query_codec().

1682
2011-08-16 - 27fbe31 / bca06e7 - lavc 53.11.0
1683 1684
  Add avcodec_get_type().

1685
2011-08-06 - 0cb233c / 2f63440 - lavf 53.7.0
1686 1687
  Add error_recognition to AVFormatContext.

1688
2011-08-02 - 1d186e9 / 9d39cbf - lavc 53.9.1
1689 1690
  Add AV_PKT_FLAG_CORRUPT AVPacket flag.

1691
2011-07-16 - b57df29 - lavfi 2.27.0
1692 1693 1694 1695 1696 1697 1698
  Add audio packing negotiation fields and helper functions.

  In particular, add AVFilterPacking enum, planar, in_packings and
  out_packings fields to AVFilterLink, and the functions:
  avfilter_set_common_packing_formats()
  avfilter_all_packing_formats()

1699
2011-07-10 - 3602ad7 / a67c061 - lavf 53.6.0
1700
  Add avformat_find_stream_info(), deprecate av_find_stream_info().
1701
  NOTE: this was backported to 0.7
1702

1703
2011-07-10 - 3602ad7 / 0b950fe - lavc 53.8.0
1704
  Add avcodec_open2(), deprecate avcodec_open().
1705 1706
  NOTE: this was backported to 0.7

1707 1708
  Add avcodec_alloc_context3. Deprecate avcodec_alloc_context() and
  avcodec_alloc_context2().
1709

1710 1711 1712
2011-07-01 - b442ca6 - lavf 53.5.0 - avformat.h
  Add function av_get_output_timestamp().

1713 1714 1715
2011-06-28 - 5129336 - lavu 51.11.0 - avutil.h
  Define the AV_PICTURE_TYPE_NONE value in AVPictureType enum.

1716 1717 1718 1719 1720 1721 1722

-------- 8< --------- FFmpeg 0.7 was cut here -------- 8< ---------



-------- 8< --------- FFmpeg 0.8 was cut here -------- 8< ---------

1723
2011-06-19 - fd2c0a5 - lavfi 2.23.0 - avfilter.h
1724 1725 1726 1727 1728 1729 1730 1731
  Add layout negotiation fields and helper functions.

  In particular, add in_chlayouts and out_chlayouts to AVFilterLink,
  and the functions:
  avfilter_set_common_sample_formats()
  avfilter_set_common_channel_layouts()
  avfilter_all_channel_layouts()

1732
2011-06-19 - 527ca39 - lavfi 2.22.0 - AVFilterFormats
1733 1734 1735 1736 1737 1738 1739
  Change type of AVFilterFormats.formats from int * to int64_t *,
  and update formats handling API accordingly.

  avfilter_make_format_list() still takes a int32_t array and converts
  it to int64_t. A new function, avfilter_make_format64_list(), that
  takes int64_t arrays has been added.

1740
2011-06-19 - 44f669e - lavfi 2.21.0 - vsink_buffer.h
1741 1742
  Add video sink buffer and vsink_buffer.h public header.

1743
2011-06-12 - 9fdf772 - lavfi 2.18.0 - avcodec.h
1744 1745 1746
  Add avfilter_get_video_buffer_ref_from_frame() function in
  libavfilter/avcodec.h.

1747
2011-06-12 - c535494 - lavfi 2.17.0 - avfiltergraph.h
1748 1749
  Add avfilter_inout_alloc() and avfilter_inout_free() functions.

1750
2011-06-12 - 6119b23 - lavfi 2.16.0 - avfilter_graph_parse()
1751 1752
  Change avfilter_graph_parse() signature.

1753
2011-06-23 - 686959e / 67e9ae1 - lavu 51.10.0 / 51.8.0 - attributes.h
1754 1755
  Add av_printf_format().

1756
2011-06-16 - 2905e3f / 05e84c9, 2905e3f / 25de595 - lavf 53.4.0 / 53.2.0 - avformat.h
1757 1758 1759 1760
  Add avformat_open_input and avformat_write_header().
  Deprecate av_open_input_stream, av_open_input_file,
  AVFormatParameters and av_write_header.

1761
2011-06-16 - 2905e3f / 7e83e1c, 2905e3f / dc59ec5 - lavu 51.9.0 / 51.7.0 - opt.h
1762 1763 1764 1765
  Add av_opt_set_dict() and av_opt_find().
  Deprecate av_find_opt().
  Add AV_DICT_APPEND flag.

1766
2011-06-10 - 45fb647 / cb7c11c - lavu 51.6.0 - opt.h
1767 1768
  Add av_opt_flag_is_set().

1769
2011-06-10 - c381960 - lavfi 2.15.0 - avfilter_get_audio_buffer_ref_from_arrays
1770 1771
  Add avfilter_get_audio_buffer_ref_from_arrays() to avfilter.h.

1772
2011-06-09 - f9ecb84 / d9f80ea - lavu 51.8.0 - AVMetadata
1773 1774 1775 1776
  Move AVMetadata from lavf to lavu and rename it to
  AVDictionary -- new installed header dict.h.
  All av_metadata_* functions renamed to av_dict_*.

1777
2011-06-07 - d552f61 / a6703fa - lavu 51.8.0 - av_get_bytes_per_sample()
1778 1779 1780
  Add av_get_bytes_per_sample() in libavutil/samplefmt.h.
  Deprecate av_get_bits_per_sample_fmt().

1781
2011-06-05 - f956924 / b39b062 - lavu 51.8.0 - opt.h
1782
  Add av_opt_free convenience function.
1783

1784
2011-06-06 - 95a0242 - lavfi 2.14.0 - AVFilterBufferRefAudioProps
1785 1786 1787 1788
  Remove AVFilterBufferRefAudioProps.size, and use nb_samples in
  avfilter_get_audio_buffer() and avfilter_default_get_audio_buffer() in
  place of size.

1789
2011-06-06 - 0bc2cca - lavu 51.6.0 - av_samples_alloc()
1790 1791 1792
  Switch nb_channels and nb_samples parameters order in
  av_samples_alloc().

1793
2011-06-06 - e1c7414 - lavu 51.5.0 - av_samples_*
1794 1795 1796
  Change the data layout created by av_samples_fill_arrays() and
  av_samples_alloc().

1797
2011-06-06 - 27bcf55 - lavfi 2.13.0 - vsrc_buffer.h
1798 1799 1800
  Make av_vsrc_buffer_add_video_buffer_ref() accepts an additional
  flags parameter in input.

1801
2011-06-03 - e977ca2 - lavfi 2.12.0 - avfilter_link_free()
1802 1803
  Add avfilter_link_free() function.

1804
2011-06-02 - 5ad38d9 - lavu 51.4.0 - av_force_cpu_flags()
1805 1806
  Add av_cpu_flags() in libavutil/cpu.h.

1807
2011-05-28 - e71f260 - lavu 51.3.0 - pixdesc.h
1808 1809 1810
  Add av_get_pix_fmt_name() in libavutil/pixdesc.h, and deprecate
  avcodec_get_pix_fmt_name() in libavcodec/avcodec.h in its favor.

1811
2011-05-25 - 39e4206 / 30315a8 - lavf 53.3.0 - avformat.h
1812 1813
  Add fps_probe_size to AVFormatContext.

1814
2011-05-22 - 5ecdfd0 - lavf 53.2.0 - avformat.h
1815 1816 1817
  Introduce avformat_alloc_output_context2() and deprecate
  avformat_alloc_output_context().

1818
2011-05-22 - 83db719 - lavfi 2.10.0 - vsrc_buffer.h
1819 1820
  Make libavfilter/vsrc_buffer.h public.

1821
2011-05-19 - c000a9f - lavfi 2.8.0 - avcodec.h
1822 1823
  Add av_vsrc_buffer_add_frame() to libavfilter/avcodec.h.

1824
2011-05-14 - 9fdf772 - lavfi 2.6.0 - avcodec.h
1825 1826
  Add avfilter_get_video_buffer_ref_from_frame() to libavfilter/avcodec.h.

1827
2011-05-18 - 75a37b5 / 64150ff - lavc 53.7.0 - AVCodecContext.request_sample_fmt
1828 1829
  Add request_sample_fmt field to AVCodecContext.

1830
2011-05-10 - 59eb12f / 188dea1 - lavc 53.6.0 - avcodec.h
1831 1832 1833 1834 1835
  Deprecate AVLPCType and the following fields in
  AVCodecContext: lpc_coeff_precision, prediction_order_method,
  min_partition_order, max_partition_order, lpc_type, lpc_passes.
  Corresponding FLAC encoder options should be used instead.

1836
2011-05-07 - 9fdf772 - lavfi 2.5.0 - avcodec.h
1837 1838 1839
  Add libavfilter/avcodec.h header and avfilter_copy_frame_props()
  function.

1840
2011-05-07 - 18ded93 - lavc 53.5.0 - AVFrame
1841 1842
  Add format field to AVFrame.

1843
2011-05-07 - 22333a6 - lavc 53.4.0 - AVFrame
1844 1845
  Add width and height fields to AVFrame.

1846
2011-05-01 - 35fe66a - lavfi 2.4.0 - avfilter.h
1847 1848 1849
  Rename AVFilterBufferRefVideoProps.pixel_aspect to
  sample_aspect_ratio.

1850
2011-05-01 - 77e9dee - lavc 53.3.0 - AVFrame
1851 1852
  Add a sample_aspect_ratio field to AVFrame.

1853
2011-05-01 - 1ba5727 - lavc 53.2.0 - AVFrame
1854 1855
  Add a pkt_pos field to AVFrame.

1856
2011-04-29 - 35ceaa7 - lavu 51.2.0 - mem.h
1857 1858 1859
  Add av_dynarray_add function for adding
  an element to a dynamic array.

1860
2011-04-26 - d7e5aeb / bebe72f - lavu 51.1.0 - avutil.h
1861 1862 1863 1864
  Add AVPictureType enum and av_get_picture_type_char(), deprecate
  FF_*_TYPE defines and av_get_pict_type_char() defined in
  libavcodec/avcodec.h.

1865
2011-04-26 - d7e5aeb / 10d3940 - lavfi 2.3.0 - avfilter.h
1866 1867
  Add pict_type and key_frame fields to AVFilterBufferRefVideo.

1868
2011-04-26 - d7e5aeb / 7a11c82 - lavfi 2.2.0 - vsrc_buffer
1869 1870
  Add sample_aspect_ratio fields to vsrc_buffer arguments

1871
2011-04-21 - 8772156 / 94f7451 - lavc 53.1.0 - avcodec.h
1872 1873
  Add CODEC_CAP_SLICE_THREADS for codecs supporting sliced threading.

1874 1875
2011-04-15 - lavc 52.120.0 - avcodec.h
  AVPacket structure got additional members for passing side information:
1876 1877
    c407984 / 4de339e introduce side information for AVPacket
    c407984 / 2d8591c make containers pass palette change in AVPacket
1878

1879 1880
2011-04-12 - lavf 52.107.0 - avio.h
  Avio cleanup, part II - deprecate the entire URLContext API:
1881 1882
    c55780d / 175389c add avio_check as a replacement for url_exist
    9891004 / ff1ec0c add avio_pause and avio_seek_time as replacements
1883
            for _av_url_read_fseek/fpause
1884
    d4d0932 / cdc6a87 deprecate av_protocol_next(), avio_enum_protocols
1885
            should be used instead.
1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909
    c88caa5 / 80c6e23 rename url_set_interrupt_cb->avio_set_interrupt_cb.
    c88caa5 / f87b1b3 rename open flags: URL_* -> AVIO_*
    d4d0932 / f8270bb add avio_enum_protocols.
    d4d0932 / 5593f03 deprecate URLProtocol.
    d4d0932 / c486dad deprecate URLContext.
    d4d0932 / 026e175 deprecate the typedef for URLInterruptCB
    c88caa5 / 8e76a19 deprecate av_register_protocol2.
    11d7841 / b840484 deprecate URL_PROTOCOL_FLAG_NESTED_SCHEME
    11d7841 / 1305d93 deprecate av_url_read_seek
    11d7841 / fa104e1 deprecate av_url_read_pause
    434f248 / 727c7aa deprecate url_get_filename().
    434f248 / 5958df3 deprecate url_max_packet_size().
    434f248 / 1869ea0 deprecate url_get_file_handle().
    434f248 / 32a97d4 deprecate url_filesize().
    434f248 / e52a914 deprecate url_close().
    434f248 / 58a48c6 deprecate url_seek().
    434f248 / 925e908 deprecate url_write().
    434f248 / dce3756 deprecate url_read_complete().
    434f248 / bc371ac deprecate url_read().
    434f248 / 0589da0 deprecate url_open().
    434f248 / 62eaaea deprecate url_connect.
    434f248 / 5652bb9 deprecate url_alloc.
    434f248 / 333e894 deprecate url_open_protocol
    434f248 / e230705 deprecate url_poll and URLPollEntry
1910

1911 1912
2011-04-08 - lavf 52.106.0 - avformat.h
  Minor avformat.h cleanup:
1913 1914
    d4d0932 / a9bf9d8 deprecate av_guess_image2_codec
    d4d0932 / c3675df rename avf_sdp_create->av_sdp_create
1915

1916 1917
2011-04-03 - lavf 52.105.0 - avio.h
  Large-scale renaming/deprecating of AVIOContext-related functions:
1918 1919 1920 1921 1922
    2cae980 / 724f6a0 deprecate url_fdopen
    2cae980 / 403ee83 deprecate url_open_dyn_packet_buf
    2cae980 / 6dc7d80 rename url_close_dyn_buf       -> avio_close_dyn_buf
    2cae980 / b92c545 rename url_open_dyn_buf        -> avio_open_dyn_buf
    2cae980 / 8978fed introduce an AVIOContext.seekable field as a replacement for
1923
            AVIOContext.is_streamed and url_is_streamed()
1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934
    1caa412 / b64030f deprecate get_checksum()
    1caa412 / 4c4427a deprecate init_checksum()
    2fd41c9 / 4ec153b deprecate udp_set_remote_url/get_local_port
    4fa0e24 / 933e90a deprecate av_url_read_fseek/fpause
    4fa0e24 / 8d9769a deprecate url_fileno
    0fecf26 / b7f2fdd rename put_flush_packet -> avio_flush
    0fecf26 / 35f1023 deprecate url_close_buf
    0fecf26 / 83fddae deprecate url_open_buf
    0fecf26 / d9d86e0 rename url_fprintf -> avio_printf
    0fecf26 / 59f65d9 deprecate url_setbufsize
    6947b0c / 3e68b3b deprecate url_ferror
1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954
    e8bb2e2 deprecate url_fget_max_packet_size
    76aa876 rename url_fsize -> avio_size
    e519753 deprecate url_fgetc
    655e45e deprecate url_fgets
    a2704c9 rename url_ftell -> avio_tell
    e16ead0 deprecate get_strz() in favor of avio_get_str
    0300db8,2af07d3 rename url_fskip -> avio_skip
    6b4aa5d rename url_fseek -> avio_seek
    61840b4 deprecate put_tag
    22a3212 rename url_fopen/fclose -> avio_open/close.
    0ac8e2b deprecate put_nbyte
    77eb550 rename put_byte          -> avio_w8
                   put_[b/l]e<type>  -> avio_w[b/l]<type>
                   put_buffer        -> avio_write
    b7effd4 rename get_byte          -> avio_r8,
                   get_[b/l]e<type>  -> avio_r[b/l]<type>
                   get_buffer        -> avio_read
    b3db9ce deprecate get_partial_buffer
    8d9ac96 rename av_alloc_put_byte -> avio_alloc_context

1955
2011-03-25 - 27ef7b1 / 34b47d7 - lavc 52.115.0 - AVCodecContext.audio_service_type
1956 1957
  Add audio_service_type field to AVCodecContext.

1958
2011-03-17 - e309fdc - lavu 50.40.0 - pixfmt.h
1959 1960
  Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats

1961 1962 1963 1964 1965
2011-03-02 - 863c471 - lavf  52.103.0 - av_pkt_dump2, av_pkt_dump_log2
  Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
  source stream timebase for outputting timestamps. Deprecate
  av_pkt_dump and av_pkt_dump_log.

1966 1967 1968 1969 1970 1971
2011-02-20 - e731b8d - lavf  52.102.0 - avio.h
  * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the
              original, and move it to a private header so it is no longer
              part of our public API. Instead, use av_alloc_put_byte().
  * ae628ec - rename ByteIOContext to AVIOContext.

1972
2011-02-16 - 09d171b - lavf  52.101.0 - avformat.h
1973
                       lavu  52.39.0  - parseutils.h
1974 1975 1976
  * 610219a - Add av_ prefix to dump_format().
  * f6c7375 - Replace parse_date() in lavf with av_parse_time() in lavu.
  * ab0287f - Move find_info_tag from lavf to lavu and add av_prefix to it.
1977

1978 1979 1980
2011-02-15 - lavu 52.38.0 - merge libavcore
  libavcore is merged back completely into libavutil

1981 1982 1983
2011-02-10 - 55bad0c - lavc 52.113.0 - vbv_delay
  Add vbv_delay field to AVCodecContext

1984 1985 1986
2011-02-14 - 24a83bd - lavf 52.100.0 - AV_DISPOSITION_CLEAN_EFFECTS
  Add AV_DISPOSITION_CLEAN_EFFECTS disposition flag.

1987 1988 1989
2011-02-14 - 910b5b8 - lavfi 1.76.0 - AVFilterLink sample_aspect_ratio
  Add sample_aspect_ratio field to AVFilterLink.

1990 1991 1992
2011-02-10 - 12c14cd - lavf 52.99.0 - AVStream.disposition
  Add AV_DISPOSITION_HEARING_IMPAIRED and AV_DISPOSITION_VISUAL_IMPAIRED.

1993
2011-02-09 - c0b102c - lavc 52.112.0 - avcodec_thread_init()
1994 1995 1996
  Deprecate avcodec_thread_init()/avcodec_thread_free() use; instead
  set thread_count before calling avcodec_open.

1997
2011-02-09 - 37b00b4 - lavc 52.111.0 - threading API
1998 1999 2000 2001
  Add CODEC_CAP_FRAME_THREADS with new restrictions on get_buffer()/
  release_buffer()/draw_horiz_band() callbacks for appropriate codecs.
  Add thread_type and active_thread_type fields to AVCodecContext.

2002
2011-02-08 - 3940caa - lavf 52.98.0 - av_probe_input_buffer
2003 2004 2005
  Add av_probe_input_buffer() to avformat.h for probing format from a
  ByteIOContext.

Ronald S. Bultje's avatar
Ronald S. Bultje committed
2006
2011-02-06 - fe174fc - lavf 52.97.0 - avio.h
2007 2008
  Add flag for non-blocking protocols: URL_FLAG_NONBLOCK

2009 2010 2011
2011-02-04 - f124b08 - lavf 52.96.0 - avformat_free_context()
  Add avformat_free_context() in avformat.h.

2012 2013 2014
2011-02-03 - f5b82f4 - lavc 52.109.0 - add CODEC_ID_PRORES
  Add CODEC_ID_PRORES to avcodec.h.

2015 2016 2017
2011-02-03 - fe9a3fb - lavc 52.109.0 - H.264 profile defines
  Add defines for H.264 * Constrained Baseline and Intra profiles

2018 2019 2020 2021 2022 2023 2024 2025 2026
2011-02-02 - lavf 52.95.0
  * 50196a9 - add a new installed header version.h.
  * 4efd5cf, dccbd97, 93b78d1 - add several variants of public
    avio_{put,get}_str* functions.  Deprecate corresponding semi-public
    {put,get}_str*.

2011-02-02 - dfd2a00 - lavu 50.37.0 - log.h
  Make av_dlog public.

2027
2011-01-31 - 7b3ea55 - lavfi 1.76.0 - vsrc_buffer
2028 2029
  Add sample_aspect_ratio fields to vsrc_buffer arguments

2030
2011-01-31 - 910b5b8 - lavfi 1.75.0 - AVFilterLink sample_aspect_ratio
2031 2032
  Add sample_aspect_ratio field to AVFilterLink.

2033
2011-01-15 - a242ac3 - lavfi 1.74.0 - AVFilterBufferRefAudioProps
2034 2035
  Rename AVFilterBufferRefAudioProps.samples_nb to nb_samples.

2036
2011-01-14 - 7f88a5b - lavf 52.93.0 - av_metadata_copy()
2037 2038
  Add av_metadata_copy() in avformat.h.

2039
2011-01-07 - 81c623f - lavc 52.107.0 - deprecate reordered_opaque
2040 2041
  Deprecate reordered_opaque in favor of pkt_pts/dts.

2042
2011-01-07 - 1919fea - lavc 52.106.0 - pkt_dts
2043 2044 2045
  Add pkt_dts to AVFrame, this will in the future allow multithreading decoders
  to not mess up dts.

2046
2011-01-07 - 393cbb9 - lavc 52.105.0 - pkt_pts
2047 2048
  Add pkt_pts to AVFrame.

2049
2011-01-07 - 060ec0a - lavc 52.104.0 - av_get_profile_name()
2050 2051
  Add av_get_profile_name to libavcodec/avcodec.h.

2052
2010-12-27 - 0ccabee - lavfi 1.71.0 - AV_PERM_NEG_LINESIZES
2053 2054
  Add AV_PERM_NEG_LINESIZES in avfilter.h.

2055
2010-12-27 - 9128ae0 - lavf 52.91.0 - av_find_best_stream()
2056 2057
  Add av_find_best_stream to libavformat/avformat.h.

2058
2010-12-27 - 107a7e3 - lavf 52.90.0
2059 2060 2061
  Add AVFMT_NOSTREAMS flag for formats with no streams,
  like e.g. text metadata.

2062
2010-12-22 - 0328b9e - lavu 50.36.0 - file.h
2063 2064
  Add functions av_file_map() and av_file_unmap() in file.h.

2065
2010-12-19 - 0bc55f5 - lavu 50.35.0 - error.h
2066 2067 2068 2069 2070 2071 2072 2073 2074 2075
  Add "not found" error codes:
  AVERROR_DEMUXER_NOT_FOUND
  AVERROR_MUXER_NOT_FOUND
  AVERROR_DECODER_NOT_FOUND
  AVERROR_ENCODER_NOT_FOUND
  AVERROR_PROTOCOL_NOT_FOUND
  AVERROR_FILTER_NOT_FOUND
  AVERROR_BSF_NOT_FOUND
  AVERROR_STREAM_NOT_FOUND

2076
2010-12-09 - c61cdd0 - lavcore 0.16.0 - avcore.h
2077 2078 2079
  Move AV_NOPTS_VALUE, AV_TIME_BASE, AV_TIME_BASE_Q symbols from
  avcodec.h to avcore.h.

2080
2010-12-04 - 16cfc96 - lavc 52.98.0 - CODEC_CAP_NEG_LINESIZES
2081 2082
  Add CODEC_CAP_NEG_LINESIZES codec capability flag in avcodec.h.

2083
2010-12-04 - bb4afa1 - lavu 50.34.0 - av_get_pix_fmt_string()
2084 2085 2086
  Deprecate avcodec_pix_fmt_string() in favor of
  pixdesc.h/av_get_pix_fmt_string().

2087
2010-12-04 - 4da12e3 - lavcore 0.15.0 - av_image_alloc()
2088 2089
  Add av_image_alloc() to libavcore/imgutils.h.

2090
2010-12-02 - 037be76 - lavfi 1.67.0 - avfilter_graph_create_filter()
2091 2092
  Add function avfilter_graph_create_filter() in avfiltergraph.h.

2093
2010-11-25 - 4723bc2 - lavfi 1.65.0 - avfilter_get_video_buffer_ref_from_arrays()
2094 2095
  Add function avfilter_get_video_buffer_ref_from_arrays() in
  avfilter.h.
2096

2097
2010-11-21 - 176a615 - lavcore 0.14.0 - audioconvert.h
2098 2099 2100 2101 2102 2103 2104 2105
  Add a public audio channel API in audioconvert.h, and deprecate the
  corresponding functions in libavcodec:
  avcodec_get_channel_name()
  avcodec_get_channel_layout()
  avcodec_get_channel_layout_string()
  avcodec_channel_layout_num_channels()
  and the CH_* macros defined in libavcodec/avcodec.h.

2106
2010-11-21 - 6bfc268 - lavf 52.85.0 - avformat.h
2107 2108
  Add av_append_packet().

2109
2010-11-21 - a08d918 - lavc 52.97.0 - avcodec.h
2110 2111
  Add av_grow_packet().

2112
2010-11-17 - 0985e1a - lavcore 0.13.0 - parseutils.h
2113 2114
  Add av_parse_color() declared in libavcore/parseutils.h.

2115
2010-11-13 - cb2c971 - lavc 52.95.0 - AVCodecContext
2116 2117 2118
  Add AVCodecContext.subtitle_header and AVCodecContext.subtitle_header_size
  fields.

2119
2010-11-13 - 5aaea02 - lavfi 1.62.0 - avfiltergraph.h
2120 2121
  Make avfiltergraph.h public.

2122
2010-11-13 - 4fcbb2a - lavfi 1.61.0 - avfiltergraph.h
2123 2124 2125 2126 2127 2128 2129
  Remove declarations from avfiltergraph.h for the functions:
  avfilter_graph_check_validity()
  avfilter_graph_config_links()
  avfilter_graph_config_formats()
  which are now internal.
  Use avfilter_graph_config() instead.

2130
2010-11-08 - d2af720 - lavu 50.33.0 - eval.h
2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141
  Deprecate functions:
  av_parse_and_eval_expr(),
  av_parse_expr(),
  av_eval_expr(),
  av_free_expr(),
  in favor of the functions:
  av_expr_parse_and_eval(),
  av_expr_parse(),
  av_expr_eval(),
  av_expr_free().

2142
2010-11-08 - 24de0ed - lavfi 1.59.0 - avfilter_free()
2143 2144 2145
  Rename avfilter_destroy() to avfilter_free().
  This change breaks libavfilter API/ABI.

2146
2010-11-07 - 1e80a0e - lavfi 1.58.0 - avfiltergraph.h
2147 2148 2149
  Remove graphparser.h header, move AVFilterInOut and
  avfilter_graph_parse() declarations to libavfilter/avfiltergraph.h.

2150
2010-11-07 - 7313132 - lavfi 1.57.0 - AVFilterInOut
2151 2152 2153
  Rename field AVFilterInOut.filter to AVFilterInOut.filter_ctx.
  This change breaks libavfilter API.

2154
2010-11-04 - 97dd1e4 - lavfi 1.56.0 - avfilter_graph_free()
2155 2156 2157
  Rename avfilter_graph_destroy() to avfilter_graph_free().
  This change breaks libavfilter API/ABI.

2158
2010-11-04 - e15aeea - lavfi 1.55.0 - avfilter_graph_alloc()
2159 2160
  Add avfilter_graph_alloc() to libavfilter/avfiltergraph.h.

2161
2010-11-02 - 6f84cd1 - lavcore 0.12.0 - av_get_bits_per_sample_fmt()
2162 2163 2164
  Add av_get_bits_per_sample_fmt() to libavcore/samplefmt.h and
  deprecate av_get_bits_per_sample_format().

2165
2010-11-02 - d63e456 - lavcore 0.11.0 - samplefmt.h
Stefano Sabatini's avatar
Stefano Sabatini committed
2166 2167 2168 2169 2170 2171 2172 2173 2174
  Add sample format functions in libavcore/samplefmt.h:
  av_get_sample_fmt_name(),
  av_get_sample_fmt(),
  av_get_sample_fmt_string(),
  and deprecate the corresponding libavcodec/audioconvert.h functions:
  avcodec_get_sample_fmt_name(),
  avcodec_get_sample_fmt(),
  avcodec_sample_fmt_string().

2175
2010-11-02 - 262d1c5 - lavcore 0.10.0 - samplefmt.h
2176 2177 2178
  Define enum AVSampleFormat in libavcore/samplefmt.h, deprecate enum
  SampleFormat.

2179
2010-10-16 - 2a24df9 - lavfi 1.52.0 - avfilter_graph_config()
2180 2181
  Add the function avfilter_graph_config() in avfiltergraph.h.

2182
2010-10-15 - 03700d3 - lavf 52.83.0 - metadata API
2183 2184 2185 2186
  Change demuxers to export metadata in generic format and
  muxers to accept generic format. Deprecate the public
  conversion API.

2187
2010-10-10 - 867ae7a - lavfi 1.49.0 - AVFilterLink.time_base
2188 2189
  Add time_base field to AVFilterLink.

2190
2010-09-27 - c85eef4 - lavu 50.31.0 - av_set_options_string()
2191 2192 2193
  Move av_set_options_string() from libavfilter/parseutils.h to
  libavutil/opt.h.

2194
2010-09-27 - acc0490 - lavfi 1.47.0 - AVFilterLink
2195 2196 2197
  Make the AVFilterLink fields srcpad and dstpad store the pointers to
  the source and destination pads, rather than their indexes.

2198
2010-09-27 - 372e288 - lavu 50.30.0 - av_get_token()
2199 2200 2201
  Move av_get_token() from libavfilter/parseutils.h to
  libavutil/avstring.h.

2202
2010-09-26 - 635d4ae - lsws 0.12.0 - swscale.h
2203 2204
  Add the functions sws_alloc_context() and sws_init_context().

2205
2010-09-26 - 6ed0404 - lavu 50.29.0 - opt.h
2206 2207
  Move libavcodec/opt.h to libavutil/opt.h.

2208
2010-09-24 - 1c1c80f - lavu 50.28.0 - av_log_set_flags()
2209 2210 2211 2212
  Default of av_log() changed due to many problems to the old no repeat
  detection. Read the docs of AV_LOG_SKIP_REPEATED in log.h before
  enabling it for your app!.

2213
2010-09-24 - f66eb58 - lavc 52.90.0 - av_opt_show2()
2214 2215
  Deprecate av_opt_show() in favor or av_opt_show2().

2216
2010-09-14 - bc6f0af - lavu 50.27.0 - av_popcount()
2217 2218
  Add av_popcount() to libavutil/common.h.

2219
2010-09-08 - c6c98d0 - lavu 50.26.0 - av_get_cpu_flags()
2220 2221
  Add av_get_cpu_flags().

2222
2010-09-07 - 34017fd - lavcore 0.9.0 - av_image_copy()
2223 2224
  Add av_image_copy().

2225
2010-09-07 - 9686abb - lavcore 0.8.0 - av_image_copy_plane()
2226 2227
  Add av_image_copy_plane().

2228
2010-09-07 - 9b7269e - lavcore 0.7.0 - imgutils.h
2229 2230 2231
  Adopt hierarchical scheme for the imgutils.h function names,
  deprecate the old names.

2232
2010-09-04 - 7160bb7 - lavu 50.25.0 - AV_CPU_FLAG_*
2233 2234 2235
  Deprecate the FF_MM_* flags defined in libavcodec/avcodec.h in favor
  of the AV_CPU_FLAG_* flags defined in libavutil/cpu.h.

2236
2010-08-26 - 5da19b5 - lavc 52.87.0 - avcodec_get_channel_layout()
2237 2238
  Add avcodec_get_channel_layout() in audioconvert.h.

2239
2010-08-20 - e344336 - lavcore 0.6.0 - av_fill_image_max_pixsteps()
2240 2241
  Rename av_fill_image_max_pixstep() to av_fill_image_max_pixsteps().

2242
2010-08-18 - a6ddf8b - lavcore 0.5.0 - av_fill_image_max_pixstep()
2243 2244
  Add av_fill_image_max_pixstep() in imgutils.h.

2245
2010-08-17 - 4f2d2e4 - lavu 50.24.0 - AV_NE()
2246 2247
  Add the AV_NE macro.

2248
2010-08-17 - ad2c950 - lavfi 1.36.0 - audio framework
2249 2250 2251
  Implement AVFilterBufferRefAudioProps struct for audio properties,
  get_audio_buffer(), filter_samples() functions and related changes.

2252
2010-08-12 - 81c1eca - lavcore 0.4.0 - av_get_image_linesize()
2253 2254
  Add av_get_image_linesize() in imgutils.h.

2255
2010-08-11 - c1db7bf - lavfi 1.34.0 - AVFilterBufferRef
2256 2257 2258 2259
  Resize data and linesize arrays in AVFilterBufferRef to 8.

  This change breaks libavfilter API/ABI.

2260
2010-08-11 - 9f08d80 - lavc 52.85.0 - av_picture_data_copy()
2261 2262
  Add av_picture_data_copy in avcodec.h.

2263
2010-08-11 - 84c0386 - lavfi 1.33.0 - avfilter_open()
2264 2265 2266 2267 2268 2269
  Change avfilter_open() signature:
  AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name) ->
  int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);

  This change breaks libavfilter API/ABI.

2270
2010-08-11 - cc80caf - lavfi 1.32.0 - AVFilterBufferRef
2271 2272 2273
  Add a type field to AVFilterBufferRef, and move video specific
  properties to AVFilterBufferRefVideoProps.

Stefano Sabatini's avatar
Stefano Sabatini committed
2274
  This change breaks libavfilter API/ABI.
2275

2276
2010-08-07 - 5d4890d - lavfi 1.31.0 - AVFilterLink
2277 2278 2279 2280 2281
  Rename AVFilterLink fields:
  AVFilterLink.srcpic    ->  AVFilterLink.src_buf
  AVFilterLink.cur_pic   ->  AVFilterLink.cur_buf
  AVFilterLink.outpic    ->  AVFilterLink.out_buf

2282
2010-08-07 - 7fce481 - lavfi 1.30.0
2283 2284 2285 2286 2287
  Rename functions and fields:
  avfilter_(un)ref_pic       -> avfilter_(un)ref_buffer
  avfilter_copy_picref_props -> avfilter_copy_buffer_ref_props
  AVFilterBufferRef.pic      -> AVFilterBufferRef.buffer

2288
2010-08-07 - ecc8dad - lavfi 1.29.0 - AVFilterBufferRef
2289 2290
  Rename AVFilterPicRef to AVFilterBufferRef.

2291
2010-08-07 - d54e094 - lavfi 1.28.0 - AVFilterBuffer
2292 2293
  Move format field from AVFilterBuffer to AVFilterPicRef.

2294
2010-08-06 - bf176f5 - lavcore 0.3.0 - av_check_image_size()
2295 2296 2297
  Deprecate avcodec_check_dimensions() in favor of the function
  av_check_image_size() defined in libavcore/imgutils.h.

2298
2010-07-30 - 56b5e9d - lavfi 1.27.0 - AVFilterBuffer
2299 2300 2301 2302 2303
  Increase size of the arrays AVFilterBuffer.data and
  AVFilterBuffer.linesize from 4 to 8.

  This change breaks libavfilter ABI.

2304
2010-07-29 - e7bd48a - lavcore 0.2.0 - imgutils.h
2305 2306 2307
  Add functions av_fill_image_linesizes() and
  av_fill_image_pointers(), declared in libavcore/imgutils.h.

2308
2010-07-27 - 126b638 - lavcore 0.1.0 - parseutils.h
2309 2310 2311 2312 2313
  Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
  defined in libavcodec in favor of the newly added functions
  av_parse_video_size() and av_parse_video_rate() declared in
  libavcore/parseutils.h.

2314
2010-07-23 - 4485247 - lavu 50.23.0 - mathematics.h
2315 2316
  Add the M_PHI constant definition.

2317
2010-07-22 - bdab614 - lavfi 1.26.0 - media format generalization
2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336
  Add a type field to AVFilterLink.

  Change the field types:
  enum PixelFormat format   -> int format   in AVFilterBuffer
  enum PixelFormat *formats -> int *formats in AVFilterFormats
  enum PixelFormat *format  -> int format   in AVFilterLink

  Change the function signatures:
  AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); ->
  AVFilterFormats *avfilter_make_format_list(const int *fmts);

  int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); ->
  int avfilter_add_format    (AVFilterFormats **avff, int fmt);

  AVFilterFormats *avfilter_all_colorspaces(void); ->
  AVFilterFormats *avfilter_all_formats    (enum AVMediaType type);

  This change breaks libavfilter API/ABI.

2337
2010-07-21 - aac6ca6 - lavcore 0.0.0
2338 2339
  Add libavcore.

2340
2010-07-17 - b5c582f - lavfi 1.25.0 - AVFilterBuffer
2341 2342
  Remove w and h fields from AVFilterBuffer.

2343
2010-07-17 - f0d77b2 - lavfi 1.24.0 - AVFilterBuffer
2344 2345
  Rename AVFilterPic to AVFilterBuffer.

2346
2010-07-17 - 57fe80f - lavf 52.74.0 - url_fskip()
2347 2348
  Make url_fskip() return an int error code instead of void.

2349
2010-07-11 - 23940f1 - lavc 52.83.0
2350
  Add AVCodecContext.lpc_type and AVCodecContext.lpc_passes fields.
2351 2352 2353
  Add AVLPCType enum.
  Deprecate AVCodecContext.use_lpc.

2354
2010-07-11 - e1d7c88 - lavc 52.82.0 - avsubtitle_free()
2355 2356 2357
  Add a function for free the contents of a AVSubtitle generated by
  avcodec_decode_subtitle.

2358
2010-07-11 - b91d08f - lavu 50.22.0 - bswap.h and intreadwrite.h
2359 2360
  Make the bswap.h and intreadwrite.h API public.

2361
2010-07-08 - ce1cd1c - lavu 50.21.0 - pixdesc.h
2362 2363
  Rename read/write_line() to av_read/write_image_line().

2364
2010-07-07 - 4d508e4 - lavfi 1.21.0 - avfilter_copy_picref_props()
2365
  Add avfilter_copy_picref_props().
2366

2367
2010-07-03 - 2d525ef - lavc 52.79.0
2368 2369
  Add FF_COMPLIANCE_UNOFFICIAL and change all instances of
  FF_COMPLIANCE_INOFFICIAL to use FF_COMPLIANCE_UNOFFICIAL.
2370

2371
2010-07-02 - 89eec74 - lavu 50.20.0 - lfg.h
2372 2373 2374
  Export av_lfg_init(), av_lfg_get(), av_mlfg_get(), and av_bmg_get() through
  lfg.h.

2375
2010-06-28 - a52e2c3 - lavfi 1.20.1 - av_parse_color()
2376 2377 2378
  Extend av_parse_color() syntax, make it accept an alpha value specifier and
  set the alpha value to 255 by default.

2379
2010-06-22 - 735cf6b - lavf 52.71.0 - URLProtocol.priv_data_size, priv_data_class
2380
  Add priv_data_size and priv_data_class to URLProtocol.
2381

2382
2010-06-22 - ffbb289 - lavf 52.70.0 - url_alloc(), url_connect()
2383
  Add url_alloc() and url_connect().
2384

2385
2010-06-22 - 9b07a2d - lavf 52.69.0 - av_register_protocol2()
2386
  Add av_register_protocol2(), deprecating av_register_protocol().
2387

2388
2010-06-09 - 65db058 - lavu 50.19.0 - av_compare_mod()
2389 2390
  Add av_compare_mod() to libavutil/mathematics.h.

2391
2010-06-05 - 0b99215 - lavu 50.18.0 - eval API
2392 2393
  Make the eval API public.

2394
2010-06-04 - 31878fc - lavu 50.17.0 - AV_BASE64_SIZE
2395 2396
  Add AV_BASE64_SIZE() macro.

2397
2010-06-02 - 7e566bb - lavc 52.73.0 - av_get_codec_tag_string()
2398 2399
  Add av_get_codec_tag_string().

2400 2401 2402

-------- 8< --------- FFmpeg 0.6 was cut here -------- 8< ---------

2403
2010-06-01 - 2b99142 - lsws 0.11.0 - convertPalette API
2404
  Add sws_convertPalette8ToPacked32() and sws_convertPalette8ToPacked24().
2405

2406
2010-05-26 - 93ebfee - lavc 52.72.0 - CODEC_CAP_EXPERIMENTAL
2407
  Add CODEC_CAP_EXPERIMENTAL flag.
2408
  NOTE: this was backported to 0.6
2409

2410
2010-05-23 - 9977863 - lavu 50.16.0 - av_get_random_seed()
2411
  Add av_get_random_seed().
2412

2413
2010-05-18 - 796ac23 - lavf 52.63.0 - AVFMT_FLAG_RTP_HINT
2414
  Add AVFMT_FLAG_RTP_HINT as possible value for AVFormatContext.flags.
2415
  NOTE: this was backported to 0.6
2416

2417
2010-05-09 - b6bc205 - lavfi 1.20.0 - AVFilterPicRef
2418 2419
  Add interlaced and top_field_first fields to AVFilterPicRef.

2420
2010-05-01 - 8e2ee18 - lavf 52.62.0 - probe function
2421 2422 2423
  Add av_probe_input_format2 to API, it allows ignoring probe
  results below given score and returns the actual probe score.

2424
2010-04-01 - 3dd6180 - lavf 52.61.0 - metadata API
2425 2426 2427
  Add a flag for av_metadata_set2() to disable overwriting of
  existing tags.

2428
2010-04-01 - 0fb49b5 - lavc 52.66.0
2429
  Add avcodec_get_edge_width().
2430

2431
2010-03-31 - d103218 - lavc 52.65.0
2432 2433
  Add avcodec_copy_context().

2434
2010-03-31 - 1a70d12 - lavf 52.60.0 - av_match_ext()
2435 2436
  Make av_match_ext() public.

2437
2010-03-31 - 1149150 - lavu 50.14.0 - AVMediaType
2438 2439
  Move AVMediaType enum from libavcodec to libavutil.

2440
2010-03-31 - 72415b2 - lavc 52.64.0 - AVMediaType
2441 2442 2443
  Define AVMediaType enum, and use it instead of enum CodecType, which
  is deprecated and will be dropped at the next major bump.

2444
2010-03-25 - 8795823 - lavu 50.13.0 - av_strerror()
2445 2446
  Implement av_strerror().

2447
2010-03-23 - e1484eb - lavc 52.60.0 - av_dct_init()
2448
  Support DCT-I and DST-I.
2449

2450
2010-03-15 - b8819c8 - lavf 52.56.0 - AVFormatContext.start_time_realtime
2451 2452
  Add AVFormatContext.start_time_realtime field.

2453
2010-03-13 - 5bb5c1d - lavfi 1.18.0 - AVFilterPicRef.pos
2454 2455
  Add AVFilterPicRef.pos field.

2456
2010-03-13 - 60c144f - lavu 50.12.0 - error.h
2457 2458 2459
  Move error code definitions from libavcodec/avcodec.h to
  the new public header libavutil/error.h.

2460
2010-03-07 - c709483 - lavc 52.56.0 - avfft.h
2461 2462
  Add public FFT interface.

2463
2010-03-06 - ac6ef86 - lavu 50.11.0 - av_stristr()
2464 2465
  Add av_stristr().

2466
2010-03-03 - 4b83fc0 - lavu 50.10.0 - av_tree_enumerate()
2467 2468
  Add av_tree_enumerate().

2469
2010-02-07 - b687c1a - lavu 50.9.0 - av_compare_ts()
2470 2471
  Add av_compare_ts().

2472
2010-02-05 - 3f3dc76 - lsws 0.10.0 - sws_getCoefficients()
2473 2474
  Add sws_getCoefficients().

2475
2010-02-01 - ca76a11 - lavf 52.50.0 - metadata API
2476 2477 2478
  Add a list of generic tag names, change 'author' -> 'artist',
  'year' -> 'date'.

2479
2010-01-30 - 80a07f6 - lavu 50.8.0 - av_get_pix_fmt()
2480 2481
  Add av_get_pix_fmt().

2482
2010-01-21 - 01cc47d - lsws 0.9.0 - sws_scale()
2483 2484
  Change constness attributes of sws_scale() parameters.

2485
2010-01-10 - 3fb8e77 - lavfi 1.15.0 - avfilter_graph_config_links()
2486 2487
  Add a log_ctx parameter to avfilter_graph_config_links().

2488
2010-01-07 - 8e9767f - lsws 0.8.0 - sws_isSupported{In,Out}put()
2489
  Add sws_isSupportedInput() and sws_isSupportedOutput() functions.
2490

2491
2010-01-06 - c1d662f - lavfi 1.14.0 - avfilter_add_colorspace()
2492 2493 2494
  Change the avfilter_add_colorspace() signature, make it accept an
  (AVFilterFormats **) rather than an (AVFilterFormats *) as before.

2495
2010-01-03 - 4fd1f18 - lavfi 1.13.0 - avfilter_add_colorspace()
2496 2497
  Add avfilter_add_colorspace().

2498
2010-01-02 - 8eb631f - lavf 52.46.0 - av_match_ext()
2499 2500
  Add av_match_ext(), it should be used in place of match_ext().

2501
2010-01-01 - a1f547b - lavf 52.45.0 - av_guess_format()
2502 2503
  Add av_guess_format(), it should be used in place of guess_format().

2504
2009-12-13 - a181981 - lavf 52.43.0 - metadata API
2505 2506
  Add av_metadata_set2(), AV_METADATA_DONT_STRDUP_KEY and
  AV_METADATA_DONT_STRDUP_VAL.
2507

2508
2009-12-13 - 277c733 - lavu 50.7.0 - avstring.h API
2509
  Add av_d2str().
2510

2511
2009-12-13 - 02b398e - lavc 52.42.0 - AVStream
2512
  Add avg_frame_rate.
2513

2514
2009-12-12 - 3ba69a1 - lavu 50.6.0 - av_bmg_next()
2515 2516
  Introduce the av_bmg_next() function.

2517
2009-12-05 - a13a543 - lavfi 1.12.0 - avfilter_draw_slice()
2518 2519
  Add a slice_dir parameter to avfilter_draw_slice().

2520
2009-11-26 - 4cc3f6a - lavfi 1.11.0 - AVFilter
2521 2522
  Remove the next field from AVFilter, this is not anymore required.

2523
2009-11-25 - 1433c4a - lavfi 1.10.0 - avfilter_next()
2524 2525
  Introduce the avfilter_next() function.

2526
2009-11-25 - 86a60fa - lavfi 1.9.0 - avfilter_register()
2527 2528 2529
  Change the signature of avfilter_register() to make it return an
  int. This is required since now the registration operation may fail.

2530
2009-11-25 - 74a0059 - lavu 50.5.0 - pixdesc.h API
2531 2532
  Make the pixdesc.h API public.

2533
2009-10-27 - 243110f - lavfi 1.5.0 - AVFilter.next
2534 2535 2536
  Add a next field to AVFilter, this is used for simplifying the
  registration and management of the registered filters.

2537
2009-10-23 - cccd292 - lavfi 1.4.1 - AVFilter.description
2538
  Add a description field to AVFilter.
2539

2540
2009-10-19 - 6b5dc05 - lavfi 1.3.0 - avfilter_make_format_list()
2541 2542 2543 2544
  Change the interface of avfilter_make_format_list() from
  avfilter_make_format_list(int n, ...) to
  avfilter_make_format_list(enum PixelFormat *pix_fmts).

2545
2009-10-18 - 0eb4ff9 - lavfi 1.0.0 - avfilter_get_video_buffer()
2546 2547 2548
  Make avfilter_get_video_buffer() recursive and add the w and h
  parameters to it.

2549
2009-10-07 - 46c40e4 - lavfi 0.5.1 - AVFilterPic
2550
  Add w and h fields to AVFilterPic.
2551

2552
2009-06-22 - 92400be - lavf 52.34.1 - AVFormatContext.packet_size
2553 2554
  This is now an unsigned int instead of a signed int.

2555
2009-06-19 - a4276ba - lavc 52.32.0 - AVSubtitle.pts
2556 2557
  Add a pts field to AVSubtitle which gives the subtitle packet pts
  in AV_TIME_BASE. Some subtitle de-/encoders (e.g. XSUB) will
2558 2559
  not work right without this.

2560
2009-06-03 - 8f3f2e0 - lavc 52.30.2 - AV_PKT_FLAG_KEY
2561
  PKT_FLAG_KEY has been deprecated and will be dropped at the next
2562 2563
  major version. Use AV_PKT_FLAG_KEY instead.

2564
2009-06-01 - f988ce6 - lavc 52.30.0 - av_lockmgr_register()
2565 2566 2567
  av_lockmgr_register() can be used to register a callback function
  that lavc (and in the future, libraries that depend on lavc) can use
  to implement mutexes. The application should provide a callback function
2568 2569 2570
  that implements the AV_LOCK_* operations described in avcodec.h.
  When the lock manager is registered, FFmpeg is guaranteed to behave
  correctly in a multi-threaded application.
2571

2572
2009-04-30 - ce1d9c8 - lavc 52.28.0 - av_free_packet()
2573 2574
  av_free_packet() is no longer an inline function. It is now exported.

2575
2009-04-11 - 80d403f - lavc 52.25.0 - deprecate av_destruct_packet_nofree()
2576 2577 2578
  Please use NULL instead. This has been supported since r16506
  (lavf > 52.23.1, lavc > 52.10.0).

2579
2009-04-07 - 7a00bba - lavc 52.23.0 - avcodec_decode_video/audio/subtitle
2580 2581 2582 2583 2584
  The old decoding functions are deprecated, all new code should use the
  new functions avcodec_decode_video2(), avcodec_decode_audio3() and
  avcodec_decode_subtitle2(). These new functions take an AVPacket *pkt
  argument instead of a const uint8_t *buf / int buf_size pair.

2585
2009-04-03 - 7b09db3 - lavu 50.3.0 - av_fifo_space()
2586 2587
  Introduce the av_fifo_space() function.

2588
2009-04-02 - fabd246 - lavc 52.23.0 - AVPacket
2589 2590 2591
  Move AVPacket declaration from libavformat/avformat.h to
  libavcodec/avcodec.h.

2592
2009-03-22 - 6e08ca9 - lavu 50.2.0 - RGB32 pixel formats
2593 2594 2595 2596 2597
  Convert the pixel formats PIX_FMT_ARGB, PIX_FMT_RGBA, PIX_FMT_ABGR,
  PIX_FMT_BGRA, which were defined as macros, into enum PixelFormat values.
  Conversely PIX_FMT_RGB32, PIX_FMT_RGB32_1, PIX_FMT_BGR32 and
  PIX_FMT_BGR32_1 are now macros.
  avcodec_get_pix_fmt() now recognizes the "rgb32" and "bgr32" aliases.
2598
  Re-sort the enum PixelFormat list accordingly.
2599 2600
  This change breaks API/ABI backward compatibility.

2601
2009-03-22 - f82674e - lavu 50.1.0 - PIX_FMT_RGB5X5 endian variants
2602 2603 2604 2605
  Add the enum PixelFormat values:
  PIX_FMT_RGB565BE, PIX_FMT_RGB565LE, PIX_FMT_RGB555BE, PIX_FMT_RGB555LE,
  PIX_FMT_BGR565BE, PIX_FMT_BGR565LE, PIX_FMT_BGR555BE, PIX_FMT_BGR555LE.

2606
2009-03-21 - ee6624e - lavu 50.0.0  - av_random*
2607 2608 2609 2610
  The Mersenne Twister PRNG implemented through the av_random* functions
  was removed. Use the lagged Fibonacci PRNG through the av_lfg* functions
  instead.

2611
2009-03-08 - 41dd680 - lavu 50.0.0  - AVFifoBuffer
2612 2613 2614 2615
  av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped
  and replaced by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write
  and av_fifo_realloc2.
  In addition, the order of the function arguments of av_fifo_generic_read
2616
  was changed to match av_fifo_generic_write.
2617 2618
  The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by
  applications, they may not use sizeof() or directly access members.
2619

2620
2009-03-01 - ec26457 - lavf 52.31.0 - Generic metadata API
2621 2622
  Introduce a new metadata API (see av_metadata_get() and friends).
  The old API is now deprecated and should not be used anymore. This especially
Panagiotis Issaris's avatar
Panagiotis Issaris committed
2623
  includes the following structure fields:
2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636
    - AVFormatContext.title
    - AVFormatContext.author
    - AVFormatContext.copyright
    - AVFormatContext.comment
    - AVFormatContext.album
    - AVFormatContext.year
    - AVFormatContext.track
    - AVFormatContext.genre
    - AVStream.language
    - AVStream.filename
    - AVProgram.provider_name
    - AVProgram.name
    - AVChapter.title