summaryrefslogtreecommitdiff
path: root/libavutil
Commit message (Collapse)AuthorAge
* Don't anonymously typedef structsDiego Biurrun2015-02-14
|
* frame: clarify buf documentationAnton Khirnov2015-02-08
| | | | Mention explicitly that the array must be filled contiguously.
* mem: fix pointer pointer aliasing violationsRémi Denis-Courmont2015-02-01
| | | | | | | | | This uses explicit memory copying to read and write pointer to pointers of arbitrary object types. This works provided that the architecture uses the same representation for all pointer types (the previous code made that assumption already anyway). Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* lavu: Check av_dict_set allocationsLuca Barbato2015-01-29
| | | | | Bug-Id: CID 1257772 Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* Add a side data type for audio service type.Anton Khirnov2015-01-27
| | | | | Currently, audio service type is a field in AVCodecContext. However, side data is more appropriate for this kind of information.
* lavu: add planar 16 bit and 8 bit rgb with alphaPaul B Mahol2015-01-14
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* imgutils: create misc functions for dealing with buffersStefano Sabatini2015-01-14
| | | | | | | | | | | | | | | | | Move the lavc/imgconvert functions and rename them as follows: avpicture_get_size -> av_image_get_buffer_size() avpicture_fill -> av_image_fill_arrays() avpicture_layout -> av_image_copy_to_buffer() The new functions have an align parameter, which allows to define the linesize alignment assumed in the buffer (which is set or read). The names of the functions are consistent with the lavu/samples API (av_samples_get_buffer_size(), av_samples_fill_arrays()). A redundant check has been dropped from av_image_fill_arrays(). Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* opt: check memory allocationVittorio Giovara2015-01-05
| | | | | CC: libav-stable@libav.org Bug-Id: CID 1257771
* check memory errors from av_strdup()Vittorio Giovara2014-12-18
|
* lavu: Refactor side data wipingLuca Barbato2014-12-18
| | | | | | | | And make sure the nb_side_data field is reset as well. Based on an initial patch from wm4 <nfxjfg@googlemail.com>. CC: libav-stable@libav.org
* thread: use "" instead of <> for including the w32pthreads wrapperAnton Khirnov2014-12-14
| | | | Found-by: Dave Yeo <dave.r.yeo@gmail.com>
* aarch64: Use .data.rel.ro for const data with relocationsMartin Storsjö2014-12-09
| | | | | | | This reverts commit c00365b46d464ce47716315c1801818d811bdb9a in addition to using a different section. Signed-off-by: Martin Storsjö <martin@martin.st>
* arm: Use .data.rel.ro for const data with relocationsMartin Storsjö2014-12-09
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* v210enc: Add SIMD optimised 8-bit and 10-bit encodersKieran Kunhya2014-12-05
| | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavu: fix memory leaks by using a mutex instead of atomicswm42014-11-27
| | | | | | | | | | | | | | | | | | | | | The buffer pool has to atomically add and remove entries from the linked list of available buffers. This was done by removing the entire list with a CAS operation, working on it, and then setting it back again (using a retry-loop in case another thread was doing the same thing). This could effectively cause memory leaks: while a thread was working on the buffer list, other threads would allocate new buffers, increasing the pool's total size. There was no real leak, but since these extra buffers were not needed, but not free'd either (except when the buffer pool was destroyed), this had the same effects as a real leak. For some reason, growth was exponential, and could easily kill the process due to OOM in real-world uses. Fix this by using a mutex to protect the list operations. The fancy way atomics remove the whole list to work on it is not needed anymore, which also avoids the situation which was causing the leak. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavu: add wrappers for the pthreads mutex APIAnton Khirnov2014-11-27
| | | | | | | | | | Also add no-op fallbacks when threading is disabled. This helps keeping the code clean if Libav is compiled for targets without threading. Since we assume that no threads of any kind are used in such configurations, doing nothing is ok by definition. Based on a patch by wm4 <nfxjfg@googlemail.com>.
* Share the utf8 to wchar conversion routine between lavf and lavuMartin Storsjö2014-11-27
| | | | | | | | This doesn't add any dependency on library internals, since this only is a static inline function that gets built into each of the calling functions - this is only to reduce the code duplication. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavu: move internal define to the only places where it is usedVittorio Giovara2014-11-24
|
* opt: Fix the documentation mentioning av_set_string3Luca Barbato2014-11-11
| | | | It is av_opt_set now.
* avstring: Mark some character handling functions av_constHenrik Gramner2014-11-07
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Use gmtime_r instead of gmtime and localtime_r instead of localtimeMartin Storsjö2014-10-26
| | | | | | | | | | | gmtime isn't thread safe in general. In msvcrt (which lacks gmtime_r), the buffer used by gmtime is thread specific though. One call to localtime is left in avconv_opt.c, where thread safety shouldn't matter (instead of making avconv depend on the libavutil internal header). Signed-off-by: Martin Storsjö <martin@martin.st>
* lavu: Provide fallbacks for gmtime_r and localtime_rMartin Storsjö2014-10-26
| | | | | | | | | | | | This allows writing most code as if they always are is available. These are ok to use from other libraries even though it's not a public header, since they only provide an inline declaration, and doesn't add an actual dependency on lavu internals. (This can be considered more a build system compatibility fallback than a libavutil feature.) Signed-off-by: Martin Storsjö <martin@martin.st>
* lavu: Add av_gettime_relativeMartin Storsjö2014-10-24
| | | | | | | | | | | | | | | | | | | Since av_gettime() is used in a number of places where actual real time clock is required, the monotonic clock introduced in ebef9f5a5 would have consequences that are hard to handle. Instead split it into a separate function that can be used in the cases where only relative time is desired. On platform where no monotonic clock is available, the difference between the two av_gettime functions is not clear, and one could mistakenly use the relative clock where an absolute one is required. Therefore add an offset, to make it evident that the time returned from av_gettime_relative never is actual current real time, even though it is based on av_gettime. Based on a patch by Olivier Langlois. Signed-off-by: Martin Storsjö <martin@martin.st>
* pixdesc: return color properties namesVittorio Giovara2014-10-08
|
* pixfmt: mark further reserved valuesVittorio Giovara2014-10-08
|
* doc: expand description for some color propertiesVittorio Giovara2014-10-08
|
* log: Unbreak no-tty support on 256color terminalsLuca Barbato2014-09-26
|
* x86inc: Make INIT_CPUFLAGS support an arbitrary number of cpuflagsHenrik Gramner2014-09-09
| | | | | | Previously there was a limit of two cpuflags. Signed-off-by: Diego Biurrun <diego@biurrun.de>
* x86inc: Free up variable name "n" in global namespaceLoren Merritt2014-09-09
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* x86inc: Make ym# behave the same way as xm#Henrik Gramner2014-09-09
| | | | | | This makes more sense for future implementations of templates with zmm registers. Signed-off-by: Diego Biurrun <diego@biurrun.de>
* time: Add missing zeroGabriel Dume2014-09-08
| | | | | | Leftover of 56d7df91e010a177a80cfc8dbe394305 Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* time: Use clock_gettime if the monotonic clock is availableLuca Barbato2014-09-03
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* ppc: Support little endian intreadwriteLuca Barbato2014-09-03
|
* cosmetics: Write NULL pointer inequality checks more compactlyGabriel Dume2014-08-15
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* cosmetics: Write NULL pointer equality checks more compactlyGabriel Dume2014-08-15
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* atomic_win32: Drop unnecessary atomic.h #includeDiego Biurrun2014-08-15
| | | | The file does not require atomic.h. Also kills function redefinition warnings.
* frame: Remove some FF_API_AVFRAME_COLORSPACE leftoversDiego Biurrun2014-08-14
|
* cpu-test: Add unistd.h #include for getopt()Diego Biurrun2014-08-13
|
* mem: add av_strndup() for duplicating substringsAnton Khirnov2014-08-13
|
* stereo3d: initialize AVStereo3D to zeroFelix Abecassis2014-08-13
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* AVOption: add support for dictionary types.Andrew Stone2014-08-13
| | | | | | | In order to support metadata being set as an option, it's necessary to be able to set dictionaries as values. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avresample: Introduce AVFrame-based APILuca Barbato2014-08-10
|
* Remove obsolete FF_API_AVFRAME_COLORSPACE cruft.Anton Khirnov2014-08-09
|
* Bump major versions of all libraries.Anton Khirnov2014-08-09
|
* Postpone API-incompatible changes until the next bump.Anton Khirnov2014-08-09
|
* avutil: add AV_PIX_FMT_YA16 pixel formatVittorio Giovara2014-08-04
|
* avutil: rename AV_PIX_FMT_Y400A to AV_PIX_FMT_YA8Vittorio Giovara2014-08-04
| | | | | | | The rationale is that you have a packed format in form <greyscale sample> <alpha sample> <greyscale sample> <alpha sample> and shortening greyscale to 'G' might make one thing about Greenscale instead. An alias pixel format and color space name are provided for compatibility.
* avutil: add alias names for gray 8/16 colour spacesVittorio Giovara2014-08-04
|
* pixdesc: Support pixelformat aliasesLuca Barbato2014-08-04
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* imgutils: Do not declare avpriv_set_systematic_pal2 in the public headerDiego Biurrun2014-08-04
|