aboutsummaryrefslogtreecommitdiffstats
path: root/doc/APIchanges
Commit message (Collapse)AuthorAgeFilesLines
* APIchanges: Add entry for AV_PKT_DATA_RTCP_SRMarvin Scholz7 days1-0/+3
|
* doc/APIchanges: add missing entries for the recent changesJames Almer13 days1-0/+10
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/avassert: Add av_unreachable() and av_assume() macrosAndreas Rheinhardt2025-05-211-0/+3
| | | | | | | | | | | | | Useful to let the compiler and static analyzers know that something is unreachable without adding an av_assert (which would be either dead for the compiler or add runtime overhead) for this. The implementation used here enforces the use of a message to provide a reason why a particular code is supposed to be unreachable. Reviewed-by: Ramiro Polla <ramiro.polla@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/avfilter: Add avfilter_link_get_hw_frames_ctx()softworkz2025-05-151-0/+3
| | | | Signed-off-by: softworkz <softworkz@hotmail.com>
* avutil/log,hwcontext: Add AV_CLASS_CATEGORY_HWDEVICEsoftworkz2025-04-211-0/+3
| | | | Signed-off-by: softworkz <softworkz@hotmail.com>
* libpostproc: update APIChanges and version for "deprecate the AMD 3DNow"Sean McGovern2025-04-161-0/+3
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* APIChanges & version bump for AV_DICT_DEDUPMichael Niedermayer2025-04-071-0/+3
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* libs: bump major version for all librariesJames Almer2025-03-281-1/+1
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* pixfmt: add AV_PIX_FMT_GBRAP32Lynne2025-03-171-0/+3
| | | | | | This commit adds a 32-bit *integer* planar RGBA format. Vulkan FFv1 decoding is best performed on separate planes, rather than packed RGBA (i.e. RGBA128), hence this is useful as an intermediate format.
* avutil/pixfmt: add YAF16 and YAF32 pixel formatsJames Almer2025-03-101-0/+4
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* lavu: bump minor and add APIChanges entry for new GRAY32 pixfmtsLynne2025-03-011-0/+3
|
* APIChanges: add entry for new AMD AMF pixfmtLynne2025-03-011-0/+3
|
* APIChanges: add entries for new planar GBR and float gray pixfmtsLynne2025-03-011-0/+4
| | | | Was not done when the patches were pushed.
* avutil/log: support logging of date and time informationsoftworkz2025-02-161-0/+3
| | | | | Signed-off-by: softworkz <softworkz@hotmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec: add AV_CODEC_ID_IVTV_VBIScott Theisen2025-02-091-0/+3
| | | | | | | | | | | | | | | | | IVTV, a Linux driver for TV tuners, and V4L2 utilize a coding named after IVTV to carry sliced VBI data in MPEG streams produced by tuner cards with VBI capture capability and an MPEG-2 encoder SoC. IVTV or V4L2 driver will transport the coded data into a MPEG-PS private stream ("IVTV") that can be captured from the card alongside the video/audio. The data could include: EIA-608, Teletext, WSS (PAL widescreen signaling), or VPS (PAL VCR signaling). Signed-off-by: Marth64 <marth64@proxyid.net>
* doc/APIChanges: fix library name for a recent entryJames Almer2025-01-251-1/+1
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/frame: add a side data prop to signal channel layout dependent typesJames Almer2025-01-251-0/+3
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/buffersink: add av_buffersink_get_side_data()James Almer2025-01-251-0/+3
| | | | | | | This will be used to get global side data that was propagated through the filterchain. Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/buffersrc: add a side_data fieldJames Almer2025-01-251-0/+3
| | | | | | This will be used to propagate global side data through the filterchain. Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/avfilter: add a side_data field to AVFilterLinkJames Almer2025-01-251-0/+3
| | | | | | This will be used to propagate global side data through the filterchain. Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/frame: add AV_FRAME_SIDE_DATA_FLAG_NEW_REFJames Almer2025-01-101-0/+3
| | | | | | | The flag is documented but did not exist. So introduce it as it can be useful. Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec: deprecate AVCodecContext propertiesMarton Balint2025-01-051-0/+3
| | | | | | | | These properties are unreliable because they depend on the frames decoded so far, users should check directly the presence of the decoded AVFrame side data or AVFrame flags. Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/frame: add AV_FRAME_FLAG_LOSSLESSMarton Balint2025-01-051-0/+3
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/libjxl: add animated JPEG XL encoderLeo Izen2025-01-031-0/+3
| | | | | | | | | | | | | libjxl supports animated encoding, so we add a wrapper to the library using the receive_packet callback method. This code was based largely on a patch sent by Zsolt Vadász, although it was updated to use more recent coding practices and many of the leaks and issues were fixed. Reviewed-by: Marth64 <marth64@proxyid.net> Co-authored-by: Zsolt Vadász <zsolt_vadasz@protonmail.com> Signed-off-by: Leo Izen <leo.izen@gmail.com>
* avutil/channel_layout: add a 5.1.2 layout using side channelsJames Almer2025-01-031-0/+3
| | | | | | And rename the existing 5.1.2 to explicitly state it contains back channels. Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/frame: add av_frame_side_data_remove_by_props()Niklas Haas2024-12-231-0/+3
| | | | | | | | | | As discussed in the previous commit, we often need a convenient way of stripping all side data related to a certain aspect of the frame. This helper accomplishes just that. I considered also adding a way to match only side data matching *all* properties, but I think this is sufficiently useless in practise to not warrant inclusion in the API.
* avutil/frame: add AV_SIDE_DATA_PROP_{SIZE,COLOR}_DEPENDENTNiklas Haas2024-12-231-0/+3
| | | | | | | | | | | | | | | | | | Many filters modify certain aspects of frame data, e.g. through resizing (vf_*scale* family), color volume mapping (vf_lut*, vf_tonemap*), or possibly others. When this happens, we should strip all frame side data that will no longer be correct/relevant after the operation. For example, changing the image size should invalidate AV_FRAME_DATA_PANSCAN because the crop window (given in pixels) no longer corresponds to the actual image size. For another example, tone-mapping filters (e.g. from HDR to SDR) should strip all of the dynamic HDR related metadata. Since there are a lot of different side data types that are affected by such operations, it makes sense to establish this information in a common, easily accessible way. The existing side data properties enum is a perfect fit for this.
* swscale: add ICC intent enum and optionNiklas Haas2024-12-231-0/+3
| | | | | | | | This setting can be used to infuence the type of tone and gamut mapping used internally when color space conversions are required. As discussed at VDD'24, the default was set to relative colorimetric clipping, which is approximately associative, surjective and idempotent. As such, it roundtrips well, although it is strictly speaking not associative on out-of-gamut colors.
* lavc/packet: add API for an AVPacket-based AVContainerFifoAnton Khirnov2024-12-151-0/+3
|
* lavc/container_fifo: move to lavu and make publicAnton Khirnov2024-12-151-1/+4
| | | | | | | | | | | | | | This can be useful in other places, e.g. it can replace objpool in fftools. The API is modified in the following nontrivial ways: * opaque pointers can be passed through to all user callbacks * read and write were previously separate callbacks in order to accomodate the caller wishing to write a new reference to the FIFO and keep the original one; the two callbacks are now merged into one, and a flags argument is added that allows to request such behaviour on a per-call basis * new peek and drain functions
* lavc/refstruct: move to lavu and make publicAnton Khirnov2024-12-151-0/+4
| | | | It is highly versatile and generally useful.
* avutil/channel_layout: add a 9.1.6 layoutJames Almer2024-12-131-0/+3
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/csp: add EOTF function definitionsNiklas Haas2024-12-051-0/+3
| | | | | | | | | | | | The existing av_csp_trc_func_from_id() mostly implements the OETF, except for PQ. As such, we are currently missing a precise definition of an ITU-R EOTF. Introduce the new functions av_csp_itu_eotf() and av_csp_itu_eotf_inv(), to fill this void. Note that this is not possible in all cases, e.g. AVCOL_TRC_LOG which has no corresponding EOTF definition in any ITU-R standard. Note that we cannot implement the proper HLG and SMPTE 428 OOTFs without access to all three color channels, because they are not independent per channel. As a result, we need to define them on double[3] instead of double (*func)(double).
* avutil/csp: add av_csp_trc_inv_from_id()Niklas Haas2024-12-051-0/+3
| | | | | Mathematical inverse of av_csp_trc_from_id(), plus testing to make sure it roundtrips correctly with the corresponding TRC.
* swscale: introduce new, dynamic scaling APINiklas Haas2024-11-251-0/+4
| | | | | | | | | | | | | | | | | | | | | | | As part of a larger, ongoing effort to modernize and partially rewrite libswscale, it was decided and generally agreed upon to introduce a new public API for libswscale. This API is designed to be less stateful, more explicitly defined, and considerably easier to use than the existing one. Most of the API work has been already accomplished in the previous commits, this commit merely introduces the ability to use sws_scale_frame() dynamically, without prior sws_init_context() calls. Instead, the new API takes frame properties from the frames themselves, and the implementation is based on the new SwsGraph API, which we simply reinitialize as needed. This high-level wrapper also recreates the logic that used to live inside vf_scale for scaling interlaced frames, enabling it to be reused more easily by end users. Finally, this function is designed to simply copy refs directly when nothing needs to be done, substantially improving throughput of the noop fast path. Sponsored-by: Sovereign Tech Fund Signed-off-by: Niklas Haas <git@haasn.dev>
* swscale: organize and better document flagsNiklas Haas2024-11-251-0/+3
| | | | | | | | | | | | Group them into an enum rather than random #defines, and document their behavior a bit more obviously. Of particular note, I discovered that SWS_DIRECT_BGR is not referenced anywhere else in the code base. As such, I have moved it to the deprecated section, alongside SWS_ERROR_DIFFUSION. Sponsored-by: Sovereign Tech Fund Signed-off-by: Niklas Haas <git@haasn.dev>
* swscale: expose SwsContext publiclyNiklas Haas2024-11-251-0/+3
| | | | | | | | | | Following in the footsteps of the work in the previous commit, it's now relatively straightforward to expose the options struct publicly as SwsContext. This is a step towards making this more user friendly, as well as following API conventions established elsewhere. Sponsored-by: Sovereign Tech Fund Signed-off-by: Niklas Haas <git@haasn.dev>
* avutil/frame: also align data pointers in av_frame_get_buffer()Pavel Koshevoy2024-11-221-0/+4
| | | | | | | | | | | | | | | This avoids unpleasant surprises to av_frame_get_buffer callers that explicitly specified 64-byte alignment and didn't get AVFrame.data pointers that are 64-byte aligned. For example, see https://github.com/sekrit-twc/zimg/issues/212 Although the zscale issue has already been resolved by other means it would still be prudent to improve the behavior of av_frame_get_buffer to fix any unknown and future instances of similar issues. Co-authored-by: James Almer <jamrial@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/channel_layout: add Binaural channels and layoutJames Almer2024-11-131-0/+5
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/pixfmt: add XV48 pixel formatJames Almer2024-10-261-0/+3
| | | | | | | Much like XV30 and XV36 in d75c4693fef51e8f0a1b88798530f4c5147ea906, XV48 is added to support 16bit 4:4:4 as defined by Microsoft. Signed-off-by: James Almer <jamrial@gmail.com>
* swscale: add sws_is_noop()Niklas Haas2024-10-231-0/+3
| | | | | | | Exactly what it says on the tin. Sponsored-by: Sovereign Tech Fund Signed-off-by: Niklas Haas <git@haasn.dev>
* swscale: add new frame testing APINiklas Haas2024-10-231-0/+8
| | | | | | | | | | | | Replacing the old sws_isSupported* API with a more consistent family of functions that follows the same signature and naming convention, including a placeholder for testing the color space parameters that we don't currently implement conversions for. These functions also perform some extra basic sanity checking. Sponsored-by: Sovereign Tech Fund Signed-off-by: Niklas Haas <git@haasn.dev>
* swscale: add sws_free_context()Niklas Haas2024-10-231-0/+3
| | | | | | | | Merely a convenience wrapper around sws_freeContext(). The name change is for parity with the other sws_* functions. Sponsored-by: Sovereign Tech Fund Signed-off-by: Niklas Haas <git@haasn.dev>
* avutil/pixfmt: add Y216 pixel formatJames Almer2024-10-231-0/+3
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* lavu: bump minor and add APIChanges entries for new 32bpc pixfmtsLynne2024-10-151-0/+3
|
* doc/APIchanges: add missing entry for adding RGBF16Martin Schitter2024-10-151-0/+3
| | | | | | The missing APIchanges entry requested by A.Khirnov. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avutil/pixfmt: add V30X pixel formatJames Almer2024-10-081-0/+4
| | | | | | This maps to the 444YpCbCr10 pixel format as defined by Apple. Signed-off-by: James Almer <jamrial@gmail.com>
* lavu/log,opt: detect setting non-runtime options post-initAnton Khirnov2024-10-011-0/+3
| | | | | | | Add a mechanism to AVClass to allow objects to signal their state to generic code. When an object flags itself with the 'initialized' state, print an error (and fail, after the next major bump) if the caller attempts to set non-runtime options.
* avformat/avformat: add side data to AVStreamGroupTileGridJames Almer2024-09-301-0/+3
| | | | | | | Will be used to export certain information present in HEIF samples, like rotation metadata, ICC profiles, and potentially others. Signed-off-by: James Almer <jamrial@gmail.com>
* lavu: deprecate av_opt_set_int_list() and related infrastructureAnton Khirnov2024-09-301-0/+5
| | | | It has no more users and is replaced by array-type options.