Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-01-09vp8: drop support for real (non-emulated) edgesAnton Khirnov
They are not measurably faster on x86, they might be somewhat faster on other platforms due to missing emu edge SIMD, but the gain is not large enough to justify the added complexity.
2013-11-15lavc: Edge emulation with dst/src linesizeRonald S. Bultje
Allow supporting files for which the image stride is smaller than the maximum block size + number of subpel mc taps, e.g. a 64x64 VP9 file or a 16x16 VP8 file with -fflags +emu_edge.
2013-10-31vp8: stop using deprecated avcodec_set_dimensionsAnton Khirnov
2013-10-16lavc: Convert some remaining strides to ptrdiff_tRonald S. Bultje
2013-10-04cosmetics: Group .name and .long_name together in codec/format declarationsDiego Biurrun
2013-09-18Add a WebP decoderJustin Ruggles
Container and lossy decoding by Aneesh Dogra <aneesh@sugarlabs.org> Lossless decoding by Justin Ruggles <justin.ruggles@gmail.com>
2013-07-07vp8: Wait for prev_frame to parse segment_map before reading itRonald S. Bultje
This fixes occasional failures of vp8-test-vector-010 with frame-level multithreading enabled. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-30vp8: Fix pthread_cond and pthread_mutex leaksMatt Wolenetz
CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-03-14avcodec: av_log_missing_feature(1) ---> avpriv_request_sample()Diego Biurrun
2013-03-08lavc decoders: work with refcounted frames.Anton Khirnov
2013-01-23Drop DCTELEM typedefDiego Biurrun
It does not help as an abstraction and adds dsputil dependencies. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-12-20lavc: introduce VideoDSPContextRonald S. Bultje
Move some functions from dsputil. The idea is that videodsp contains functions that are useful for a large and varied set of video decoders. Currently, it contains emulated_edge_mc() and prefetch(). Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-12-05lavc: fix decode_frame() third parameter semantics for video decodersAnton Khirnov
It's got_frame, not data size
2012-10-27vp8: fix memset() crossing array boundaryMans Rullgard
Indexing across array boundaries is not allowed by C99. Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-12vp8: reset loopfilter delta values at keyframes.Sami Pietila
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-10-08Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormatAnton Khirnov
2012-08-09doxygen: Fix function parameter names to match the codeDiego Biurrun
2012-08-07Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov
2012-07-25vp8: Replace x*155/100 by x*101581>>16.Ronald S. Bultje
Idea stolen from webp (by Pascal Massimino) - because it's Cool. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-15vp8: Enclose pthread function calls in ifdefsMartin Storsjö
This fixes building with threads disabled. Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-15vp8: Include the thread headers before using the pthread typesMartin Storsjö
This was unnoticed on linux, since stdlib.h apparently includes files declaring the pthread_mutex_t and pthread_cond_t types. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-07-14vp8: implement sliced threadingDaniel Kang
Testing gives 25-30% gain on HD clips with two threads and up to 50% gain with eight threads. Sliced threading uses more memory than single or frame threading. Frame threading and single threading keep the previous memory layout. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-14vp8: move data from VP8Context->VP8MacroblockDaniel Kang
In preparation for sliced threading. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-14vp8: refactor decoding a single mb_rowDaniel Kang
This is in preperation for sliced threading. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-05-30vp8: move block coeff arithcoder on stack.Ronald S. Bultje
This prevents gcc from assuming that contents of it may have changed between calls to vp56_range_get_prob(), thus preventing countless (and unnecessary) movs. Decoding of sintel trailer goes from (avg+SG) 9.796 +/- 0.003 to 9.635 +/- 0.010.
2012-05-02vp8: update frame size changes on thread context switches.Ronald S. Bultje
This properly synchronizes frame size changes between threads if subsequent threads abort decoding before frame size is initialized, i.e. it prevents the thread after that from ping-ponging back to the original value. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-04-06cosmetics: Align codec declarationsMartin Storsjö
Also break some long lines, remove codec function placeholder comments and add spaces in sample/pixel format lists. Signed-off-by: Martin Storsjö <martin@martin.st>
2012-03-24vp8: fix update_lf_deltas in libavcodec/vp8.cJanne Salonen
lf_delta.ref[i] and lf_delta.mode[i] were incorrectly reset to 0 if specific delta value was not updated. Fixed to keep the previous value if flag indicates that element in question is not updated. Signed-off-by: Janne Salonen <jsalonen@google.com> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-03-20vp8: avoid race condition on segment map.Aaron Colwell
This change avoids accessing the segment map of the previous frame if segmentation is not enabled for the current frame. The caller of decode_mb_mode() only calls ff_thread_await_progress() on the reference segmentation index array if segmentation is enabled, so Chromium's TSAN will report a race when accessing this data while segmentation is not enabled. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-02-16dsputil: Add ff_ prefix to the dsputil*_init* functionsMartin Storsjö
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-07vp8: always update next_framep[] before returning from decode_frame().Ronald S. Bultje
Also slightly move around code not allocate a new frame if we won't decode it. This prevents us from putting undecoded frames in frame pointers, which (in mt decoding) other threads will use and wait on as references, causing a deadlock (if we skipped decoding) or a crash (if we didn't initialized next_framep[] at all). Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-02-06doxygen: Do not include license boilerplates in Doxygen comment blocks.Diego Biurrun
2011-12-02vp8: flush buffers on size changes.Aaron Colwell
2011-11-19avcodec: move some AVCodecContext fields to an internal struct.Justin Ruggles
A new field, AVCodecContext.internal is used to hold a new struct AVCodecInternal, which has private fields that are not codec-specific and are used by general libavcodec functions. Moved internal_buffer, internal_buffer_count, and is_copy.
2011-10-29vp8: fix overflow in segmentation map caching.Ronald S. Bultje
2011-10-21h264: 4:2:2 intra decoding supportBaptiste Coudurier
Signed-off-by: Diego Biurrun <diego@biurrun.de> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-10-21vp8: fix up handling of segmentation_maps in reference frames.Ronald S. Bultje
Associate segmentation_map[] with reference frame, rather than decoding instance. This fixes cases where the map would be free()'ed on e.g. a size change in one thread, whereas the other thread was still accessing it. Also, it fixes cases where threads overwrite data that is still being referenced by the previous thread, who thinks that it's part of the frame previously decoded by the next thread.
2011-10-15vp8: prevent read from uninitialized memory in decode_mvsRonald S. Bultje
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15vp8: force reallocation in update_thread_context after frame size changeRonald S. Bultje
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15vp8: fix return value if update_dimensions failsRonald S. Bultje
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-08vp8: fix signed overflowsMans Rullgard
In addition to avoiding undefined behaviour, an unsigned type makes more sense for packing multiple 8-bit values. Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-29lavc: use designated initialisers for all codecs.Anton Khirnov
It's more readable and less prone to breakage.
2011-07-04doxygen: Fix documentation for some VP8 functions.Diego Biurrun
2011-07-03doxygen: Fix parameter names to match the function prototypes.Diego Biurrun
2011-05-31vp8: fix segmentation race during frame-threading.Ronald S. Bultje
Fixes occasional failure of make fate-vp8-test-vector-010 with frame-multithreading enabled.
2011-05-29vp8: use av_clip_uintp2() where possibleMans Rullgard
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-14Add av_clip_uintp2() functionMans Rullgard
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-10Adds 8-, 9- and 10-bit versions of some of the functions used by the h264 ↵Oskar Arvidsson
decoder. This patch lets e.g. dsputil_init chose dsp functions with respect to the bit depth to decode. The naming scheme of bit depth dependent functions is <base name>_<bit depth>[_<prefix>] (i.e. the old clear_blocks_c is now named clear_blocks_8_c). Note: Some of the functions for high bit depth is not dependent on the bit depth, but only on the pixel size. This leaves some room for optimizing binary size. Preparatory patch for high bit depth h264 decoding support. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-02vp8: frame-multithreading.Ronald S. Bultje
Tested on a Mac Pro, 2 CPUs, 2 cores each, OSX 10.6.6: time ./ffmpeg -v 0 -vsync 0 -threads [1234] -i \ ~/Downloads/sintel_trailer_1080p_vp8_vorbis.webm \ -f null -vcodec rawvideo -an - 1: 0m14.630s (89.9 fps) 2: 0m8.056s (163.2 fps) 3: 0m5.882s (223.6 fps) 4: 0m4.952s (265.6 fps) time ./ffmpeg -v 0 -vsync 0 -threads [1234] -i \ ~/Downloads/Elephants_Dream-720p-Stereo.webm \ -f null -vcodec rawvideo -an - 1: 1m12.962s (215.1 fps) 2: 0m44.682s (351.2 fps) 3: 0m31.183s (503.2 fps) 4: 0m25.284s (620.6 fps) Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-02Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.Stefano Sabatini
Signed-off-by: Diego Biurrun <diego@biurrun.de>