summaryrefslogtreecommitdiffstats
path: root/doc/APIchanges
Commit message (Collapse)AuthorAgeFilesLines
...
* | avutil/spherical: add av_spherical_projection_name()James Almer2017-03-311-0/+4
| | | | | | | | | | | | Reviewed-by: Benoit Fouet <benoit.fouet@free.fr> Reviewed-by: Vittorio Giovara <vittorio.giovara@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* | doc/APIchanges: UpdateMichael Niedermayer2017-03-311-19/+19
| |
* | Merge commit 'd06aa24ba583ad08025da9e1b29afcd8218ff9b0'Clément Bœsch2017-03-301-0/+4
|\ \ | |/ | | | | | | | | | | * commit 'd06aa24ba583ad08025da9e1b29afcd8218ff9b0': hwcontext: Hardware frame mapping Merged-by: Clément Bœsch <cboesch@gopro.com>
| * hwcontext: Hardware frame mappingMark Thompson2016-11-031-0/+4
| | | | | | | | | | | | | | | | | | | | Adds the new av_hwframe_map() function, which allows mapping between hardware frames and normal memory, along with internal support for implementing it. Also adds av_hwframe_ctx_create_derived(), for creating a hardware frames context associated with one device using frames mapped from another by some hardware-specific means.
| * Add GBRAP12 pixel format supportKieran Kunhya2016-10-121-0/+3
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
| * Add GBRP12 pixel format supportMichael Niedermayer2016-10-121-0/+3
| | | | | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
| * APIchanges: Expand the name of recently added pixel formatsVittorio Giovara2016-10-121-1/+1
| | | | | | | | This makes them easier to search for.
| * hwcontext_vaapi: add a quirk for the missing MemoryType attributeAnton Khirnov2016-10-021-0/+3
| | | | | | | | | | | | The Intel binary iHD driver does not support the VASurfaceAttribMemoryType, so surface allocation will fail when using it.
* | lavu: add av_fourcc_make_string() and av_fourcc2str()Clément Bœsch2017-03-291-0/+4
| |
* | avformat, ffmpeg: deprecate old rotation APIwm42017-03-271-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The old "API" that signaled rotation as a metadata value has been replaced by DISPLAYMATRIX side data quite a while ago. There is no reason to make muxers/demuxers/API users support both. In addition, the metadata API is dangerous, as user tags could "leak" into it, creating unintended features or bugs. ffmpeg CLI has to be updated to use the new API. In particular, we must not allow to leak the "rotate" tag into the muxer. Some muxers will catch this properly (like mov), but others (like mkv) can add it as generic tag. Note applications, which use libavformat and assume the old rotate API, will interpret such "rotate" user tags as rotate metadata (which it is not), and incorrectly rotate the video. The ffmpeg/ffplay tools drop the use of the old API for muxing and demuxing, as all muxers/demuxers support the new API. This will mean that the tools will not mistakenly interpret per-track "rotate" user tags as rotate metadata. It will _not_ be treated as regression. Unfortunately, hacks have been added, that allow the user to override rotation by setting metadata explicitly, e.g. via -metadata:s:v:0 rotate=0 See references to trac #4560. fate-filter-meta-4560-rotate0 tests this. It's easier to adjust the hack for supporting it than arguing for its removal, so ffmpeg CLI now explicitly catches this case, and essentially replaces the "rotate" value with a display matrix side data. (It would be easier for both user and implementation to create an explicit option for rotation.) When the code under FF_API_OLD_ROTATE_API is disabled, one FATE reference file has to be updated (because "rotate" is not exported anymore). Tested-by: Michael Niedermayer <michael@niedermayer.cc> Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavc: vdpau: Add support for new hw_frames_ctx and hw_device_ctx APIwm42017-03-231-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This supports retrieving the device from a provided hw_frames_ctx, and automatically creating a hw_frames_ctx if hw_device_ctx is set. The old API is not deprecated yet. The user can still use av_vdpau_bind_context() (with or without setting hw_frames_ctx), or use the API before that by allocating and setting hwaccel_context manually. Cherry-picked from Libav commit 1a7ddba5. (Adds missing APIchanges entry to the Libav version.) Reviewed-by: Mark Thompson <sw@jkqxz.net>
* | lavc: Add hwaccel_flags field to AVCodecContextwm42017-03-231-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | This "reuses" the flags introduced for the av_vdpau_bind_context() API function, and makes them available to all hwaccels. This does not affect the current vdpau API, as av_vdpau_bind_context() should obviously override the AVCodecContext.hwaccel_flags flags for the sake of compatibility. Cherry-picked from Libav commit 16a163b5. Reviewed-by: Mark Thompson <sw@jkqxz.net>
* | Merge commit '8ea35af7620e4f73f9e8c072e1c0fac9a04ec161'James Almer2017-03-211-0/+3
|\ \ | |/ | | | | | | | | | | * commit '8ea35af7620e4f73f9e8c072e1c0fac9a04ec161': avio: add a new flag for marking streams seekable by timestamp Merged-by: James Almer <jamrial@gmail.com>
| * avio: add a new flag for marking streams seekable by timestampAnton Khirnov2016-09-301-0/+3
| |
| * APIchanges: fix a typo in the version numberAnton Khirnov2016-09-281-1/+1
| |
| * lavu: Bump version for the 12bit Planar YUV supportLuca Barbato2016-09-271-0/+3
| |
| * avcodec: Add the extended pixel format profile for HEVCYogender Gupta2016-09-191-0/+3
| | | | | | | | | | | | It is supported by the NVIDIA video SDK 7. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | avcodec, avformat: deprecate anything related to side data mergingwm42017-03-211-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch deprecates anything that has to do with merging/splitting side data. Automatic side data merging (and splitting), as well as all API symbols involved in it, are removed completely. Two FF_API_ defines are dedicated to deprecating API symbols related to this: FF_API_MERGE_SD_API removes av_packet_split/merge_side_data in libavcodec, and FF_API_LAVF_KEEPSIDE_FLAG deprecates AVFMT_FLAG_KEEP_SIDE_DATA in libavformat. Since it was claimed that changing the default from merging side data to not doing it is an ABI change, there are two additional FF_API_ defines, which stop using the side data merging/splitting by default (and remove any code in avformat/avcodec doing this): FF_API_MERGE_SD in libavcodec, and FF_API_LAVF_MERGE_SD in libavformat. It is very much intended that FF_API_MERGE_SD and FF_API_LAVF_MERGE_SD are quickly defined to 0 in the next ABI bump, while the API symbols are retained for a longer time for the sake of compatibility. AVFMT_FLAG_KEEP_SIDE_DATA will (very much intentionally) do nothing for most of the time it will still be defined. Keep in mind that no code exists that actually tries to unset this flag for any reason, nor does such code need to exist. Code setting this flag explicitly will work as before. Thus it's ok for AVFMT_FLAG_KEEP_SIDE_DATA to do nothing once side data merging has been removed from libavformat. In order to avoid that anyone in the future does this incorrectly, here is a small guide how to update the internal code on bumps: - next ABI bump (probably soon): - define FF_API_LAVF_MERGE_SD to 0, and remove all code covered by it - define FF_API_MERGE_SD to 0, and remove all code covered by it - next API bump (typically two years in the future or so): - define FF_API_LAVF_KEEPSIDE_FLAG to 0, and remove all code covered by it - define FF_API_MERGE_SD_API to 0, and remove all code covered by it This forces anyone who actually wants packet side data to temporarily use deprecated API to get it all. If you ask me, this is batshit fucked up crazy, but it's how we roll. Making AVFMT_FLAG_KEEP_SIDE_DATA to be set by default was rejected as an ABI change, so I'm going all the way to get rid of this once and for all. Reviewed-by: James Almer <jamrial@gmail.com> Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com> Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit 'd7bc52bf456deba0f32d9fe5c288ec441f1ebef5'Clément Bœsch2017-03-201-0/+4
|\ \ | |/ | | | | | | | | | | * commit 'd7bc52bf456deba0f32d9fe5c288ec441f1ebef5': imgutils: add a function for copying image data from GPU mapped memory Merged-by: Clément Bœsch <u@pkh.me>
| * imgutils: add a function for copying image data from GPU mapped memoryAnton Khirnov2016-08-311-0/+4
| | | | | | | | See https://software.intel.com/en-us/articles/copying-accelerated-video-decode-frame-buffers
| * lavc: Remove old vaapi decode infrastructureMark Thompson2016-08-301-0/+4
| | | | | | | | | | Deprecates struct vaapi_context and the installed header vaapi.h, to be removed at the next version bump.
* | doc/APIchanges: fill date & hash for AV_PIX_FMT_FLAG_BAYERClément Bœsch2017-03-201-1/+1
| |
* | lavu: add AV_PIX_FMT_FLAG_BAYERClément Bœsch2017-03-201-0/+3
| |
* | lavfi: deprecate AVFilterGraph->resample_lavr_optsRostislav Pehlivanov2017-03-181-0/+4
| | | | | | | | | | | | | | Not used by anything at all since we don't auto insert lavr filters. Reviewed-by: wm4 <nfxjfg@googlemail.com> Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* | spherical: Add tiled equirectangular type and projection-specific propertiesVittorio Giovara2017-03-071-0/+5
| | | | | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | avcodec/videotoolbox: allow not setting the kCVPixelBufferPixelFormatTypeKeywm42017-03-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | If AVVideotoolboxContext.cv_pix_fmt_type is set to 0, don't set the kCVPixelBufferPixelFormatTypeKey value on the VT decoder. This makes VT output its native format, which can be much faster on some hardware iterations (if the native format does not match with the requested format, it will be converted, which is slow). The default is still forcing nv12.
* | avcodec, avutil, avformat: remove AVOption requirement for some fieldswm42017-03-021-0/+5
| | | | | | | | | | | | | | | | | | | | Allow all struct fields to be accessed directly, as long as they're public. Before this change, many fields were "public", but could be accessed via AVOption only. This meant they were effectively not public, but were present for documentation purposes, which was incredibly confusing at best.
* | lavc: Add device context field to AVCodecContextMark Thompson2017-02-131-0/+3
| | | | | | | | For use by codec implementations which can allocate frames internally.
* | AVFrame: add an opaque_ref fieldwm42017-02-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an extended version of the AVFrame.opaque field, which can be used to attach arbitrary user information to an AVFrame. The usefulness of the opaque field is rather limited, because it can store only up to 32 bits of information (or 64 bit on 64 bit systems). It's not possible to set this field to a memory allocation, because there is no way to deallocate it correctly. The opaque_ref field circumvents this by letting the user set an AVBuffer, which makes the user data refcounted. Signed-off-by: Anton Khirnov <anton@khirnov.net> Merges Libav commit 04f3bd349651.
* | Merge commit '7d7355aa92bb36ca0765c49a569a999bcb96f332'James Almer2017-01-311-0/+3
|\ \ | |/ | | | | | | | | | | * commit '7d7355aa92bb36ca0765c49a569a999bcb96f332': x86: Add SSSE3_SLOW CPU flag and related convenience macros Merged-by: James Almer <jamrial@gmail.com>
| * x86: Add SSSE3_SLOW CPU flag and related convenience macrosDiego Biurrun2016-07-201-0/+3
| |
| * apichanges: Fill in missing hashes and datesDiego Biurrun2016-07-161-19/+19
| |
| * hwcontext_vaapi: Add driver quirks to the hwdeviceMark Thompson2016-07-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | The driver being used is detected inside av_hwdevice_ctx_init() and the quirks field then set from a table of known device. If this behaviour is unwanted, the user can also set the quirks field manually. Also adds the Intel i965 driver quirk (it does not destroy parameter buffers used in a call to vaRenderPicture()) and detects that driver to set it.
| * pixfmt: add P010 pixel formatHendrik Leppkes2016-07-021-0/+3
| | | | | | | | | | | | | | P010 is the 10-bit variant of NV12 (planar luma, packed chroma), using two bytes per component to store 10-bit data plus 6-bit zeroes in the LSBs. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | avutil/channel_layout: add av_get_extended_channel_layoutMarton Balint2017-01-241-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Return a channel layout and the number of channels based on the specified name. This function is similar to av_get_channel_layout(), but can also parse unknown channel layout specifications. Unknown channel layout specifications are a decimal number and a capital 'C' suffix, in order to not break compatibility with the lowercase 'c' suffix, which is used for a guessed channel layout with the specified number of channels. Signed-off-by: Marton Balint <cus@passwd.hu>
* | libavutil: add av_lfg_init_from_data() functionJonathan Campbell2017-01-221-0/+3
| | | | | | | | | | | | seeds an AVLFG from binary data. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavc: Remove old vaapi decode infrastructureMark Thompson2017-01-171-0/+4
| | | | | | | | | | | | | | Deprecates struct vaapi_context and the installed header vaapi.h, to be removed at the next version bump. (cherry picked from commit 851960f6f8cf1f946fe42fa36cf6598fac68072c)
* | lavfi/buffersink: add accessors for the stream properties.Nicolas George2017-01-121-0/+3
| | | | | | | | av_buffersink_get_frame_rate() did already exist; its argument becomes const.
* | libavformat/avio: Add avio_get_dyn_buf functionsoftworkz2017-01-071-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds the avio_get_dyn_buf function which allows accessing the content of a DynBuffer without destroying it. This is required in matroskaenc for preliminary writing (correct) mkv headers. Context for this change is fixing regression bug #5977. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avutil: Add av_image_check_size2()Michael Niedermayer2016-12-101-0/+3
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavc: Add spherical packet side data APIVittorio Giovara2016-12-071-0/+4
| | | | | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | lavu: Add AVSphericalMapping type and frame side dataVittorio Giovara2016-12-071-0/+4
| | | | | | | | | | | | | | | | While no decoder currently exports spherical information, this type represents a frame property that has to be passed through from container to frames. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | avformat/utils: add av_stream_add_side_data()James Almer2016-11-181-0/+3
| | | | | | | | | | | | | | | | Functionally similar to av_packet_add_side_data(). Allows the use of an already allocated buffer as stream side data. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
* | hwcontext_vaapi: add a quirk for the missing MemoryType attributeAnton Khirnov2016-11-131-0/+3
| | | | | | | | | | | | | | | | The Intel binary iHD driver does not support the VASurfaceAttribMemoryType, so surface allocation will fail when using it. (cherry picked from commit 2124711b950b03c582a119c75f52a87acc32d6ec)
* | hwcontext_vaapi: Add driver quirks to the hwdeviceMark Thompson2016-11-131-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | The driver being used is detected inside av_hwdevice_ctx_init() and the quirks field then set from a table of known device. If this behaviour is unwanted, the user can also set the quirks field manually. Also adds the Intel i965 driver quirk (it does not destroy parameter buffers used in a call to vaRenderPicture()) and detects that driver to set it. (cherry picked from commit 4926fa9a4aa03f3b751f52e900b9efb87fea0591)
* | pixfmt: Add GRAY12Luca Barbato2016-11-101-0/+3
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | doc/APIchanges: add 3.2 Cut markerMichael Niedermayer2016-10-261-0/+2
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | doc/APIchanges: Fill in some missing thingsMichael Niedermayer2016-10-261-9/+9
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavf: add AV_DISPOSITION_TIMED_THUMBNAILSRodger Combs2016-10-241-0/+3
| | | | | | | | Reviewed-By: Michael Niedermayer <michael@niedermayer.cc>
* | lavf/mux: add avformat_init_outputRodger Combs2016-10-241-0/+3
| | | | | | | | | | | | This allows a consumer to run the muxer's init function without actually writing the header, which is useful in chained muxers that support automatic bitstream filtering.
OpenPOWER on IntegriCloud