]> git.sesse.net Git - ffmpeg/blobdiff - doc/APIchanges
bsf: add a flushing mechanism to AVBSFContext
[ffmpeg] / doc / APIchanges
index 74316ed7c15639fe146dbf4369274b4b6a11dd1f..9ba03648c563a12d43e77b1228da0adcfe807195 100644 (file)
@@ -2,72 +2,242 @@ Never assume the API of libav* to be stable unless at least 1 month has passed
 since the last major version increase.
 
 The last version increases were:
-libavcodec:    2015-08-28
-libavdevice:   2015-08-28
-libavfilter:   2015-08-28
-libavformat:   2015-08-28
-libavresample: 2015-08-28
-libswscale:    2015-08-28
-libavutil:     2015-08-28
+libavcodec:    2017-03-23
+libavdevice:   2017-03-23
+libavfilter:   2017-03-23
+libavformat:   2017-03-23
+libavresample: 2017-03-23
+libswscale:    2017-03-23
+libavutil:     2017-03-23
 
 
 API changes, most recent first:
 
-2016-xx-xx - xxxxxxx - lavu 55.16.0 - hwcontext.h hwcontext_qsv.h
+2018-xx-xx - xxxxxxx - lavc 58.10.0 - avcodec.h
+  Add av_bsf_flush().
+
+2018-02-xx - xxxxxxx - lavfi 7.1.0 - avfilter.h
+  Add AVFilterContext.extra_hw_frames.
+
+2018-02-xx - xxxxxxx - lavc 58.9.0 - avcodec.h
+  Add AVCodecContext.extra_hw_frames.
+
+2017-xx-xx - xxxxxxx - lavc 58.8.0 - avcodec.h
+  Add const to AVCodecContext.hwaccel.
+
+2017-xx-xx - xxxxxxx - lavc 58.7.0 - avcodec.h
+  Deprecate user visibility of the AVHWAccel structure and the functions
+  av_register_hwaccel() and av_hwaccel_next().
+
+2017-xx-xx - xxxxxxx - lavc 58.6.0 - avcodec.h
+  Add AVCodecHWConfig and avcodec_get_hw_config().
+
+2017-xx-xx - xxxxxxx - lavu 56.7.0 - stereo3d.h
+  Add view field to AVStereo3D structure and AVStereo3DView enum.
+
+2017-xx-xx - xxxxxxx - lavc 58.5.0 - avcodec.h
+  Add avcodec_get_hw_frames_parameters().
+
+2017-xx-xx - xxxxxxx - lavu 56.6.0 - pixdesc.h
+  Add av_color_range_from_name(), av_color_primaries_from_name(),
+  av_color_transfer_from_name(), av_color_space_from_name(), and
+  av_chroma_location_from_name().
+
+2016-xx-xx - xxxxxxx - lavf 58.1.0 - avio.h
+  Add avio_read_partial().
+
+2017-xx-xx - xxxxxxx - lavu 56.4.0 - imgutils.h
+  Add av_image_fill_black().
+
+2017-xx-xx - xxxxxxx - lavu 56.3.0 - frame.h
+  Add av_frame_apply_cropping().
+
+2017-xx-xx - xxxxxxx - lavc 58.4.0 - avcodec.h
+  DXVA2 and D3D11 hardware accelerated decoding now supports the new hwaccel API,
+  which can create the decoder context and allocate hardware frame automatically.
+  See AVCodecContext.hw_device_ctx and AVCodecContext.hw_frames_ctx. For D3D11,
+  the new AV_PIX_FMT_D3D11 pixfmt must be used with the new API.
+
+2017-xx-xx - xxxxxxx - lavu 56.2.0 - hwcontext.h
+  Add AV_HWDEVICE_TYPE_D3D11VA and AV_PIX_FMT_D3D11.
+
+2017-04-30 - xxxxxxx - lavu 56.1.1 - hwcontext.h
+  av_hwframe_ctx_create_derived() now takes some AV_HWFRAME_MAP_* combination
+  as its flags argument (which was previously unused).
+
+2017-04-xx - xxxxxxx - lavu 56.1.0 - spherical.h
+  Add av_spherical_projection_name() and av_spherical_from_name().
+
+2017-04-26 - xxxxxxx - lavc 58.3.1 - avcodec.h
+  Add AV_HWACCEL_FLAG_ALLOW_PROFILE_MISMATCH.
+
+2017-03-xx - xxxxxxx - lavc 57.37.0 - avcodec.h
+  Add AVCodecContext.hwaccel_flags field. This will control some hwaccels at
+  a later point.
+
+2017-03-xx - xxxxxxx - lavu 55.35.0 - hwcontext.h
+  Add AV_HWDEVICE_TYPE_NONE, av_hwdevice_find_type_by_name(),
+  av_hwdevice_get_type_name() and av_hwdevice_iterate_types().
+
+2017-03-xx - xxxxxxx - lavu 55.34.0 - hwcontext.h
+  Add av_hwdevice_ctx_create_derived().
+
+2017-02-10 - xxxxxxx - lavu 55.33.0 - spherical.h
+  Add AV_SPHERICAL_EQUIRECTANGULAR_TILE, av_spherical_tile_bounds(),
+  and projection-specific properties (bound_left, bound_top, bound_right,
+  bound_bottom, padding) to AVSphericalMapping.
+
+2017-xx-xx - xxxxxxx - lavc 57.34.0 - avcodec.h
+  Add AVCodecContext.hw_device_ctx.
+
+2017-02-11 - xxxxxxx - lavu 55.32.0 - frame.h
+  Add AVFrame.opaque_ref.
+
+2017-02-xx - xxxxxxx - lavu 55.31.1 - frame.h
+  Allow passing the value of 0 (meaning "automatic") as the required alignment
+  to av_frame_get_buffer().
+
+2017-02-xx - xxxxxxx - lavu 55.31.0 - cpu.h
+  Add av_cpu_max_align() for querying maximum required data alignment.
+
+2016-xx-xx - xxxxxxx - lavf 57.11.0 - avio.h
+  Add avio_context_free(). From now on it must be used for freeing AVIOContext.
+
+2017-02-01 - xxxxxxx - lavc - avcodec.h
+  Deprecate AVCodecContext.refcounted_frames. This was useful for deprecated
+  API only (avcodec_decode_video2/avcodec_decode_audio4). The new decode APIs
+  (avcodec_send_packet/avcodec_receive_frame) always work with reference
+  counted frames.
+
+2016-xx-xx - xxxxxxx - lavc 57.31.0 - avcodec.h
+  Add AVCodecContext.apply_cropping to control whether cropping
+  is handled by libavcodec or the caller.
+
+2016-xx-xx - xxxxxxx - lavu 55.30.0 - frame.h
+  Add AVFrame.crop_left/right/top/bottom fields for attaching cropping
+  information to video frames.
+
+2016-xx-xx - xxxxxxx
+  Change av_sha_update() and av_md5_sum()/av_md5_update() length
+  parameter type to size_t at next major bump.
+
+2016-xx-xx - xxxxxxx - lavc 57.29.0 - avcodec.h
+  Add AV_PKT_DATA_SPHERICAL packet side data to export AVSphericalMapping
+  information from containers.
+
+2016-xx-xx - xxxxxxx - lavu 55.30.0 - spherical.h
+  Add AV_FRAME_DATA_SPHERICAL value, av_spherical_alloc() API and
+  AVSphericalMapping type to export and describe spherical video properties.
+
+2016-xx-xx - xxxxxxx - lavf 57.10.0 - avformat.h
+  Add av_stream_add_side_data().
+
+2016-xx-xx - xxxxxxx - lavu 55.28.0 - pixfmt.h
+  Add AV_PIX_FMT_GRAY12(LE/BE).
+
+2016-xx-xx - xxxxxxx - lavu 55.27.0 - hwcontext.h
+  Add av_hwframe_map() and associated AV_HWFRAME_MAP_* flags.
+  Add av_hwframe_ctx_create_derived().
+
+2016-xx-xx - xxxxxxx - lavu 55.25.0 - pixfmt.h
+  Add AV_PIX_FMT_GBRAP12(LE/BE).
+
+2016-xx-xx - xxxxxxx - lavu 55.24.0 - pixfmt.h
+  Add AV_PIX_FMT_GBRP12(LE/BE).
+
+2016-xx-xx - xxxxxxx - lavu 55.23.0 - hwcontext_vaapi.h
+  Add AV_VAAPI_DRIVER_QUIRK_ATTRIB_MEMTYPE.
+
+2016-xx-xx - xxxxxxx - lavf 57.08.0 - avio.h
+  Add AVIO_SEEKABLE_TIME flag.
+
+2016-xx-xx - xxxxxxx - lavu 55.22.0 - pixfmt.h
+  Add AV_PIX_FMT_YUV420P12, AV_PIX_FMT_YUV422P12, and AV_PIX_FMT_YUV444P12.
+
+2016-xx-xx - xxxxxxx - lavc 57.27.0 - avcodec.h
+  Add FF_PROFILE_HEVC_REXT, the extended pixel format profile for HEVC.
+
+2016-08-24 - xxxxxxx - lavu 55.21.0 - imgutils.h
+  Add av_image_copy_uc_from(), a version of av_image_copy() for copying
+  from GPU mapped memory.
+
+2016-xx-xx - xxxxxxx - lavc 59.26.0 - vaapi.h
+  Deprecate struct vaapi_context and the vaapi.h installed header.
+  Callers should set AVCodecContext.hw_frames_ctx instead.
+
+------------------------------8<-------------------------------------
+                   12 branch was cut here
+----------------------------->8--------------------------------------
+
+2016-07-20 - xxxxxxx - lavu 55.20.0 - cpu.h
+  Add AV_CPU_FLAG_SSSE3SLOW.
+
+2016-07-02 - 4926fa9 - lavu 55.19.0 - hwcontext_vaapi.h
+  Add driver quirks field to VAAPI-specific hwdevice and enum with
+  members AV_VAAPI_DRIVER_QUIRK_* to represent its values.
+
+2016-07-02 - b7c5f88 - lavu 55.18.0 - pixfmt.h
+  Add AV_PIX_FMT_P010(LE/BE).
+
+2016-06-21 - 32c8359 - lavc 57.24.0 - avcodec.h
+  Decoders now export the frame timestamp as AVFrame.pts. It was
+  previously exported as AVFrame.pkt_pts, which is now deprecated.
+
+2016-06-21 - 59e7361 - lavu 55.16.0 - hwcontext.h hwcontext_qsv.h
   Add AV_HWDEVICE_TYPE_QSV and a new installed header with QSV-specific
   hwcontext definitions.
 
