Commit graph

320 commits

Author SHA1 Message Date
Tanu Kaskinen
6d58497dd1 daemon: Don't treat it as a fatal error if we can't connect to the session bus
http://lists.freedesktop.org/archives/pulseaudio-discuss/2011-June/010276.html
2011-10-12 10:51:24 +05:30
David Henningsson
766dbc6838 conf: Make sure module-dbus-protocol is loaded after module-default-device-restore
module-dbus-protocol gets the default sink, which sets the default sink
if not already set. This is turn makes module-default-device-restore do
nothing.
To solve the problem, make sure module-default-device-restore is loaded
before module-dbus-protocol and not the other way around.

BugLink: http://bugs.launchpad.net/bugs/843780
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2011-09-15 06:40:18 +05:30
Colin Guthrie
aa3142ab20 volume: Rename 'sync volume' to 'deferred volume'.
This just covers Lennart's concern over the terminology used.

The majority of this change is simply the following command:
 grep -rli sync[-_]volume . | xargs sed -i 's/sync_volume/deferred_volume/g;s/PA_SINK_SYNC_VOLUME/PA_SINK_DEFERRED_VOLUME/g;s/PA_SOURCE_SYNC_VOLUME/PA_SOURCE_DEFERRED_VOLUME/g;s/sync-volume/deferred-volume/g'

