aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/x86/mpegaudiodec_mmx.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-02-171-1/+20
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: shorten: Use separate pointers for the allocated memory for decoded samples. atrac3: Fix crash in tonal component decoding. ws_snd1: Fix wrong samples counts. movenc: Don't set a default sample duration when creating ismv rtp: Factorize the check for distinguishing RTCP packets from RTP golomb: avoid infinite loop on all-zero input (or end of buffer). bethsoftvid: synchronize video timestamps with audio sample rate bethsoftvid: add audio stream only after getting the first audio packet bethsoftvid: Set video packet duration instead of accumulating pts. bethsoftvid: set packet key frame flag for audio and I-frame video packets. bethsoftvid: fix read_packet() return codes. bethsoftvid: pass palette in side data instead of in a separate packet. sdp: Ignore RTCP packets when autodetecting RTP streams proresenc: initialise 'sign' variable mpegaudio: replace memcpy by SIMD code vc1: prevent using last_frame as a reference for I/P first frame. Conflicts: libavcodec/atrac3.c libavcodec/golomb.h libavcodec/shorten.c libavcodec/ws-snd1.c tests/ref/fate/bethsoft-vid Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mpegaudio: replace memcpy by SIMD codeChristophe GISQUET2012-02-151-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | By replacing memcpy with an unrolled loop using the alignment knowledge it has, some speedup can be obtained. Before (gcc 4.6.1): ~400 cycles After: ~370 cycles Overall, around 2% speed increase when decoding a 2400s mp3 to f32le. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* | Fix compilation without HAVE_AVX, HAVE_YASM etc.Reimar Döffinger2012-01-141-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | At the very least this should fix warnings about unused static functions if one or more of these is not defined. However even compilation might be broken if the compiler does not optimize the function away completely. This actually happens in case of the AVX function, since the function pointer is used in an assignment that is not under an #if and thus probably only optimized away after the function was already marked as used. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-01-101-14/+73
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: fate: Add tests for more AAC features. aacps: Add missing newline in error message. fate: Add tests for vc1/wmapro in ism. aacdec: Add a fate test for 5.1 channel SBR. aacdec: Turn off PS for multichannel files that use PCE based configs. cabac: remove put_cabac_u/ueg from cabac-test. swscale: RGB4444 and BGR444 input FATE: add test for xWMA demuxer. FATE: add test for SMJPEG demuxer and associated IMA ADPCM audio decoder. mpegaudiodec: optimized iMDCT transform mpegaudiodec: change imdct window arrangment for better pointer alignment mpegaudiodec: move imdct and windowing function to mpegaudiodsp mpegaudiodec: interleave iMDCT buffer to simplify future SIMD implementations swscale: convert yuy2/uyvy/nv12/nv21ToY/UV from inline asm to yasm. FATE: test to exercise WTV demuxer. mjpegdec: K&R formatting cosmetics swscale: K&R formatting cosmetics for code examples swscale: K&R reformatting cosmetics for header files FATE test: cvid-grayscale; ensures that the grayscale Cinepak variant is exercised. Conflicts: libavcodec/cabac.c libavcodec/mjpegdec.c libavcodec/mpegaudiodec.c libavcodec/mpegaudiodsp.c libavcodec/mpegaudiodsp.h libavcodec/mpegaudiodsp_template.c libavcodec/x86/Makefile libavcodec/x86/imdct36_sse.asm libavcodec/x86/mpegaudiodec_mmx.c libswscale/swscale-test.c libswscale/swscale.c libswscale/swscale_internal.h libswscale/x86/swscale_template.c tests/fate/demux.mak tests/fate/microsoft.mak tests/fate/video.mak tests/fate/wma.mak tests/ref/lavfi/pixfmts_scale Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mpegaudiodec: optimized iMDCT transformVitor Sessak2012-01-081-0/+80
| | | | | | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* | mpegaudiodec: add SSE-optimized imdct36()Vitor Sessak2011-11-071-0/+21
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2011-05-201-5/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: qdm2: Use floating point synthesis filter. h264: correct border check. h264: fix loopfilter with threading at slice boundaries. Fix ff_mpa_synth_filter_fixed() prototype Rename costablegen.c ---> cos_tablegen.c. Collapse tableprint.c into tableprint.h. Simplify trig table rules Remove potentially unstable filenames from comments in generated files. Ignore generated tables and generated table generator programs. Simplify CLEANFILES make variable by using wildcards. Remove silly insults from avformat_version() Doxygen documentation. mpegaudiodsp: fix x86 and ppc makefiles configure: Adjust AVX assembler check. mpegaudio: remove unused version of SAME_HEADER_MASK mpegaudio: remove useless #undef at end of file asfdec: add missing #include for av_bswap32() mpegaudio: merge two #if CONFIG_FLOAT blocks mpegaudio: move some struct definitions from mpegaudio.h Move some mpegaudio functions to new mpegaudiodsp subsystem Conflicts: libavcodec/h264.c libavcodec/x86/Makefile Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Move some mpegaudio functions to new mpegaudiodsp subsystemMans Rullgard2011-05-191-5/+4
| | | | | | | | | | | | | | | | This separation allows these functions to be used in a cleaner fashion from other codecs (e.g. qdm2) and simplifies creating optimised versions of them. Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-191-4/+4
|/ | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Move mm_support() from libavcodec to libavutil, make it a publicStefano Sabatini2010-09-081-1/+2
| | | | | | function and rename it to av_get_cpu_flags(). Originally committed as revision 25076 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename FF_MM_ symbols related to CPU features flags as AV_CPU_FLAG_Stefano Sabatini2010-09-041-1/+1
| | | | | | symbols, and move them from libavcodec/avcodec.h to libavutil/cpu.h. Originally committed as revision 25040 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove global mm_flags variableMåns Rullgård2010-08-241-1/+1
| | | | Originally committed as revision 24909 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix compilation on x64.Vitor Sessak2010-06-241-1/+1
| | | | Originally committed as revision 23753 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix asm constraints in apply_window()Vitor Sessak2010-06-241-7/+8
| | | | Originally committed as revision 23752 to svn://svn.ffmpeg.org/ffmpeg/trunk
* SSE-optimized MP3 floating point windowing functionsVitor Sessak2010-06-241-0/+156
Originally committed as revision 23750 to svn://svn.ffmpeg.org/ffmpeg/trunk