summaryrefslogtreecommitdiffstats
path: root/libavcodec/utils.c
Commit message (Collapse)AuthorAgeFilesLines
* avcodec: Mark argument in av_{parser|hwaccel|bitstream_filter}_next as constDiego Biurrun2014-07-261-1/+1
|
* build: Add define for SIMD extensions requiring 16-byte aligned buffersDiego Biurrun2014-07-221-1/+1
|
* dsputil: Split motion estimation compare bits off into their own contextDiego Biurrun2014-07-171-3/+3
|
* dsputil: Move draw_edges() to mpegvideoencdspDiego Biurrun2014-07-061-0/+1
|
* lavc: do not allocate edges in the default get_buffer2()Anton Khirnov2014-06-261-21/+1
|
* Add av_image_check_sar() and use it to validate SARJustin Ruggles2014-06-201-0/+33
|
* libavcodec: set AVFrame colorspace fields on decodingwm42014-06-011-0/+7
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* Add transformation matrix API.Vittorio Giovara2014-05-191-0/+9
| | | | | | | | | | | Add AV_PKT_DATA_DISPLAYMATRIX and AV_FRAME_DATA_DISPLAYMATRIX as stream and frame side data (respectively) to describe a display transformation matrix for linear transformation operations on the decoded video. Add functions to easily extract a rotation angle from a matrix and conversely to setup a matrix for a given rotation angle. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavc: remove the locking code in avcodec_close()Anton Khirnov2014-05-181-18/+0
| | | | | This function should not modify any global state, so there should be no reason for any locking.
* lavc: Add hwaccel private data and init/uninit callbacksAnton Khirnov2014-05-111-4/+30
|
* hwaccel: Support specific frame allocatorsLuca Barbato2014-05-111-0/+7
| | | | It would reduce the boilerplate code users have to write.
* lavc: set AVCodecContext.hwaccel in ff_get_format()Anton Khirnov2014-05-111-15/+33
| | | | This way each decoder does not have to do the same thing manually.
* lavc: Add an internal wrapper around get_format()Anton Khirnov2014-05-111-0/+5
| | | | It will be useful in the following commits.
* lavc: do not use AVCodecContext.codec_name in avcodec_string()Anton Khirnov2014-05-011-2/+0
| | | | That field will be deprecated.
* utils: add yvyu422 to avcodec_align_dimensions2Vittorio Giovara2014-04-191-0/+1
|
* mpegvideo: operate with pointers to AVFrames instead of whole structswm42014-04-091-1/+2
| | | | | | | | | | | | | The most interesting parts are initialization in ff_MPV_common_init() and uninitialization in ff_MPV_common_end(). ff_mpeg_unref_picture and ff_thread_release_buffer have additional NULL checks for Picture.f, because these functions can be called on uninitialized or partially initialized Pictures. NULL pointer checks are added to ff_thread_release_buffer() stub function. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* libavcodec: when decoding, copy replaygain side data to decoded framesAnton Khirnov2014-03-241-7/+34
|
* lavc: use AVFrame API properly in ff_reget_buffer()Anton Khirnov2014-02-241-7/+9
|
* lavc: set AVFrame pkt_pts and reordered_opaque in reget_bufferJohn Stebbins2014-02-111-1/+4
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avcodec: Suppress deprecation warnings from avcodec_alloc_frame()Diego Biurrun2014-02-041-0/+2
| | | | The function is itself obsolete and slated for removal.
* lavc: do not force the emu edge flagAnton Khirnov2014-01-211-5/+0
| | | | | | | The default get_buffer2() implementation (and possibly some user ones) does not allocate edges when this flag is set, which may expose bugs in some decoders. Until the 10 release is out, it is safer to remove this part.
* lavc: deprecate CODEC_FLAG_EMU_EDGE and avcodec_get_edge_width().Anton Khirnov2014-01-201-0/+7
|
* lavc: allow the caller to override dimensions in ff_get_buffer()Anton Khirnov2014-01-201-3/+7
| | | | This will be useful for allocating edges in the encoders.
* lavc: do not leak the internal frame if opening the codec failsAnton Khirnov2014-01-061-1/+3
|
* lavc: add 422/444 YUV with alpha to align_dimensions()Anton Khirnov2014-01-061-0/+4
| | | | Aligns frame dimensions to 16, which fixes potential invalid writes.
* avframe: add AV_FRAME_DATA_MATRIXENCODING side data type.Tim Walker2014-01-051-0/+20
| | | | Includes a libavcodec utility function to update a frame's side data.
* lavc: deprecate avcodec_get_frame_defaults().Anton Khirnov2013-12-111-1/+1
| | | | | Also bump libavcodec micro and add an APIchanges entry saying that av_frame_* should now be used instead of the lavc AVFrame functions.
* lavc: call av_frame_unref() instead of avcodec_get_frame_defaults().Anton Khirnov2013-12-111-2/+2
| | | | avcodec_get_frame_defaults() will be deprecated.
* lavc: deprecate avcodec_free_frame()Anton Khirnov2013-12-111-12/+2
| | | | av_frame_free() should be used instead.
* lavc: rework handling of refcounted_frames=0Anton Khirnov2013-12-091-17/+59
| | | | | | | | | Use only proper AVFrame API (no assigning of whole frames, since that hardcodes sizeof(AVFrame) into lavc). Make a copy of the side data, so the caller can use av_frame_unref/free on non-refcounted frames, eliminating the need for avcodec_get_frame_defaults()/avcodec_free_frame().
* lavc/decode_video(): always unref the frame if there is no output in ↵Anton Khirnov2013-12-091-4/+2
| | | | | | | | decode_video Not just on failure. This is the same thing that is done in the audio path and should prevent leaks in decoders that allocate a frame, but then end up not writing into it.
* lavc: remove a pointless check in decode_audio4()Anton Khirnov2013-12-091-1/+1
| | | | av_frame_unref() works fine on unallocated frames.
* lavc: use buf[0] instead of data[0] as the indicator of an allocated frameAnton Khirnov2013-12-091-1/+1
| | | | data[0] may be NULL for valid frames with hwaccel pixel formats.
* lavc: remove the extended_data workarounds.Anton Khirnov2013-12-091-12/+0
| | | | All decoders should now handle it properly.
* lavc: deprecate avcodec_alloc_frame().Anton Khirnov2013-11-161-0/+2
|
* Replace all instances of avcodec_alloc_frame() with av_frame_alloc().Anton Khirnov2013-11-161-1/+1
|
* Move av_fast_{m,re}alloc from lavc to lavu.Anton Khirnov2013-11-141-26/+6
|
* hwaccel: Simplify ff_find_hwaccelLuca Barbato2013-11-101-1/+4
| | | | It is always called by passing fields from an AVCodecContext.
* lavc: move AVCodecContext.pkt to AVCodecInternalAnton Khirnov2013-11-041-4/+4
| | | | It's a private field, not meant to be accessed from outside lavc.
* pthread: store thread contexts in AVCodecInternal instead of AVCodecContextAnton Khirnov2013-11-041-1/+1
| | | | | | It's a private field, it should not be visible to callers. Deprecate AVCodecContext.thread_opaque
* lavc/utils: stop using deprecated avcodec_set_dimensionsAnton Khirnov2013-10-311-5/+9
|
* lavc: replace avcodec_set_dimensions with ff_set_dimensionsAnton Khirnov2013-10-311-4/+15
| | | | | | avcodec_set_dimensions() is supposed to be an internal utility function, there is no reason whatsoever for it to be public. Therefore deprecate it.
* lavc: add error checking to apply_param_change.Anton Khirnov2013-10-301-14/+37
|
* pcm: support 24-bit/32-bit little-endian planarPaul B Mahol2013-09-271-0/+2
| | | | | | Used by LXF. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* avcodec/utils: Simplify a condition that combines HAVE_NEON and ARCH_ARMDiego Biurrun2013-08-211-1/+1
|
* Disable deprecation warnings for cases where a replacement is availableDiego Biurrun2013-08-021-0/+13
|
* lavc: free the padded last frame during audio encoding properlyAnton Khirnov2013-06-201-6/+1
|
* utils: fix avcodec_flush_buffers pre-reference counting compatibilityJanne Grunau2013-06-161-0/+3
| | | | | | | | | | | | The to_free AVframe must be freed just like the other ones. Indeed, the calling application may expect all frames to be released. (This regression caused use-after-free in VLC with hwaccel.) Signed-off-by: Rémi Denis-Courmont <remi@remlab.net> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* lavc: use AVFrame API properly in pad_last_frame().Anton Khirnov2013-06-101-15/+8
| | | | This also simplifies the code.
* lavc/pthread: remove obsolete checksAnton Khirnov2013-05-171-1/+1
| | | | | | Those were useful when avcodec_thread_init() was a public functions. It was deprecated and removed some time ago, so those checks are not needed anymore.
OpenPOWER on IntegriCloud