Some minor tweaks were added on top to tidy up formatting and
a couple of phrases were clarified too.
2011-09-13 21:15:49 +01:00
Maarten Bosmans
c5dca7cf2b More spelling fixes 2011-08-25 11:27:47 +01:00
Arun Raghavan
3c854fc00c daemon: Fix compiler warning about missing function prototype 2011-08-18 12:45:55 +05:30
David Henningsson
545521d405 Remove offensive part of error message
I don't know the exact cause for someone to submit a bug report for
this error message: if someone is truly offended by it (if so it is
a reminder that some people are more sensitive than others, and I do
want those people to feel welcome as well), or if it's a system's
check (if this goes through, it shows the system works, and the person
might put more work into his/her next patch), or if it's just a bug
(after all, it's not that weird to run two instances of PulseAudio?).
Either one could be reason enough to apply IMO.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2011-08-16 11:59:34 +01:00
David Henningsson
286232f7a8 JACK: Load module-jackdbus-detect in default.pa
Provides automatic integration with the dbus enabled version of JACK 2.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2011-08-16 11:59:20 +01:00
Colin Guthrie
98ae74e052 core: Unload the modules and cached samples before unref'ing the core.
As various modules can subscribe to unlink callbacks unloading some modules
may trigger hooks in other modules.

The callbacks associated with these hooks could in turn need to use the core
in some capacity (e.g. perhaps they are module loading modules
(e.g. *-discover, filter-apply or gconf etc. and need to use the core to
unload modules they've loaded).

This change simply ensures that all modules and cached samples are unloaded
before freeing the core.
2011-08-16 11:01:34 +01:00
Maarten Bosmans
1c7e29ef32 default.pa: Update rtp null sink line
The description argument has been removed in favour of the more general sink_properties.
2011-08-16 11:01:34 +01:00
Arun Raghavan
cc41b1e776 conf: Load module-filter-* by default
This loads module-filter-heuristics and module-filter-apply by default
so that applications can request filters via properties. Not adding this
to system.pa -- the assumption is that people running system mode would
want more fine-grained control over such options.
2011-08-15 16:46:26 +05:30
Tanu Kaskinen
dccbefa394 daemon-conf: Don't make log files executable. 2011-08-15 09:41:56 +01:00
Maarten Bosmans
b4e938e194 Move i18n.[ch] to src/pulsecore
The header is used in files troughout the tree and is not included in the public api,
so it belongs in pulsecore, not in pulse.
2011-08-11 13:23:42 +02:00
Maarten Bosmans
738cea3cc3 Fix default.pa on non udev systems 2011-08-08 10:14:59 +02:00
Maarten Bosmans
ea45ea7cc9 build-sys: Add more build-time conditionals to config files 2011-06-30 11:54:03 +01:00
Maarten Bosmans
107106afd4 build-sys: Process configuration files with m4
This allows for build-time conditionals to be processed,
eliminating the need for a separate default.pa.win32.
2011-06-30 11:54:03 +01:00
Maarten Bosmans
e42bc02dc6 build-sys: Move some more defines to configure.ac 2011-06-30 11:54:03 +01:00
Maarten Bosmans
5818a2c63e win32: Make some unused-variable warnings go away 2011-06-24 00:34:05 +01:00
Maarten Bosmans
dd9265ac78 Remove unnecessary #includes 2011-06-22 23:12:20 +01:00
Fritz Elfert
a13da4e93e Disable check for pthreads on win32
And do not use sched_get_priority on mingw with win32 pthreads installed
2011-06-18 10:51:00 -07:00
Colin Guthrie
7aa8a3fa80 daemon: Fix regression introduced in f1d1447e.
With Tanu's patch, the server no longer starts when a server is configured.
While this is sensible in most circumstances there is a corner case where
we still want to start.

In a typical X11 login, module-x11-publish will be loaded and will thus
set the PULSE_SERVER X11 property on the root window. This then hits the
check introduced in f1d1447e and exits. If PA had previously crashed
(thus leaving behind it's X11 properties) then this means that we will not
autospawn nor even allow ourselves to be started manually until
pax11publish -r is run to clear out the X11 properties. This is obviously
not desirable.

This patch introduces a more in-depth check of the server. If it looks like
a local unix domain socket, then we do not exit straight away and instead
probe further. This should not pose any problems with e.g. remote SSH
usage as the DBus Machine ID is used in the server string.
2011-03-25 23:14:28 +00:00
Colin Guthrie
34ddc5b9c5 daemon: Fix some more error paths in the double forking.
As spotted by Tanu Kaskinen:

The first process: daemon_pipe is not closed if the first fork() call
fails. Even if it doesn't fail, the first process never closes
daemon_pipe[0].

The second process: daemon_pipe[1] is not closed if anything fails
between the first and the second fork() call. Also, if the second fork
fails, then the finish section writes to daemon_pipe2[1], even though
only the third process should do that. Also, if anything fails between
the first and the second fork, then the second process never writes
anything to daemon_pipe[1]. I don't know what happens in the first
process in this case - does it get an error or does pa_loop_read() get
stuck.

The third process: No problems :)
2011-03-25 21:35:40 +00:00
Colin Guthrie
d47a33775b daemon: Fix regression with --start introduced with the double fork in 8e94f653
The previous commit intoduced a double fork which caused a more or less immediate
successful return prior to the hard work of actually starting a daemon.

This patch simply used pipe() to only signal our father when the daemon really
has finished starting.
2011-03-24 21:27:55 +00:00
Vincent Becker
a9c8f904b0 log: Correct bad function implementation
Replace wrong implementation of log to file in pa_daemon_conf_set_log_level to pa_daemon_conf_set_log_target
2011-03-24 16:34:07 +00:00
Maarten Bosmans
93348331bb Move compile-time checks around pa_run_from_build_tree to core-util
To make the code cleaner and have the checks all in one place.
2011-03-24 09:12:27 +00:00
Maarten Bosmans
72323bc6bb win32: Simplify dl_search_path code
And add #include <sys/stat.h>, needed by the code introduced in f7acd4bd.
2011-03-24 09:11:30 +00:00
Arun Raghavan
b759aff806 daemon: Fix missing include - cpu-orc.h 2011-03-20 11:31:15 +00:00
Colin Guthrie
d7ce59de88 Merge remote-tracking branch 'mkbosmans/mingw32-build' 2011-03-20 11:18:19 +00:00
Maarten Bosmans
eb833da570 Find modules and config files relative to the installed libraries.
Do not use replace %PULSE_ROOT% from the environment.
2011-03-19 13:38:37 +01:00
Vincent Becker
f7acd4bdab log: Add a new log target to a file descriptor
This patch enables logging of text debug messages (pa_log feature) into a file or a device driver.
Example : pulseaudio --log-target=file:./mylog.txt

(Minor tweaks by Colin + Arun)
2011-03-18 12:32:51 +00:00
Maarten Bosmans
684b89c639 Fix up some double spaces 2011-03-18 09:20:07 +00:00
Arun Raghavan
4cd90d9e32 volume: Add Orc-based optimised volume scaling
This adds volume scaling for 1- and 2-channel software volume scaling
using Orc. While testing the MMX and SSE backends on a Core2, I see an
~2x performance benefit over the hand-rolled MMX and SSE code. Since I
haven't been able to test on other architectures, the Orc code is only
used when MMX/SSE* is present. This can be changed in the future after
testing on AMD and ARM machines.
2011-03-05 14:38:28 +05:30
Colin Guthrie
8c012a676d conf: Make system.pa use udev-detect and not hal-detect.
Also fix a left over reference to HAL in default.pa
2011-03-03 09:37:16 +00:00
Maarten Bosmans
53695b83dc Get rid of some unused-function compiler warnings 2011-03-02 14:52:46 +00:00
Maarten Bosmans
821562b9bc Use pa_read, pa_write and pa_poll instead of system functions 2011-02-17 12:02:31 +01:00
Maarten Bosmans
d6d4336705 Implement some functions for win32
And disable building binaries for win32 that make no sense there
2011-02-17 12:02:30 +01:00
Maarten Bosmans
bb12ff8356 Apply #ifdefs around functionality not available on win32
And also the reverse: around some win32 specific functionality
2011-02-17 11:58:22 +01:00
Maarten Bosmans
0ac0479534 Adapt win32 specific code to current API 2011-02-17 11:58:22 +01:00
Maarten Bosmans
4f1d4044f8 Use <pulsecore/socket.h> instead of <sys/socket.h>
The check whether POSIX socket.h or WIN32 winsock2.h must be included can be
made centrally.  The downside is that some functionality of e.g. arpa/inet.h is
also implemented in winsock.h, so that some files that don't use socket
functions, but do use inet.h functions, must also include pulsecore/socket.h.
(as well as arpa/inet.h)
2011-02-17 11:58:21 +01:00
Maarten Bosmans
d6d9fb295d Clean up <poll.h> includes
Instead <pulsecore/poll.h> should be included.  That file includes poll.h on
platform where it is appropriate.  Also remove some unnecessary <ioctl.h>
includes.
2011-02-17 11:58:21 +01:00
Maarten Bosmans
974af43507 build: Don't include empty Makefile.am in subdirs 2011-01-31 12:40:43 +00:00
Colin Guthrie
1b545997ad console-kit: Console Kit support is dependent on DBUS and is thus optional.
Therefore, we must reflect this in the default.pa. Several users
have reported an error with consolekit when starting a self-built PA
due to the default config not working properly. This works around the
issue but we should include a warning on configure about the lack of
DBUS and udev support as this is a common mistake.
2011-01-11 10:10:07 +00:00
Zhang Wanming
0c0c285e79 Fix typos 2010-12-20 11:07:30 +00:00
Colin Guthrie
3e28f60592 build-sys: Replace dummy Makefiles with proper Makefile.am's
This is needed to better support out of tree builds (including
distcheck) and to ensure the necessary folders are created in the
build tree on configure and also works around an intl-tools bug
(https://bugs.launchpad.net/intltool/+bug/605826)

The Makefile.am's used are minimal (and in some cases completely
blank). At present they do not include anything interesting
with the majority of the real work still done by the monolitic
src/Makefile.am

It may make sense to start splitting out src/Makefile.am into
smaller chunks but this commit makes the minimum changes to address
the issues that result from using make distcheck and other out of
tree builds.

Note: This 'breaks' the ability to type make in e.g. the src/modules
folder and have all of PA rebuilt accordingly (this is because the
static Makefiles previously present just did a "make -C ..") which
was purportedly for use in emacs. But I'm sure there will be a better
and more robust way to configure emacs to do your builds properly if
this behaviour is still desirable.
2010-12-05 15:58:59 +00:00
Jyri Sarha
3e53e3bba3 daemon-conf: Add sync volume parameters to daemon-conf
Signed-off-by: Jyri Sarha <jyri.sarha@nokia.com>
Reviewed-by: Tanu Kaskinen <tanu.kaskinen@digia.com>
Reviewd-by: Colin Guthrie <cguthrie@mandriva.org>
2010-10-16 11:53:39 +01:00
Arun Raghavan
ab4223e9cf cpu: Add CPU information to pa_core
This retains CPU information (processor type and supported features) in
pa_core, so that this information can be used by modules at init time to
figure out what optimisations may be used.
2010-09-23 17:17:03 +05:30
Lennart Poettering
83eb8afc5f daemon: first take name on the bus, then return in starter process
http://pulseaudio.org/ticket/748
2010-02-21 17:53:24 +01:00
Paul Menzel
ea8927f1d4 Typo. s/a/are/
Signed-off-by: Paul Menzel <paulepanter@users.sourceforge.net>
2010-01-21 14:49:28 +00:00
Lennart Poettering
1bfa1c3b03 start: we don't need to check for $PULSE_SERVER anymore
pulseaudio --start does that internally anyway, so we can get rid of
this here.
2010-01-14 20:33:40 +01:00
Tanu Kaskinen
f1d1447e10 daemon: Don't autospawn if a server address is explicitly configured. 2010-01-09 12:43:05 +02:00
Daniel Mack
937c587e77 fix a number of warnings
most of them were due to missing #ifdefs or wrong printf format type for
[s]size_t.
2010-01-05 22:46:13 +01:00