summaryrefslogtreecommitdiff
path: root/libavcodec/version.h
Commit message (Collapse)AuthorAge
* lavc: deprecate avcodec_get_context_defaults3()Anton Khirnov2016-05-23
| | | | | | | | | This function is supposed to "reset" a codec context to a clean state so that it can be opened again. The only reason it exists is to allow using AVStream.codec as a decoding context (after it was already opened/used/closed by avformat_find_stream_info()). Since that behaviour is now deprecated, there is no reason for this function to exist anymore.
* lavc: deprecate avcodec_copy_context()Anton Khirnov2016-05-23
| | | | | | | | | Since AVCodecContext contains a lot of complex state, copying a codec context is not a well-defined operation. The purpose for which it is typically used (which is well-defined) is copying the stream parameters from one codec context to another. That is now possible with through the AVCodecParameters API. Therefore, there is no reason for avcodec_copy_context() to exist.
* mmaldec: Add mpeg2 decoding supportJulian Scheel2016-04-30
| | | | | | | | | | | Register mmaldec as mpeg2 decoder. Supporting mpeg2 in mmaldec is just a matter of setting the correct MMAL_ENCODING on the input port. To ease the addition of further supported mmal codecs a macro is introduced to generate the decoder and decoder class structs. Signed-off-by: Julian Scheel <julian@jusst.de> Signed-off-by: wm4 <nfxjfg@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* omx: Add support for zerocopy input of framesMartin Storsjö2016-04-12
| | | | | | | | | | | This can only be used if the input data happens to be laid out exactly correctly. This might not be supported on all encoders, so only enable it with an option, but enable it automatically on raspberry pi, where it is known to be supported. Signed-off-by: Martin Storsjö <martin@martin.st>
* omx: Add support for broadcom OMX on raspberry piMartin Storsjö2016-04-12
| | | | | | | | | | | | | | | | The raspberry pi uses the alternative API/ABI for OMX; this makes such builds incompatible with all the normal OpenMAX implementations. Since this can't easily be detected at configure time (one can build for raspberry pi's OMX just fine using the generic, pristine Khronos OpenMAX IL headers, no need for their own extensions), require a separate configure switch for it instead. The broadcom host library can't be unloaded once loaded and started; the deinit function that it provides is a no-op, and after started, it has got background threads running, so dlclosing it makes it crash. Signed-off-by: Martin Storsjö <martin@martin.st>
* libavcodec: Add H264/MPEG4 encoders based on OpenMAX ILMartin Storsjö2016-04-12
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* lavc: VAAPI H.264 encoderMark Thompson2016-03-30
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavc: introduce a new decoding/encoding API with decoupled input/outputwm42016-03-23
| | | | | | | | | | | | | | | | Until now, the decoding API was restricted to outputting 0 or 1 frames per input packet. It also enforces a somewhat rigid dataflow in general. This new API seeks to relax these restrictions by decoupling input and output. Instead of doing a single call on each decode step, which may consume the packet and may produce output, the new API requires the user to send input first, and then ask for output. For now, there are no codecs supporting this API. The API can work with codecs using the old API, and most code added here is to make them interoperate. The reverse is not possible, although for audio it might. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavc: add a new bitstream filtering APIAnton Khirnov2016-03-20
| | | | Deprecate the current bitstream filtering API.
* lavc: add codec parameters APIAnton Khirnov2016-02-23
| | | | | | This API is intended to allow passing around codec parameters without using full AVCodecContext (which also contains codec options and encoder/decoder state).
* cosmetics: Drop empty comment linesDiego Biurrun2016-02-18
|
* lavc: add a field for passing AVHWFramesContext to encodersAnton Khirnov2016-02-14
|
* lavc: Move b_frame_strategy and b_sensitivity to codec private optionsVittorio Giovara2016-01-21
| | | | | | | | | | The b_frame_strategy option is only used by mpegvideoenc, qsv, x264, and xavs, while b_sensitivity is only used by mpegvideoenc. These are very codec-specific options, so deprecate the global variants. Set proper limits to the maximum allowed values. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* imgconvert: Add the proper API guards to a deprecated functionVittorio Giovara2016-01-21
|
* nvenc: rename encodersAnton Khirnov2016-01-12
| | | | | Change 'nvenc_<codec>' to '<codec>_nvenc', which is consistent with other similar decoders and encoders (QSV, MMAL).
* lavc: add profiles to AVCodecDescriptorAnton Khirnov2015-12-12
| | | | | The profiles are a property of the codec, so it makes sense to export them through AVCodecDescriptors, not just the codec implementations.
* lavc: Drop exporting 2-pass encoding statsVittorio Giovara2015-12-07
| | | | | | | | | | | | | | These variables are coming from mpegvideoenc where are supposedly used as bit counters on various frame properties. However their use is unclear as they lack documentation, are available only from a very small subset of encoders, and they are hardly used in the wild. Also frame_bits in aacenc is employed in a similar way. Remove this functionality from AVCodecContex, these variable are mostly frame properties, and too few encoders support setting them with anything useful. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Deprecate coder_type and its symbolsVittorio Giovara2015-12-07
| | | | | | | | | | Most option values are simply unused or ignored and in practice the majory of codecs only need to check whether to enable rle or not. Add appropriate codec private options which better expose the allowed features. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* mpegvideo_enc: export vbv_delay in side dataAnton Khirnov2015-12-06
| | | | Deprecate AVCodecContext.vbv_delay
* avpacket: add a function for wrapping existing data as side dataAnton Khirnov2015-12-06
|
* lavc: G.723.1 encoderMohamed Naufal2015-11-30
| | | | | | Additional improvements by Michael Niedermayer <michaelni@gmx.at>. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Deprecate avctx.rtp_callback fieldVittorio Giovara2015-11-20
| | | | | | | | | | | | | | | | | | | | | This function returns the encoded data of a frame, one slice at a time directly when that slice is encoded, instead of waiting for the full frame to be done. However this field has a debatable usefulness, since it looks like it is just a convoluted way to get data at lowest possible latency, or a somewhat hacky way to store h263 in RFC-2190 rtp encapsulation. Moreover when multi-threading is enabled (which is by default) the order of returned slices is not deterministic at all, making the use of this function not reliable at all (or at the very least, more complicated than it should be). So, for the reasons stated above, and being used by only a single encoder family (mpegvideo), this field is deemed unnecessary, overcomplicated, and not really belonging to libavcodec. Libavformat features a complete implementation of RFC-2190, for any other case. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* avcodec: Define side data type for fallback trackJohn Stebbins2015-11-18
| | | | | | | | | This side data type is meant to be added to AVStream side data. A fallback track indicates an alternate track to use when the current track can not be decoded for some reason. e.g. no decoder available for codec. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avpacket: Replace av_free_packet with av_packet_unrefLuca Barbato2015-10-26
| | | | | | | `av_packet_unref` matches the AVFrame ref-counted API and can be used as a drop in replacement. Deprecate `av_free_packet`.
* innoHeim/Rsupport Screen Capture Codec decoderVittorio Giovara2015-10-23
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* kvazaar: Add libkvazaar HEVC encoderArttu Ylä-Outinen2015-10-23
| | | | | Signed-off-by: Arttu Ylä-Outinen <arttu.yla-outinen@tut.fi> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* lavc: Add data and linesize to AVSubtitleRectVittorio Giovara2015-10-21
| | | | | | | | | | | | Use the new fields directly instead of the ones from AVPicture. This removes a layer of indirection which serves no pratical purpose whatsoever, and will help in removing AVPicture structure completely later. Every subtitle encoder/decoder seamlessly points to the new arrays, so it is possible to deprecate AVSubtitleRect.pict. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* wrapped_avframe: Initial implementationLuca Barbato2015-10-10
|
* Screenpresso SPV1 decoderVittorio Giovara2015-09-30
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Make AVPacket.duration int64, and deprecate convergence_durationwm42015-09-29
| | | | | | | | | Note that convergence_duration had another meaning, one which was in practice never used. The only real use for it was a 64 bit replacement for the duration field. It's better just to make duration 64 bits, and to get rid of it. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* vdpau: deprecate av_vdpau_get_profile()Rémi Denis-Courmont2015-09-28
| | | | | | | | This function can intrinsically not deal with codec profile fallback (for H.264 Constrained Baseline especially), and was made redundant by av_vdpau_bind_context(). Signed-off-by: Anton Khirnov <anton@khirnov.net>
* d3d11va: WindowsPhone requires a mutex around ID3D11VideoContextSteve Lhomme2015-09-17
|
* lavc: Enable side data only packets by defaultVittorio Giovara2015-09-12
| | | | | | | | | Deprecate the now unused option, but temporarily retain the capability to disable the now default behaviour. Mention this change in the AVPacket documentation. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* DXV decoderVittorio Giovara2015-09-02
| | | | Support all DXDI and DXD3 normal quality videos.
* Bump major versions of all librariesVittorio Giovara2015-08-28
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* Postpone API-incompatible changes until the next bumpVittorio Giovara2015-08-28
|
* lavc: Drop deprecated deinterlace moduleVittorio Giovara2015-08-28
| | | | Deprecated in 03/2013.
* lavc: Drop deprecated thread opaque and codec pktVittorio Giovara2015-08-28
| | | | These fields were never part of the public API.
* lavc: Drop deprecated get_buffer related functionsVittorio Giovara2015-08-28
| | | | Deprecated in 11/2012.
* lavc: Drop deprecated destruct_packet related functionsVittorio Giovara2015-08-28
| | | | Deprecated in 10/2012.
* lavc: Drop deprecated request_channels related functionsVittorio Giovara2015-08-28
| | | | Deprecated in 04/2011.
* Support the Hap chunked frame formatTom Butterworth2015-07-27
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Update version and APIchangesVittorio Giovara2015-07-27
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Deprecate avctx.me_methodVittorio Giovara2015-07-27
| | | | | | | | This option is extremely codec specific and only a few codecs employ it. Move it to codec private options instead: mpegenc family supports only 3 values, xavs and x264 use 5, and xvid has a different metric entirely. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: add Intel libmfx-based HEVC decoder.Anton Khirnov2015-07-25
|
* Deprecate avctx.coded_frameVittorio Giovara2015-07-20
| | | | | | | | | | | | | | | | | The rationale is that coded_frame was only used to communicate key_frame, pict_type and quality to the caller, as well as a few other random fields, in a non predictable, let alone consistent way. There was agreement that there was no use case for coded_frame, as it is a full-sized AVFrame container used for just 2-3 int-sized properties, which shouldn't even belong into the AVCodecContext in the first place. The appropriate AVPacket flag can be used instead of key_frame, while quality is exported with the new AVPacketSideData quality factor. There is no replacement for the other fields as they were unreliable, mishandled or just not used at all. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* Add a quality factor packet side dataVittorio Giovara2015-07-20
| | | | | | | | This is necessary to preserve the quality information currently exported with coded_frame. Add the new side data to every encoder that needs it, and use it in avconv. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: add Intel libmfx-based HEVC encoderAnton Khirnov2015-07-08
|
* lavc: Deprecate avctx.rc_strategyVittorio Giovara2015-07-08
| | | | | | | Only used by libxvid in ratecontrol module, so move it to a codec private option. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavc: Deprecate avctx.{inter,intra}_quant_biasVittorio Giovara2015-07-02
| | | | | | | They are used by dnxhd and mpegvideo_enc exclusively, move them to codec private options instead. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>