pulseaudio/src/modules
Siarhei Siamashka fd7dc68ded sbc: ARM NEON optimization for scale factors calculation
Improves SBC encoding performance when joint stereo is not used.
Benchmarked on ARM Cortex-A8:

== Before: ==

$ time ./sbcenc -b53 -s8 test.au > /dev/null

real    0m4.756s
user    0m4.313s
sys     0m0.438s

samples  %        image name               symbol name
2569     27.6296  sbcenc                   sbc_pack_frame
1934     20.8002  sbcenc                   sbc_analyze_4b_8s_neon
1386     14.9064  sbcenc                   sbc_calculate_bits
1221     13.1319  sbcenc                   sbc_calc_scalefactors
996      10.7120  sbcenc                   sbc_enc_process_input_8s_be
878       9.4429  no-vmlinux               /no-vmlinux
204       2.1940  sbcenc                   sbc_encode
56        0.6023  libc-2.10.1.so           memcpy

== After: ==

$ time ./sbcenc -b53 -s8 test.au > /dev/null

real    0m4.220s
user    0m3.797s
sys     0m0.422s

samples  %        image name               symbol name
2563     31.3249  sbcenc                   sbc_pack_frame
1892     23.1239  sbcenc                   sbc_analyze_4b_8s_neon
1368     16.7196  sbcenc                   sbc_calculate_bits
961      11.7453  sbcenc                   sbc_enc_process_input_8s_be
836      10.2176  no-vmlinux               /no-vmlinux
262       3.2022  sbcenc                   sbc_calc_scalefactors_neon
199       2.4322  sbcenc                   sbc_encode
49        0.5989  libc-2.10.1.so           memcpy
2011-03-14 15:18:46 -03:00
..
alsa Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
bluetooth sbc: ARM NEON optimization for scale factors calculation 2011-03-14 15:18:46 -03:00
coreaudio coreaudio: Fix call to pa_thread_new 2011-02-22 21:32:09 +00:00
dbus dbus: Always accept mono volumes when setting device or stream volume. 2011-03-11 13:40:34 +02:00
echo-cancel Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
gconf build: Don't include empty Makefile.am in subdirs 2011-01-31 12:40:43 +00:00
jack Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
oss Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
raop Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
rtp Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
x11 build: Don't include empty Makefile.am in subdirs 2011-01-31 12:40:43 +00:00
hal-util.c hal: check properly for failure of libhal_find_device_by_capability() (llvm-clang-analyzer) 2009-09-08 23:48:47 +02:00
hal-util.h Use LGPL 2.1 on all files previously using LGPL 2 2009-03-03 20:23:02 +00:00
ladspa.h merge 'lennart' branch back into trunk. 2007-10-28 19:13:50 +00:00
module-always-sink.c always-sink: rename null sink created to 'dummy sink' and make it translatable 2009-09-04 02:48:36 +02:00
module-augment-properties.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-bonjour-publish.c module-bonjour-publish: don't include avahi headers 2010-11-25 22:02:15 +00:00
module-card-restore.c Fix typos 2010-12-20 11:07:30 +00:00
module-cli.c Apply #ifdefs around functionality not available on win32 2011-02-17 11:58:22 +01:00
module-combine.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-console-kit.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-cork-music-on-phone.c cork-on-phone: Only cork (and subsequently uncork) streams that are not already corked. 2011-03-12 13:09:00 +00:00
module-default-device-restore.c use pa_fopen_cloexec() where applicable 2009-10-30 04:54:19 +01:00
module-defs.h.m4 modules: introduce PA_MODULE_DEPRECATED() macro for marking modules deprecated 2009-05-28 02:47:36 +02:00
module-detect.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-device-manager.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-device-restore.c Fix typos 2010-12-20 11:07:30 +00:00
module-equalizer-sink.c core: Link virtual sinks and sources to their streams. 2011-02-22 10:10:48 +00:00
module-esound-compat-spawnfd.c Use LGPL 2.1 on all files previously using LGPL 2 2009-03-03 20:23:02 +00:00
module-esound-compat-spawnpid.c Use LGPL 2.1 on all files previously using LGPL 2 2009-03-03 20:23:02 +00:00
module-esound-sink.c Apply #ifdefs around functionality not available on win32 2011-02-17 11:58:22 +01:00
module-hal-detect-compat.c hal: add stub module that loads module-udev-detect instead of module-hal-detect 2009-08-11 23:04:35 +02:00
module-hal-detect.c dbus: remove filter functions only if they were actually set before 2010-02-09 22:28:17 +00:00
module-intended-roles.c intended-roles: Do not pick monitor sources when doing automatic role-based device selection 2010-05-08 14:20:50 +01:00
module-ladspa-sink.c Support for multichannel DSP processing in module-ladspa-sink 2011-02-25 09:55:31 +00:00
module-lirc.c volume: Clamp volume to PA_VOLUME_MAX 2010-10-15 01:10:00 +05:30
module-loopback.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-match.c Use PCRE if POSIX regex.h is not available 2011-02-17 11:58:22 +01:00
module-mmkbd-evdev.c volume: Clamp volume to PA_VOLUME_MAX 2010-10-15 01:10:00 +05:30
module-native-protocol-fd.c Use LGPL 2.1 on all files previously using LGPL 2 2009-03-03 20:23:02 +00:00
module-null-sink.c thread: name all threads so that the names appear in /proc/$PID/task/$TID/comm 2010-05-07 23:58:59 +02:00
module-pipe-sink.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-pipe-source.c Clean up <poll.h> includes 2011-02-17 11:58:21 +01:00
module-position-event-sounds.c position-event-sounds: never position test sounds in space 2009-10-06 23:34:22 +02:00
module-protocol-stub.c Use <pulsecore/socket.h> instead of <sys/socket.h> 2011-02-17 11:58:21 +01:00
module-remap-sink.c core: Link virtual sinks and sources to their streams. 2011-02-22 10:10:48 +00:00
module-rescue-streams.c Fix typos 2010-12-20 11:07:30 +00:00
module-rygel-media-server.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-sine-source.c Clean up <poll.h> includes 2011-02-17 11:58:21 +01:00
module-sine.c core: move 'flags' field into 'pa_sink_input_new_data' structure so that hooks can access it 2009-08-28 23:24:09 +02:00
module-solaris.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-stream-restore.c Allow read-only or non-existing sink input volume. 2011-02-22 20:12:31 +00:00
module-suspend-on-idle.c suspend-on-idle: resume audio device even for initially corked streams 2010-02-22 04:57:15 +01:00
module-tunnel.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-udev-detect.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-virtual-sink.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-virtual-source.c Fix up according to Coding Style 2011-03-11 11:49:35 +00:00
module-volume-restore.c volume-restore: forward module load return value of stream-restore back to caller 2009-08-11 23:19:28 +02:00
module-waveout.c module-waveout: Adapted to updated API 2011-02-17 12:02:31 +01:00
module-zeroconf-discover.c various spelling fixes 2009-04-04 02:27:13 +02:00
module-zeroconf-publish.c zeroconf: properly unref native protocol object 2009-05-01 04:12:45 +02:00
reserve-monitor.c voltest: extend test to verify correctness of _multiply() and _divide() 2009-08-19 01:02:32 +02:00
reserve-monitor.h reserve: update from upstream git repo 2009-07-01 20:20:36 +02:00
reserve-wrap.c reserve: downgrade reserve logic messages, so that reusing pa in two sessions does not create spew in syslog 2009-09-28 19:54:37 -07:00
reserve-wrap.h reserve: wrap device reservation monitor reference implementation 2009-06-05 19:03:16 +02:00
reserve.c voltest: extend test to verify correctness of _multiply() and _divide() 2009-08-19 01:02:32 +02:00
reserve.h reserve: update from upstream git repo 2009-07-01 20:20:36 +02:00
udev-util.c Various fixes for build warnings 2011-03-02 15:02:42 +00:00
udev-util.h alsa: rework mixer logic 2009-06-17 03:45:14 +02:00