summaryrefslogtreecommitdiffstats
path: root/doc/APIchanges
Commit message (Collapse)AuthorAgeFilesLines
...
| * lavc: Add support for increasing hardware frame pool sizesMark Thompson2018-02-111-0/+3
| | | | | | | | | | | | | | | | | | | | AVCodecContext.extra_hw_frames is added to the size of hardware frame pools created by libavcodec for APIs which require fixed-size pools. This allows the user to keep references to a greater number of frames after decode, which may be necessary for some use-cases. It is also added to the initial_pool_size value returned by avcodec_get_hw_frames_parameters() if a fixed-size pool is required.
| * lavc: Mark all AVHWAccel structures as constMark Thompson2017-12-191-0/+3
| |
| * lavc: Deprecate av_hwaccel_next() and av_register_hwaccel()Mark Thompson2017-12-191-0/+4
| |
| * lavc: Add codec metadata to indicate hardware supportMark Thompson2017-12-191-0/+3
| |
* | doc/APIchanges: mention a few more recently introduced and deprecated functionsJames Almer2018-02-071-2/+3
| | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com>
* | doc/APIchanges: fix a recent depreacted function nameJames Almer2018-02-071-1/+1
| | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com>
* | doc/APIChanges: fix lavu version numbers in a few recent entriesJames Almer2018-02-061-3/+3
| | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com>
* | api: add missing version bumps and APIChanges entriesJames Almer2018-02-061-1/+6
| | | | | | | | | | | | | | | | | | avcodec bump missed in 7e8eba2d8755962d9dca5eade57bf8f591a73c0c avformat bump missed in ff46124b0df17a1d35249e09ae8eae9a61f16e04 and 0694d8702421e7aff1340038559c438b61bb30dd avdevice bump missed in 0fd475704e871ef3a535947596a012894bae3cbd Signed-off-by: James Almer <jamrial@gmail.com>
* | lavf: add new API for iterating muxers and demuxersJosh de Kock2018-02-061-1/+6
| |
* | lavc: add new API for iterating codecs and codec parsersJosh de Kock2018-02-061-0/+4
| | | | | | | | Based on an unfinished patch by atomnuker.
* | rtsp: rename certain options after a deprecation periodwm42018-02-041-0/+7
| | | | | | | | | | | | The "timeout" option name inherently clashes with the meaning of the HTTP libavformat protocol option with the same name. Rename it after a deprecation period to make it compatible with the HTTP one.
* | avformat: deprecate AVFormatContext filename fieldMarton Balint2018-01-281-0/+4
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | avformat: add url field to AVFormatContextMarton Balint2018-01-281-0/+3
| | | | | | | | | | | | | | | | | | This will replace the 1024 character limited filename field. Compatiblity for output contexts are provided by copying filename field to URL if URL is unset and by providing an internal function for muxers to set both url and filename at once. Signed-off-by: Marton Balint <cus@passwd.hu>
* | avformat, hls: add a flag to signal unavailability of seekingwm42018-01-271-0/+3
| | | | | | | | | | | | The seek function can just return an error if seeking is unavailable, but often this is too late. Add a flag that signals that the stream is unseekable, and use it in HLS.
* | avutil/aes_ctr: Add method to set 16-byte IV.Jacob Trimble2018-01-231-0/+3
| | | | | | | | | | Signed-off-by: Jacob Trimble <modmaker@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat: make avformat_network_init() explicitly optionalwm42018-01-161-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was sort of optional before - if you didn't call it, networking was initialized on demand, and an ugly warning was logged. Also, the doxygen comments threatened that it would be made strictly required one day. Make it explicitly optional. I would prefer to deprecate it fully, but there might still be legitimate reasons to use this. But the average user won't need it. This is needed only for two reasons: to initialize TLS libraries like OpenSSL and GnuTLS, and winsock. OpenSSL and GnuTLS were already silently initialized on demand if the global network init function was not called. They also have various thread-safety acrobatics, which make concurrent initialization within libavformat safe. In addition, the libraries are moving towards making their global init functions safe, which removes all need for central global init. In particular, GnuTLS 3.5.16 and OpenSSL 1.1.0g have been found to have safe init functions. In all cases, they use internal reference counters to avoid that the global uninit functions interfere with concurrent uses of the library by other API users who called global init. winsock should be thread-safe as well, and maintains an internal reference counter as well. Since we still support ancient TLS libraries, which do not have this fixed, and since it's unknown whether winsock and GnuTLS reinitialization is costly in any way, don't deprecate the libavformat functions yet.
* | avformat: deprecate another ffserver API leftoverwm42018-01-161-0/+4
| |
* | avfilter: deprecate avfilter_link_get_channels()James Almer2018-01-061-0/+3
| | | | | | | | | | Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: James Almer <jamrial@gmail.com>
* | Revert "avfilter: deprecate avfilter_link_get_channels()"James Almer2018-01-051-4/+0
| | | | | | | | | | | | This reverts commit 798dcf2432999f449c76c0e0fe2d7a4ee5eabbc2. It was applied by accident before it could be reviewed.
* | avfilter: deprecate avfilter_link_get_channels()James Almer2018-01-051-0/+4
| | | | | | | | | | | | And move the channels field to the public section of the struct. Signed-off-by: James Almer <jamrial@gmail.com>
* | lavr: deprecate the entire libraryRostislav Pehlivanov2018-01-041-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | Deprecate the entire library. Merged years ago to provide compatibility with Libav, it remained unmaintained by the FFmpeg project and duplicated functionality provided by libswresample. In order to improve consistency and reduce attack surface, as well as to ease burden on maintainers, it has been deprecated. Users of this library are asked to migrate to libswresample, which, as well as providing more functionality, is faster and has higher accuracy. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* | lavc: replace and deprecate the lock managerwm42017-12-261-0/+5
| | | | | | | | | | | | | | Use static mutexes instead of requiring a lock manager. The behavior should be roughly the same before and after this change for API users which did not set the lock manager at all (except that a minor memory leak disappears).
* | avutil: add AVX-512 flagsJames Darnley2017-12-241-0/+3
| |
* | lavc/mediacodec: use AVMediaCodecDeviceContext hw_device_ctx if setAman Gupta2017-12-161-0/+3
| | | | | | | | Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com>
* | lavu/hwcontext: add AV_HWDEVICE_TYPE_MEDIACODECAman Gupta2017-12-161-0/+4
| | | | | | | | Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com>
* | avcodec: add metadata to identify wrappers and hardware decoderswm42017-12-141-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Explicitly identify decoder/encoder wrappers with a common name. This saves API users from guessing by the name suffix. For example, they don't have to guess that "h264_qsv" is the h264 QSV implementation, and instead they can just check the AVCodec .codec and .wrapper_name fields. Explicitly mark AVCodec entries that are hardware decoders or most likely hardware decoders with new AV_CODEC_CAPs. The purpose is allowing API users listing hardware decoders in a more generic way. The proposed AVCodecHWConfig does not provide this information fully, because it's concerned with decoder configuration, not information about the fact whether the hardware is used or not. AV_CODEC_CAP_HYBRID exists specifically for QSV, which can have software implementations in case the hardware is not capable. Based on a patch by Philip Langdale <philipl@overt.org>. Merges Libav commit 47687a2f8aca3f65b6fdd117b1cb66a7409a7fd1.
* | Merge commit '99e9697e3a12ab4a6638a36b95edafd6a98f9eaa'James Almer2017-11-291-0/+3
|\ \ | |/ | | | | | | | | | | * commit '99e9697e3a12ab4a6638a36b95edafd6a98f9eaa': stereo3d: Support view type for frame sequence type Merged-by: James Almer <jamrial@gmail.com>
| * stereo3d: Support view type for frame sequence typeVittorio Giovara2017-11-281-0/+3
| | | | | | | | | | | | Implement detection in h264 and hevc and insertion in framepack filter. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | lavc: Mark all AVHWAccel structures as constMark Thompson2017-11-261-0/+3
| |
* | lavc: Deprecate av_hwaccel_next() and av_register_hwaccel()Mark Thompson2017-11-261-0/+4
| |
* | lavc: Add codec metadata to indicate hardware supportMark Thompson2017-11-261-0/+3
| |
* | doc/APIchanges: Fix lavu versions for OpenCL changesMark Thompson2017-11-251-5/+5
| | | | | | | | Also fix a typo and fill hashes and dates.
* | lavu,lavfi,ffmpeg: Remove experimental OpenCL APIMark Thompson2017-11-221-0/+3
| | | | | | | | | | | | | | | | | | | | | | This was added in early 2013 and abandoned several months later; as far as I can tell, there are no external users. Future OpenCL use will be via hwcontext, which requires neither special OpenCL-only API nor global state in libavutil. All internal users are also deleted - this is just the unsharp filter (replaced by unsharp_opencl, which is more flexible) and the deshake filter (no replacement).
* | lavu: OpenCL hwcontext implementationMark Thompson2017-11-221-0/+4
| |
* | lavu: Add OpenCL hardware pixfmtMark Thompson2017-11-221-0/+3
| |
* | Merge commit 'b46a77f19ddc4b2b5fa3187835ceb602a5244e24'James Almer2017-11-111-0/+3
|\ \ | |/ | | | | | | | | | | | | | | * commit 'b46a77f19ddc4b2b5fa3187835ceb602a5244e24': lavc: external hardware frame pool initialization Includes the fix from e724bdfffbd3c27aac53d1f32f20f105f37caef0 Merged-by: James Almer <jamrial@gmail.com>
| * lavc: external hardware frame pool initializationwm42017-10-191-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | This adds a new API, which allows the API user to query the required AVHWFramesContext parameters. This also reduces code duplication across the hwaccels by introducing ff_decode_get_hw_frames_ctx(), which uses the new API function. It takes care of initializing the hw_frames_ctx if needed, and does additional error handling and API usage checking. Support for VDA and Cuvid missing. Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * pixdesc: Add API to map color property names to enum valuesVittorio Giovara2017-09-211-0/+5
| | | | | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
| * lavf: make avio_read_partial() publicwm42017-08-301-0/+3
| | | | | | | | | | | | | | Main use-case is proxying avio through a foreign I/O layer and a custom AVIO context, without losing latency and performance characteristics. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * imgutils: add function to clear an image to blackwm42017-07-261-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Black isn't always just memset(ptr, 0, size). Limited YUV in particular requires relatively non-obvious values, and filling a frame with repeating 0 bytes is disallowed in some contexts. With component sizes larger than 8 or packed YUV, this can become relatively complicated. So having a generic function for this seems helpful. In order to handle the complex cases in a generic way without destroying performance, this code attempts to compute a black pixel, and then uses that value to clear the image data quickly by using a function like memset. Common cases like yuv410p10 or rgba can't be handled with a simple memset, so there is some code to fill memory with 2/4/8 byte patterns. For the remaining cases, a generic slow fallback is used. Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * lavc, lavu: move frame cropping to a convenience functionwm42017-07-261-0/+3
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * dxva: add support for new dxva2 and d3d11 hwaccel APIswm42017-06-081-0/+6
| | | | | | | | | | | | | | | | | | | | This also adds support to avconv (which is trivial due to the new hwaccel API being generic enough). The new decoder setup code in dxva2.c is significantly based on work by Steve Lhomme <robux4@gmail.com>, but with heavy changes/rewrites. Signed-off-by: Diego Biurrun <diego@biurrun.de>
| * lavu: add new D3D11 pixfmt and hwcontextwm42017-06-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To be used with the new d3d11 hwaccel decode API. With the new hwaccel API, we don't want surfaces to depend on the decoder (other than the required dimension and format). The old D3D11VA pixfmt uses ID3D11VideoDecoderOutputView pointers, which include the decoder configuration, and thus is incompatible with the new hwaccel API. This patch introduces AV_PIX_FMT_D3D11, which uses ID3D11Texture2D and an index. It's simpler and compatible with the new hwaccel API. The introduced hwcontext supports only the new pixfmt. Frame upload code untested. Significantly based on work by Steve Lhomme <robux4@gmail.com>, but with heavy changes/rewrites. Signed-off-by: Diego Biurrun <diego@biurrun.de>
| * hwcontext: Improve allocation in derived contextsMark Thompson2017-04-301-0/+4
| | | | | | | | | | | | | | Use the flags argument of av_hwframe_ctx_create_derived() to pass the mapping flags which will be used on allocation. Also, set the format and hardware context on the allocated frame automatically - the user should not be required to do this themselves.
| * spherical: add functions to retrieve and request projection namesJames Almer2017-04-271-0/+3
| | | | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
| * lavc: Add flag to allow profile mismatch with hardware decodingMark Thompson2017-04-261-0/+3
| |
* | Merge commit '083ea8768121ee800893e124b08483011b798919'James Almer2017-10-231-9/+9
|\ \ | |/ | | | | | | | | | | * commit '083ea8768121ee800893e124b08483011b798919': APIchanges: Update bump dates Merged-by: James Almer <jamrial@gmail.com>
| * APIchanges: Update bump datesVittorio Giovara2017-03-231-7/+7
| |
| * lavc: Add hwaccel_flags field to AVCodecContextwm42017-03-201-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.
| * hwcontext: Make it easier to work with device typesMark Thompson2017-03-201-0/+4
| | | | | | | | | | | | Adds functions to convert to/from strings and a function to iterate over all supported device types. Also adds a new invalid type AV_HWDEVICE_TYPE_NONE, which acts as a sentinel value.
OpenPOWER on IntegriCloud