-2016-xx-xx - xxxxxxx - lavc 57.23.0 - avcodec.h
+2016-06-21 - e85f6f7 - lavc 57.23.0 - avcodec.h
   AVCodecContext.hw_frames_ctx now may be used by decoders.
 
-2016-xx-xx - xxxxxxx - lavc 57.20.0 - avcodec.h
+2016-06-12 - 90f469a - lavc 57.20.0 - avcodec.h
   Add FF_PROFILE_H264_MULTIVIEW_HIGH and FF_PROFILE_H264_STEREO_HIGH.
 
-2016-xx-xx - xxxxxxx - lavu 55.13.0 - hwcontext.h
+2016-05-26 - 1c9e861 - lavu 55.13.0 - hwcontext.h
   Add av_hwdevice_ctx_create().
 
-2016-xx-xx - xxxxxxx - lavc 57.19.1 - avcodec.h
+2016-05-24 - ad61da05 - lavc 57.19.1 - avcodec.h
   Adjust values for JPEG 2000 profiles.
 
-2016-xx-xx - xxxxxxx - lavf 57.7.0 - avio.h
+2016-05-18 - db7968b - lavf 57.7.0 - avio.h
   Add AVIODataMarkerType, write_data_type, ignore_boundary_point and
   avio_write_marker.
 
