FFmpeg source Analysis (13) FFmpeg API Change 2009-03-01--2017-05-09 Change

Source: Internet
Author: User
 add: New change/rename: Modified deprecate: Obsolete.

It is likely to be deleted later. Remove: Delete the 

The last version increases were:libavcodec:2015-08-28 libavdevice:2015-08-28 libavfilter:2015-08-28 libavform at:2015-08-28 libavresample:2015-08-28 libpostproc:2015-08-28 libswresample:2015-08-28 libswscale:2015-08-28 L Ibavutil:2015-08-28 API changes, most recent First:2017-03-31-9033e8723c-lavu 55.57.100-spherical.h Add a
  V_spherical_projection_name ().

Add Av_spherical_from_name (). 2017-03-30-4cda23f1f1-lavu 55.53.100/55.27.0-hwcontext.h Add Av_hwframe_map () and associated AV_HWFRAME_MAP_* FL
  Ags.

Add av_hwframe_ctx_create_derived (). 2017-03-29-bfdcdd6d82-lavu 55.52.100-avutil.h Add av_fourcc_make_string () function and AV_FOURCC2STR () macro to re

Place Av_get_codec_tag_string () from LAVC. 2017-03-27-DDEF3D902F-LAVF 57.68.100-avformat.h deprecate that demuxers export the stream rotation angle in avstre Am.metadata (via an entry named "Rotate"). Use Av_stream_get_side_data () with Av_pkt_data_displaymatrix InsteAD, and read the rotation angle with av_display_rotation_get (). The same is do for muxing. Instead of adding a "rotate" entry to Avstream.metadata, Av_pkt_data_displaymatrix side DATA have to is added to the AV

Stream. 2017-03-23-7E4BA776A2-LAVC 57.85.101-avcodec.h Vdpau Hardware accelerated decoding now supports the new Hwaccel AP
  I, which can create the decoder context and allocate hardware frame automatically.

See AVCODECCONTEXT.HW_DEVICE_CTX and Avcodeccontext.hw_frames_ctx. 2017-03-23-156BD8278F-LAVC 57.85.100-avcodec.h Add avcodeccontext.hwaccel_flags field.

This would control some hwaccels at a later point.

2017-03-21-FC9F14C7DE-LAVF 57.67.100/57.08.0-avio.h ADD avio_seekable_time flag. 2017-03-21-d682ae70b4-lavf 57.66.105, LAVC 57.83.101-avformat.h, avcodec.h deprecate avfmt_flag_keep_side_data.
  It'll be ignored after the next major bump, and Libavformat would behave as if it were always set. Deprecate Av_packet_merge_side_daTa () and Av_packet_split_side_data (). 2016-03-20-8200b16a9c-lavu 55.50.100/55.21.0-imgutils.h Add Av_image_copy_uc_from (), a version of Av_image_copy (

) for copying from GPU mapped memory.

2017-03-20-9c2436e-lavu 55.49.100-pixdesc.h Add av_pix_fmt_flag_bayer pixel format FLAG. 2017-03-18-3796fb2692-lavfi 6.77.100-avfilter.h deprecate avfiltergraph.resample_lavr_opts It ' s never been used

by Avfilter nor passed to anything. 2017-02-10-1b7ffddb3a-lavu 55.48.100/55.33.0-spherical.h Add Av_spherical_equirectangular_tile, Av_spherical_til E_bounds (), and Projection-specific properties (Bound_left, Bound_top, Bound_right, Bound_bottom, padding) to Avspheri

Calmapping. 2017-03-02-ADE7C1A232-LAVC 57.81.104-videotoolbox.h Avvideotoolboxcontext.cv_pix_fmt_type can now is set to 0 to O Utput the native decoder format.

(The default value is not changed.) 2017-03-02-554bc4eea8-lavu 55.47.101, LAVC 57.81.102, LAVF 57.66.103 Remove requiremENT to use avoption or accessors to access certain fields in Avframe, Avcodeccontext, and avformatcontext that were prev

iously documented as "no direct access" allowed.

2017-02-13-C1A5FCA06F-LAVC 57.80.100-avcodec.h Add Avcodeccontext.hw_device_ctx.

