exchanged improper usage of memblockq_peek'd memchunk for silence block
dropped unneeded function prototypes
changed mround to be slightly more elegant
__restrict__ -> restrict for c99
removed unneeded pa_aupdate_swap calls
first_iteration -> pa_bool_t
cleaned up some usage of pa_malloc0 where pa_new0 was more appropriate
cruft removal, whitespace fixes and reordering of variables
fix for peek returning a null memblock
pa_log -> pa_log_debug for fft size
updated module description
fixed a comment in dbus error for incorrect x positions
dbus:
eliminated some redundant code in dbus handlers/getall
switched filter back to being a property
signals for changed profiles, added/removed sinks, filter updates and sink reconfigurations
fixed timing routines
dbus properties and manager so that multiple sinks can be loaded and mixers can be equalizer-sink aware
functionality to seed new filters quickly (rteq guis)
profile support
extra checking in client->server dbus messages
added support for suspend/resume of filter coefficients
unregister the correct dbus interface.
made equalizer state file sink index dependent
expanded dbus properties
whitespace
added dbus support
removed cruft from inherited from ladspa module and improved clarity
switched dsp processing to reference implementation until project is more mature
tsched=0 seems to help with the micro-dropouts/crackling! oh my!
reformatting/spaces
There are multiple package management systems out there which implement
packages using symlinks. The recent (otherwise useful) check to ensure that
a re-executed pulseaudio is actually reexecuting itself unfortunately breaks
in the presence of all these packaging systems, because PA_BINARY refers
to its installed location (e.g. /usr/local/bin/pulseaudio), which is a
symlink to the binary (e.g. /usr/local/stow/pulseaudio-0.9.18/bin/pulseaudio),
because /proc/self/exe always contains the canonical path of the executable,
with all symlinks resolved.
(At least one distribution uses a symlink-based packaging system, so
will be forced to apply this locally in any case.)
The fix is simple: canonicalize PA_BINARY before equality-testing. (This
should be completely safe, because the OS does just that when PA_BINARY
is executed.)
The patch is against 0.9.18, but applies without fuzz to current master.
Tweak the constraints a little so that register starved 32bit systems
can select a stack variable for the channel paramter instead of reusing one of
the registers we're using in the code.