-2016-xx-xx - xxxxxxx - lavu 55.12.0 - opt.h
+2016-05-17 - 0c4468d - lavu 55.12.0 - opt.h
   Add av_stereo3d_type_name() and av_stereo3d_from_name().
 
-2016-xx-xx - xxxxxxx - lavu 55.11.0 - hwcontext_dxva2.h
+2016-05-17 - c46db38 - lavu 55.11.0 - hwcontext_dxva2.h
   Add new installed header with DXVA2-specific hwcontext definitions.
 
-2016-xx-xx - xxxxxxx - lavu 55.10.0 - opt.h
+2016-03-24 - 564b459 - lavu 55.10.0 - opt.h
   Add av_opt_copy().
 
-2016-xx-xx - xxxxxxx - lavc 57.16.0 - avcodec.h
+2016-03-23 - 05f6670 - lavc 57.16.0 - avcodec.h
   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().
 
-2016-xx-xx - xxxxxxx - lavc 57.15.0 - avcodec.h
+2016-03-20 - 33d1898 - lavc 57.15.0 - avcodec.h
   Add a new bitstream filtering API working with AVPackets.
   Deprecate the old bitstream filtering API.
 
-2016-xx-xx - xxxxxxx - lavfi 6.3.0 - avfilter.h
+2016-03-19 - 07a844f - lavfi 6.3.0 - avfilter.h
   Add AVFilterContext.hw_device_ctx.
 
-2016-xx-xx - xxxxxxx - lavu 55.9.0 - hwcontext_vaapi.h
+2016-03-19 - 551c677 - lavu 55.9.0 - hwcontext_vaapi.h
   Add new installed header with VAAPI-specific hwcontext definitions.
 
-2016-xx-xx - xxxxxxx - lavu 55.8.0 - pixfmt.h
+2016-03-19 - d264c72 - lavu 55.8.0 - pixfmt.h
   Deprecate all AV_PIX_FMT_VAAPI_* formats.
   Replaced by AV_PIX_FMT_VAAPI.
 
-2016-xx-xx - xxxxxxx - lavu 55.7.0 - hwcontext.h
+2016-03-19 - b1f01e8 - lavu 55.7.0 - hwcontext.h
   Add AVHWFramesConstraints and associated API.
 
 2016-02-23 - 9200514 - lavf 57.5.0 - avformat.h
   Add AVStream.codecpar, deprecate AVStream.codec.
 
-2016-xx-xx - lavc 57.14.0 - avcodec.h
+2016-02-23 - lavc 57.14.0 - avcodec.h
   998e1b8 - Add AVCodecParameters and its related API.
   a806834 - Add av_get_audio_frame_duration2().