2017-02-11-e3af49b14b-lavu 55.47.100-frame.h Add avframe.opaque_ref.

2017-01-31-2eab48177d-lavu 55.46.100/55.20.0-cpu.h Add Av_cpu_flag_ssse3slow. 2017-01-24-c4618f842a-lavu 55.45.100-channel_layout.h Add av_get_extended_channel_layout () 2017-01-22-76c5a69e2

6-lavu 55.44.100-lfg.h Add av_lfg_init_from_data ().
  2017-01-17-2A4A8653B6-LAVC 57.74.100-vaapi.h deprecate struct Vaapi_context and the vaapi.h installed header.

Callers should set avcodeccontext.hw_frames_ctx instead.

2017-01-12-dbe9dbed31-lavfi 6.69.100-buffersink.h Add av_buffersink_get_* () functions. 2017-01-06-9488032E10-LAVF 57.62.100-avio.h Add avio_get_dyn_buf () 2016-12-10-f542b152aa-lavu 55.43.100-imgutils.h add Av_image_check_size2 () 2016-12-07-E7A6F8C972-LAVC 57.67.100/57.29.0-avcodec.h add AV_PKT_

Data_spherical packet side data to export avsphericalmapping information from containers.  2016-12-07-8f58ecc344-lavu 55.42.100/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-11-18-2AB50647FF-LAVF 57.58.100-avformat.h Add av_stream_add_side_data ().

2016-11-13-775a8477b7-lavu 55.39.100-hwcontext_vaapi.h Add Av_vaapi_driver_quirk_attrib_memtype.  2016-11-13-a8d51bb424-lavu 55.38.100-hwcontext_vaapi.h Add driver quirks field to vaapi-specific Hwdevice and enum

With members av_vaapi_driver_quirk_* to represent their values.

2016-11-10-638b216d4f-lavu 55.36.100-pixfmt.h Add av_pix_fmt_gray12 (le/be). --------8<---------FFmpeg 3.2 is cut here--------8<---------2016-10-24-73EAD47-LAVF 57.55.100-avformat.h Add av_disposition_timed_thumbnails 2016-10-24-a246fef-lavf 57.54.100-avformat.h add Avformat_ Init_output () and Avstream_init_in_ macros 2016-10-22-f5495c9-lavu 55.33.100-avassert.h Add av_assert0_fpu ()/AV _ASSERT2_FPU () 2016-10-07-3F9137C/32C8359-LAVC 57.61.100/57.24.0-avcodec.h decoders now export the frame time Stamp as avframe.pts.

  It was previously exported as avframe.pkt_pts, which are now deprecated.

Note:when decoding, Avframe.pts uses the Stream/packet timebase, and not the codec timebase. 2016-09-28-eba0414-lavu 55.32.100/55.16.0-hwcontext.h hwcontext_qsv.h Add AV_HWDEVICE_TYPE_QSV and a new install

Ed header with qsv-specific hwcontext definitions.

2016-09-26-32C25F0-LAVC 57.59.100/57.23.0-avcodec.h Avcodeccontext.hw_frames_ctx Now is May is used by decoders. 2016-09-27-F0B6F72-LAVF 57.51.100-avformat.h Add av_stream_get_codec_timebase () 2016-09-27-23C0779-LSWR 2.2.1
 00-swresample.h Add Swr_build_matrix ().

2016-09-23-30D3E36-LAVC 57.58.100-avcodec.h ADD av_codec_cap_avoid_probing CODEC capability flag.  2016-09-14-AE1DD0C-LAVF 57.49.100-avformat.h Add avformat_transfer_internal_stream_timing_info Helper to help with

Stream copy.

2016-08-29-4493390-lavfi 6.58.100-avfilter.h Add avfiltercontext.nb_threads. 2016-08-15-C3C4C72-LAVC 57.53.100-avcodec.h Add trailing_padding to Avcodeccontext to match the corresponding FI

