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.
This is how things should have worked orinally, but I obviously misunderstood things a bit.
This seems to prevent the random hangups that were happening previously :)
Loading module-cli could have the effect of setting O_NDELAY on stderr,
because it was just a dup'ed fd of stdin which module-cli sets O_NDELAY
for and which flag is shared between all dupes.
Instead of using stdin/stdout directly we now open a new file descriptor
for the controlling terminal, which is equally useful as stdin/stdout
but gives a new file that does not share O_NDELAY with stdin/stdout.
This solves a problem where when running pulseaudio -C resulted in
log output being truncated since stdio does not really handle O_NDELAY
that well in on its fds.