• Ronald S. Bultje's avatar
    Rewrite main resampling loop (common and linear). · 9b538537
    Ronald S. Bultje authored
    This removes a branch at a performance-sensitive point (in the middle
    of the loop). In fate-swr-resample-s32p-8000-2626, this makes the code
    about 10% faster. It also simplifies the loops, allowing us to rewrite
    it in yasm at some later point.
    
    The compensation_distance != 0 code and index < 0 code are still kind
    of hairy. For compensation_distance != 0, this should likely be handled
    in the caller, so that it calls swri_resample twice (once until the
    dst_incr switch-point, and once with the remainder of the samples). For
    index < 0, the code should probably be rewritten to break out of the
    loop once sample_index >= 0, and then resume (e.g. as a tail-call) to
    the common or linear resampling loops.
    Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
    9b538537
Name
Last commit
Last update
compat Loading commit data...
doc Loading commit data...
libavcodec Loading commit data...
libavdevice Loading commit data...
libavfilter Loading commit data...
libavformat Loading commit data...
libavresample Loading commit data...
libavutil Loading commit data...
libpostproc Loading commit data...
libswresample Loading commit data...
libswscale Loading commit data...
presets Loading commit data...
tests Loading commit data...
tools Loading commit data...
.gitignore Loading commit data...
COPYING.GPLv2 Loading commit data...
COPYING.GPLv3 Loading commit data...
COPYING.LGPLv2.1 Loading commit data...
COPYING.LGPLv3 Loading commit data...
CREDITS Loading commit data...
Changelog Loading commit data...
INSTALL.md Loading commit data...
LICENSE.md Loading commit data...
MAINTAINERS Loading commit data...
Makefile Loading commit data...
README.md Loading commit data...
RELEASE Loading commit data...
arch.mak Loading commit data...
cmdutils.c Loading commit data...
cmdutils.h Loading commit data...
cmdutils_common_opts.h Loading commit data...
cmdutils_opencl.c Loading commit data...
common.mak Loading commit data...
configure Loading commit data...
ffmpeg.c Loading commit data...
ffmpeg.h Loading commit data...
ffmpeg_dxva2.c Loading commit data...
ffmpeg_filter.c Loading commit data...
ffmpeg_opt.c Loading commit data...
ffmpeg_vda.c Loading commit data...
ffmpeg_vdpau.c Loading commit data...
ffplay.c Loading commit data...
ffprobe.c Loading commit data...
ffserver.c Loading commit data...
library.mak Loading commit data...
version.sh Loading commit data...