Eld in Avcodecparameters.
  2016-08-15-B746ED7-LAVC 57.52.100-avcodec.h Add A new API for chained BSF filters and passthrough (NULL) BSF-- Av_bsf_list_alloc (), Av_bsf_list_free (), Av_bsf_list_append (), Av_bsf_list_append2 (), Av_bsf_list_finalize (), av_

Bsf_list_parse_str () and Av_bsf_get_null_filter (). 2016-08-04-82A33C8-LAVF 57.46.100-avformat.h Add av_get_frame_filename2 () 2016-07-09-775389F/90F469A-LAVC 5 7.50.100/57.20.0-avcodec.h Add Ff_profile_h264_multiview_high and Ff_profiLe_h264_stereo_high. 
  2016-06-30-C1C7E0AB-LAVF 57.41.100-avformat.h Moved codecpar field from Avstream to the end of the struct, so

The following private fields is 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 tha

t the following private fields is in the same location as in FFmpeg 3.0 (Lavu 55.17.103).
  2016-06-29-1a751455-lavfi 6.47.100-avfilter.h Fix Accidental ABI breakage in Avfiltercontext.

  ABI is 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 is not being compatible with lavfi>=6.47.100.

Potentially also affects other users of libavfilter if they is using one of the affected fields.  --------8<---------FFmpeg 3.1 is cut here--------8<---------2016-06-26-481f320/1c9e861-lavu 55.27.100 /55.13.0-hwcontext.h AdD av_hwdevice_ctx_create ().

2016-06-26-B95534B/E47B8BB-LAVC 57.48.101/57.19.1-avcodec.h Adjust values for JPEG profiles. 2016-06-23-5D75E46/DB7968B-LAVF 57.40.100/57.7.0-avio.h Add Aviodatamarkertype, Write_data_type, Ignore_bounda

Ry_point and Avio_write_marker. 2016-06-23-abb3cc4/0c4468d-lavu 55.26.100/55.12.0-opt.h Add av_stereo3d_type_name () and Av_stereo3d_from_name (

). 2016-06-22-3689efe/c46db38-lavu 55.25.100/55.11.0-hwcontext_dxva2.h Add New installed header with DXVA2-SPECIF

IC hwcontext definitions. 2016-04-27-fb91871-lavu 55.23.100-log.h Add A new function av_log_format_line2 () which returns number of bytes W

Ritten to the target buffer.
  2016-04-21-7FC329E-LAVC 57.37.100-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-04-17-af9cac1/33d1898-lavc 57.35.100/57.15.0-avcodec.h ADD A new bitstream filtering API working with Avpackets.

Deprecate the old bitstream filtering API.

2016-04-14-8688d3a/07a844f-lavfi 6.42.100/6.3.0-avfilter.h Add Avfiltercontext.hw_device_ctx. 2016-04-14-28abb21/551c677-lavu 55.22.100/55.9.0-hwcontext_vaapi.h Add New installed header with Vaapi-specifi

C Hwcontext definitions.

2016-04-14-afccfaf/b1f01e8-lavu 55.21.100/55.7.0-hwcontext.h Add avhwframesconstraints and associated API.

2016-04-11-6F69F7A/9200514-LAVF 57.33.100/57.5.0-avformat.h Add avstream.codecpar, deprecate AVStream.codec.

2016-04-02-e8a9b64-lavu 55.20.100-base64.h Add av_base64_decode_size (x) macro.
  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 (). 2016-03-11-6D8AB35-LAVF/LAVC 57.28.101 ADD requirement to bitstream filtering APIs that returnedPackets with size = = 0 and Side_data_elems = = 0 is is skipped by the caller. 2016-03-04-9362973-LAVF 57.28.100 ADD Protocol blacklisting API 2016-02-28-4DD4D53-LAVC 57.27.101 Validate AV Frame returned by Get_buffer2 to has required planes not NULL and unused planes set to null as crashes and buffer ove

Rflow was possible with certain streams if that was not the case. 2016-02-26-30E7685-LAVC 57.27.100-avcodec.h "FLAGS2" decoding option now allows the flag "Ass_ro_flush_noop" Preve Nting the reset of the Readorder field on flush. This affects the content of Avsubtitles.rects[n]->ass when "Sub_text_forma

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.