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
2012-12-21Merge commit '6906b19346ae8a330bfaa1c16ce535be10789723'Michael Niedermayer
* commit '6906b19346ae8a330bfaa1c16ce535be10789723': lavc: add missing files for arm lavc: introduce VideoDSPContext Conflicts: configure libavcodec/arm/dsputil_init_armv5te.c libavcodec/dsputil.c libavcodec/dsputil.h libavcodec/dsputil_template.c libavcodec/h264.c libavcodec/mpegvideo.h libavcodec/mpegvideo_enc.c libavcodec/x86/dsputil_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
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-15Merge commit 'bb675d3ac6d722d5e117ae9042a996b55ca05b1d'Michael Niedermayer
* commit 'bb675d3ac6d722d5e117ae9042a996b55ca05b1d': vp56: make parse_header return standard error codes Conflicts: libavcodec/vp56.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-14vp56: make parse_header return standard error codesLuca Barbato
Returning 0 for failure is misleading. CC: libav-stable@libav.org
2012-12-05Merge commit 'df9b9567518f2840d79a4a96b447ebe1aa326408'Michael Niedermayer
* commit 'df9b9567518f2840d79a4a96b447ebe1aa326408': lavc: fix decode_frame() third parameter semantics for video decoders Conflicts: libavcodec/cscd.c libavcodec/eamad.c libavcodec/ffv1dec.c libavcodec/gifdec.c libavcodec/h264.c libavcodec/iff.c libavcodec/mjpegdec.c libavcodec/pcx.c libavcodec/vp56.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-05lavc: fix decode_frame() third parameter semantics for video decodersAnton Khirnov
It's got_frame, not data size
2012-10-06Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: yuv4mpeg: return proper error codes. Give all anonymously typedeffed structs in headers a name fate: Add parseutils test parseutils-test: Drop random colors from parsing test vf_pad/scale: use double precision for aspect ratios. build: error on variable-length arrays ppc: swscale: rework yuv2planeX_altivec() ppc: fmtconvert: kill VLA in float_to_int16_interleave_altivec() x86: dsputil: kill VLA in gmc_mmx() libspeexenc: Updated commentary to reflect recent changes libspeexenc: Add an option for enabling DTX doc/APIchanges: fill in missing dates and hashes. lavr: bump major to 1 and declare it stable. lavr: change the type of the data buffers to uint8_t**. lavc: deprecate the audio resampling API. Conflicts: cmdutils.h configure doc/APIchanges ffplay.c libavcodec/dwt.h libavcodec/libspeexenc.c libavfilter/vf_pad.c libavfilter/vf_scale.c libavformat/asf.h tests/fate/libavutil.mak tests/ref/fate/parseutils Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-06Give all anonymously typedeffed structs in headers a nameDiego Biurrun
Anonymous structs cannot be forward declared and have no benefit.
2012-09-15lavc/vp6: Implement "slice" threading for VP6A decodeBen Jackson
The YUV channels of VP6 are encoded in a highly linear fashion which does not have any slice-like concept to thread. The alpha channel of VP6A is fairly independent of the YUV and comprises 40% of the work. This patch uses the THREAD_SLICE capability to split the YUV and A decodes into separate threads. Two bugs are fixed by splitting YUV and alpha state: - qscale_table from VP6A decode was for alpha channel instead of YUV - alpha channel filtering settings were overwritten by YUV header parse Signed-off-by: Ben Jackson <ben@ben.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-15lavc/vp56: Move golden_frame into VP56ContextBen Jackson
Makes golden_frame more like other frame data, paves way for threading alpha channel decode. Signed-off-by: Ben Jackson <ben@ben.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-15lavc/vp56: Refactor ff_vp56_init into ff_vp56_init/ff_vp56_init_contextBen Jackson
Pave the way for per-thread context initialization. Signed-off-by: Ben Jackson <ben@ben.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-28vp56: Don't use DECLARE_ALIGN on a typedef nameDerek Buitenhuis
Instead, use it on the first member, since by definition, if any member is aligned, the whole struct must be, in order to maintain that alignment. Fixes compilation with some finicky compilers, like a mix of libclang/msvc Idea for fix from Måns Rullgård. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-27vp56: Don't use DECLARE_ALIGN on a typedef nameDerek Buitenhuis
Instead, use it on the first member, since by definition, if any member is aligned, the whole struct must be, in order to maintain that alignment. Fixes compilation with some finicky compilers. Idea for fix from Måns Rullgård. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-19Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: ppc: fix build with altivec disabled vp3: move idct and loop filter pointers to new vp3dsp context build: add CONFIG_VP3DSP, reduce repetition in OBJS lists tscc2: do not add/subtract 128 bias during DCT tscc2: fix typo in DCT configure: clarify external library section of help output configure: mark libfdk-aac as nonfree configure: cosmetics: drop some unnecessary backslashes os_support: K&R formatting cosmetics Conflicts: configure libavcodec/vp3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-18vp3: move idct and loop filter pointers to new vp3dsp contextMans Rullgard
This moves all VP3-specific function pointers from dsputil to a new vp3dsp context. There is no reason to ever use the VP3 IDCT where an MPEG2 IDCT is expected or vice versa. Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-01-08Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: (29 commits) cabac: Move code only used within the CABAC test program into the test program. vp56: Drop unnecessary cabac.h #include. h264-test: Initialize AVCodecContext.av_class. build: Skip compiling network.h and rtsp.h if networking is not enabled. cosmetics: drop some pointless parentheses Disable annoying warning without changing behavior faq: Solutions for common problems with sample paths when running FATE. avcodec: attempt to clarify the CODEC_CAP_DELAY documentation avcodec: fix avcodec_encode_audio() documentation. FATE: xmv-demux test; exercise the XMV demuxer without decoding the perceptual codecs inside. vqf: recognize more metadata chunks FATE test: BMV demuxer and associated video and audio decoders. FATE: indeo4 video decoder test. FATE: update xxan-wc4 test to a sample with more code coverage. Change the recent h264_mp4toannexb bitstream filter test to output to an elementary stream rather than a program stream. g722enc: validate AVCodecContext.trellis g722enc: set frame_size, and also handle an odd number of input samples g722enc: split encoding into separate functions for trellis vs. no trellis mpegaudiodec: Use clearer pointer math tta: Fix returned error code at EOF ... Conflicts: libavcodec/h264.c libavcodec/indeo3.c libavcodec/interplayvideo.c libavcodec/ivi_common.c libavcodec/libxvidff.c libavcodec/mpegvideo.c libavcodec/ppc/mpegvideo_altivec.c libavcodec/tta.c libavcodec/utils.c libavfilter/vsrc_buffer.c libavformat/Makefile tests/fate/indeo.mak tests/ref/acodec/g722 Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-08vp56: Drop unnecessary cabac.h #include.Diego Biurrun
2011-10-27VP8: Remove no longer used vp8_rac_get_tree_with_offsetDavid Conrad
2011-10-07vp6: Check for huffman tree build errorsLaurent Aimar
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-09-22Check for huffman tree building error in vp6 decoder.Laurent Aimar
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-15Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: configure: Automatically add more flags required on symbian mem.h: switch doxygen parameter order to match function prototype doxygen: replace @sa tag by the more readable but equivalent @see doxygen: use Doxygen markup for authors and web links where appropriate doxygen: do not include license boilerplate in Doxygen documentation ac3enc: Mark AVClasses const ffserver: Replace two loops with one loop. ffmpeg: Fix the check for experimental codecs swscale: extend mmx padding. swscale: clip unscaled colorspace conversion path. doxygen: misc consistency cosmetics doc: remove file name from @file directive in Doxygen usage example doxygen: consistently place brief description doxygen: place empty line between brief description and detailed description avformat_open_input(): Add braces to shut up gcc warning. Conflicts: libavcodec/8svx.c libavcodec/tiff.c libavcodec/tiff.h libavcodec/vaapi_h264.c libavcodec/vorbis.c libavcodec/vorbisdec.c libavcodec/vp6.c libswscale/swscale_unscaled.c libswscale/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-15doxygen: do not include license boilerplate in Doxygen documentationDiego Biurrun
2011-03-19Replace FFmpeg with Libav in licence headersMans Rullgard
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-13ARM optimised vp56_rac_get_prob()Mans Rullgard
Approximately 3% faster on Cortex-A8. Signed-off-by: Mans Rullgard <mans@mansr.com> (cherry picked from commit 7da48fd0111adf504cfcfc5ebda7fd0681968041)
2011-02-11ARM optimised vp56_rac_get_prob()Mans Rullgard
Approximately 3% faster on Cortex-A8. Signed-off-by: Mans Rullgard <mans@mansr.com>
2010-08-12VP5/6/8: ~7% faster arithmetic decodingJason Garrett-Glaser
Grab from the bitstream in 16-bit chunks instead of 8-bit chunks. TODO: grab in 32-bit chunks on 64-bit systems. Originally committed as revision 24783 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-05VP5/6/8: eliminate CABAC dependencyJason Garrett-Glaser
Create a custom table for VP5/6/8's renorm to avoid depending on H.264's. Saves one instruction in the arithmetic decoder as well. Originally committed as revision 24701 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03Silence unused function warnings in vp56.hJason Garrett-Glaser
Originally committed as revision 24684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-03VP5/6/8: tweak some arithcoder inliningJason Garrett-Glaser
Always inline the arithmetic coder, except in the case of header-parsing stuff, in which case don't inline it at all to save code size. Originally committed as revision 24677 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-28Reindent after last commit.Alex Converse
Originally committed as revision 24562 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-28ff_prefix non static vp56 functions.Alex Converse
Originally committed as revision 24561 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24Inline asm for VP56 arith coderEli Friedman
This is a lot more reliable to get cmov rather than trying to trick gcc into generating it, useful since it's 2% faster overall. Patch by Eli Friedman <eli.friedman at gmail> Originally committed as revision 24471 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24Decode DCT tokens by branching to a different code path for each branchDavid Conrad
on the huffman tree, instead of traversing the tree in a while loop. Based on the similar optimization in libvpx's detokenize.c 10% faster at normal bitrates, and 30% faster for high-bitrate intra-only Originally committed as revision 24468 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24Move renormalization of the VP56 arith decoder to before decoding a bitDavid Conrad
No difference at the moment, but allows a future branchy variant of vp56_rac_get_prob to be significantly faster Originally committed as revision 24467 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24Split renorm of vp56 arith decoder to its own functionDavid Conrad
Originally committed as revision 24466 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24vp56's arith decoder's code_word is only 16 bits, no need for unsigned longDavid Conrad
Originally committed as revision 24465 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22Much faster VP8 mv and mode predictionJason Garrett-Glaser
Originally committed as revision 24412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22Convert vp56_mv to 16-bit.Jason Garrett-Glaser
Saves nothing except a bit of memory/cache now, but will allow future optimizations. Originally committed as revision 24411 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01cosmetic: improve comment breaking at 80 colsAurelien Jacobs
Originally committed as revision 23938 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01Eliminate another redundant instruction in vp56/8 arithcoderJason Garrett-Glaser
Necessary because of this GCC bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44474 To do this, convert some, but not all (!) of the variables in VP56RangeCoder into local variables. If we convert c->high into a local variable, gcc gets the stupids and refuses to use a conditional move for the unpredictable main branch. TODO: dispense with this bullshit and write an asm version. Originally committed as revision 23924 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01CMOV-ify vp56 arithcoderJason Garrett-Glaser
This incantation causes gcc 4.3 to generate cmov on x86, a vastly better option than a completely unpredictable branch. Hopefully this carries over to newer versions and other CPUs with conditionals. ~5 cycles saved per call on a Core i7. Originally committed as revision 23921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01Optimize vp56 arithmetic decoderJason Garrett-Glaser
Negate "bits" to eliminate a negate in cache refilling. Originally committed as revision 23920 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01renormalize VP5/6/7/8 range coder without loopStefan Gehrer
Originally committed as revision 23915 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-22Native VP8 decoder.David Conrad
Patch by David Conrad <lessen42 gmail com> and myself. Originally committed as revision 23719 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-22Change a / 256 into a >> 8.Ronald S. Bultje
Originally committed as revision 23718 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-01VP56: move vp56_edge_filter to new VP56DSPContextMåns Rullgård
Using macro templates allows the vp[56]_adjust functions to be inlined instead of called through function pointers. The new function pointers enable optimised implementations of the filters. 4% faster VP6 decoding on Cortex-A8. Originally committed as revision 22992 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-20Remove explicit filename from Doxygen @file commands.Diego Biurrun
Passing an explicit filename to this command is only necessary if the documentation in the @file block refers to a file different from the one the block resides in. Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06Remove DECLARE_ALIGNED_{8,16} macrosMåns Rullgård
These macros are redundant. All uses are replaced with the generic DECLARE_ALIGNED macro instead. Originally committed as revision 22233 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-29Make VP5 and VP6 decoders output a qscale table to allow for more automaticReimar Döffinger
post-processing, and add a new FF_QSCALE_TYPE_VP56 for this. Originally committed as revision 21529 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22Move array specifiers outside DECLARE_ALIGNED() invocationsMåns Rullgård
Originally committed as revision 21377 to svn://svn.ffmpeg.org/ffmpeg/trunk