Commit graph

169 commits

Author SHA1 Message Date
Alexander E. Patrakov
adbaae77d6 Disable LFE remixing by default
The current LFE crossover filter removes low frequencies from the main
channels and puts them into the LFE channel with the wrong amplitude.
It is not known for sure what is the correct relative amplitude (acoustic
measurements are required with real hardware), and changing that might
introduce a new bug, "it clips the LFE channel".

So just disable the feature by default until a better understanding
emerges how it should work. This, essentially, returns the defaults
to their state as of PulseAudio 6.0.

Some more observations:

- Most of available active analog speakers on the market do the
necessary crossover filtering already, and HDMI receivers can be
configured to do that, too, so a crossover filter in PulseAudio is
harmful in these use cases.

- The "laptop with a builtin subwoofer" use case requires manual
configuration anyway because the default crossover frequency (120 Hz) is
wrong for laptop speakers.

- Finally, Windows 10 with a built-in USB audio driver does not synthesize
the LFE channel given a 5.1 card and a stereo audio stream by default.

Hides: https://bugs.freedesktop.org/show_bug.cgi?id=95021
Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
2016-05-24 19:34:44 +03:00
Ahmed S. Darwish
d2a6afcab3 core: Support memfd transport; bump protocol version
Now that all layers in the stack support memfd blocks, add memfd
support for the daemon's global core mempool. Also introduce
"enable-memfd=" daemon argument and configuration option.

For now, memfd support is an opt-in feature to be activated only
when daemon's enable-memfd= is set to yes.

Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
2016-04-27 18:37:08 +05:30
Ahmed S. Darwish
b1d47d60fc client audio: Support memfd transport
Now that all layers in the stack support memfd blocks, add memfd
pools support for client context and audio playback data.

Use such memfd pools by default only if the server signals memfd
support in its connection negotiations.

Also add ability for clients to force-disable memfd transport
through the `enable-memfd=' client configuration option.

Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
2016-04-27 18:37:07 +05:30
Tanu Kaskinen
7b9fcc01f6 client-conf, daemon-conf: enable .d directories
I want to enable client.conf.d, because in OpenEmbedded-core we have
a graphical environment called Sato that runs as root. Sato needs to
set allow-autospawn-for-root=true in client.conf, but the default
configuration in OpenEmbedded-core should not set that option. With
this patch, I can create a Sato-specific package that simply installs
50-sato.conf in /etc/pulse/client.conf.d without conflicting with the
main client.conf coming from a different package.

daemon.conf.d is enabled just because it would be strange to not
support it while client.conf.d is supported.
2015-12-14 13:47:04 +01:00
Tanu Kaskinen
d6b892efdc man: remove a reference to pacmd from default.pa.5
I don't want to have unnecessary advertising for pacmd, because I
think pacmd should be deprecated.
2015-12-04 08:00:24 +02:00
Tanu Kaskinen
8203423bdc man: document when system.pa is used instead of default.pa 2015-12-04 08:00:21 +02:00
Felipe Sateler
c93903d99a pulseaudio.1: document that systemd notification only works without daemonization 2015-09-25 17:29:03 +05:30
Felipe Sateler
cdf847f2f1 man: fix reference to --daemonize option
Even if --daemon is also accepted, --daemonize is the correct name of
the option.
2015-06-11 11:44:19 +05:30
Peter Meerwald
75dd22ce2e man: Document .ifexists CLI meta command
v2 (thanks Tanu)
* describe purpose and file search

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Cc: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
2015-05-06 11:32:38 +02:00
Peter Meerwald
1edb696c46 man: Fix typos in pulse-cli-syntax.5
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2015-05-05 18:55:08 +02:00
David Henningsson
c65a606ae7 resampler: Allow disabling the LFE filter by setting crossover to 0
When crossover_freq is set to 0, this restores the old behaviour
of letting the LFE channel be the average of the source channels,
without additional processing. This can be useful e g in case the
user already has a hardware crossover.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2015-03-30 11:10:56 +02:00
Hui Wang
a9059be749 daemon-conf: enable the lfe remixing by default
Since we have a workable lfe filter, it is time to enable the lfe
remixing by default.

Signed-off-by: Hui Wang <hui.wang@canonical.com>
2015-03-30 10:52:30 +02:00
Hui Wang
c36e191ce5 lfe-filter: change the crossover frequency as a parameter
Add a user defined parameter lfe-crossover-freq for the lfe-filter,
to pass this parameter to the lfe-filter, we need to change the
pa_resampler_new() API as well.

Signed-off-by: Hui Wang <hui.wang@canonical.com>
2015-03-30 10:52:30 +02:00
Andrey Semashev
62dc0ad6c3 Added documentation for soxr resampling methods. 2015-02-12 20:36:59 +01:00
Peter Meerwald
0f54a91718 man: Install man page symlinks to pacat for paplay, parec, parecord, pamon
see https://bugs.freedesktop.org/show_bug.cgi?id=68135

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2015-02-12 20:36:58 +01:00
Peter Meerwald
fd263f048b man: Drop separate paplay man page, move info to pacat man page
see https://bugs.freedesktop.org/show_bug.cgi?id=68135

pacat and paplay man pages both claim to describe the paplay program
(which is actually a symlink to pacat) -- this is inconsistent and
redundant, so drop the paplay man page

a follow-up patch will add man page symlink for all programs
implemented by pacat, not just paplay

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2015-02-12 20:36:58 +01:00
Peter Meerwald
a95a9d05e5 man: Describe optional prefix {string} in server address
see https://bugs.freedesktop.org/show_bug.cgi?id=84024

v2: (thanks Tanu Kaskinen)
* fix wording wrt machine id

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2015-02-12 20:33:45 +01:00
Ondrej Holecek
5effc83479 update FSF addresses to FSF web page
FSF addresses used in PA sources are no longer valid and rpmlint
generates numerous warnings during packaging because of this.
This patch changes all FSF addresses to FSF web page according to
the GPL how-to: https://www.gnu.org/licenses/gpl-howto.en.html

Done automatically by sed-ing through sources.
2015-01-14 22:20:40 +02:00
David Henningsson
d9854577c3 Revert "launch: Disable autospawn by default when systemd daemon support is enabled."
This reverts commit 7276faca72.

Using the new systemd socket activation for PulseAudio will cause PulseAudio to not
have any connection with D-Bus, breaking device reservation protocol, module-jackdbus-detect
and module-dbus-protocol. Therefore, autospawn is now still enabled by default even if you
build with systemd daemon headers.
2014-12-19 13:46:11 +01:00
Peter Meerwald
6d1fd4d1aa pactl: Remove deprecated 'stat' behaviour
the stat command should only output statistics, not info

behaviour was deprecated anno 2011 in 8ace9185 "pactl: Make stat backwards
compatible" -- fix this now

v2: (thanks Tanu Kaskinen):
* adjust shell completion

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2014-11-04 22:22:19 +01:00
Colin Guthrie
7276faca72 launch: Disable autospawn by default when systemd daemon support is enabled.
When enabled, this method is prefered over pulseaudio's built in
systems so we should try our best to ensure that it cannot be spawned
outside of the mechanisms desired.

Packagers should call 'systemctl --global enable pulseaudio.socket' to
enable the socket for all users, or alternatively ship an enabling
symlink in /usr/lib/systemd/user/sockets.target.wants/ folder. It may
also make sense for distributions to add in a ConditionNNN= line to the
socket unit if they have a downstream mechanism for enabling or
disabling pulseaudio.

If individual users wish to opt out of this vendor (or administrator)
decision, they can call 'systemctl --user mask pulseaudio.socket'
2014-11-03 12:32:23 +00:00
Colin Guthrie
e775529167 man: Fix XDG_RUNTIME_DIR variable reference. 2014-11-03 12:32:23 +00:00
Peter Meerwald
edaa028290 pactl: Document ability to specify channel volumes individually
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2014-04-16 00:02:02 +02:00
Peter Meerwald
3ad4857070 man: Fix typos in pulse-daemon.conf.5.xml.in
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2014-04-15 23:53:07 +02:00
Peter Meerwald
a9351f1a71 doc: Fix some typos/wording in man/pulse-daemon.conf.5
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2014-03-18 08:57:39 +01:00
Tanu Kaskinen
f46799579f Remove all references to the removed KDE files 2014-03-03 18:06:20 +02:00
Tanu Kaskinen
9eb0bd004f man: pulse-cli-syntax: Document the "journal" log target 2014-02-12 14:31:26 +02:00
Wim Taymans
3cc4765d16 man: improve man page and help for cmdline options 2014-02-07 16:20:49 +02:00
poljar (Damir Jelić)
d20ee7e7f2 log: Add support for the systemd journal
The journal is a component of systemd, that captures Syslog messages,
Kernel log messages, initial RAM disk and early boot messages as well
as messages written to STDOUT/STDERR of all services, indexes them and
makes this available to the user.

It can be used in parallel, or in place of a traditional syslog daemon,
such as rsyslog or syslog-ng.

The journal offers a couple of improvements over traditional logging
facilities (e.g. advanced filtering capabilities).

This patch adds support for logging directly to the journal using its
native API.
2013-12-20 13:06:04 +01:00
Magnus Ekhall
49f93eb2b0 pacat: Added support for recording from one specific sink input
BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=66326
2013-08-14 16:09:54 +03:00
Shuai Fan
b0bf132f8f cli, log: Improve the set-log-target functionality
Add a new log target 'newfile:PATH', and refactoring 'pa_log_target_type'.

Signed-off-by: Shuai Fan <shuai900217@126.com>
2013-06-20 16:34:57 +03:00
Peter Meerwald
592ba453e3 doc: Reword description of meta commands in pulse-cli-syntax.5
Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
2013-04-29 16:19:40 +02:00
Peter Meerwald
5701e83191 doc: Fix description how boolean values can be specified
"any word starting with the letters" parts; this does not hold
any longer with commit 0e29e7365907ffbe90df768a4dea277dba40d495
core-util: Don't accept random words in pa_parse_boolean()

Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
2013-04-29 16:19:26 +02:00
Peter Meerwald
e87fbc7e86 doc: Mention just one CLI language in default.pa.5
Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
2013-04-29 16:19:15 +02:00
Peter Meerwald
8946117ebf doc: Explain PULSE_SERVER string in pulseaudio.1
first attempt to document the "server string"
See https://bugs.freedesktop.org/show_bug.cgi?id=62444

quite a bit is missing: [hostname], defaults

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2013-04-17 08:22:07 +02:00
Peter Meerwald
8ccda50f51 doc: Document PULSE_COOKIE in pulseaudio.1
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2013-04-17 08:20:02 +02:00
Yuri Chornoivan
168751dc66 Fix various typos in messages and comments 2013-04-16 12:42:50 +02:00
Arun Raghavan
92bb9fb8b5 resample: Switch to speex-float-1 by default
This consumes less power, has low (no?) perceivable difference, and
allows the default configuration to work out of the box on low-end
systems (such as netbooks).
2013-03-28 10:54:07 +00:00
Tanu Kaskinen
9849a21587 man: Remove reference to the .verbose CLI command
The .verbose metacommand was removed in commit
73eabece33 (in 2004!).

BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=62270
2013-03-13 13:19:22 +02:00
poljar (Damir Jelić)
831cae16d4 pactl: Add a command for setting the default sink/source.
This adds two new commands to pactl:
    set-default-sink
    set-default-source

This command has been part of the native protocol for a long time,
no reason not to expose it in pactl.
2013-02-01 07:16:20 +02:00
poljar (Damir Jelić)
9779aa4985 pactl: Add the ability to toggle mute state.
This patch adds the ability to toggle mute for sink/sources and
sink-inputs and source outputs.

All mute commands now accept 1|0|toggle as an argument.
2013-01-27 18:11:54 +02:00
Tanu Kaskinen
6f1c3df37b man: Update log-target documentation. 2012-12-19 12:31:50 +02:00
Tanu Kaskinen
b9f6bfcadc man: Document the possiblity of unloading modules by name in pulse-cli-syntax. 2012-12-19 12:31:48 +02:00
Arun Raghavan
ead5447231 man: Correction for how sample rate switching is disabled
Setting to 0 in the parser causes daemon startup to fail.
2012-11-12 22:24:52 +05:30
Wieland Hoffmann
3b67ebb63e man pulse-daemon.conf: Correct typoes 2012-11-03 15:42:35 +01:00
Martin-Éric Racine
333696ff60 manpage, finnish translation: fix spelling errors 2012-08-21 16:27:37 +02:00
Deng Zhengrong
1bf1815080 man: document option set-log-target 2012-07-17 11:10:38 +05:30
poljar (Damir Jelić)
5a57686e3e man: Add latency offset documentation to the cli syntax.
The new latency offset command is now documented in the
pulse-cli-syntax man page.
2012-06-30 15:04:43 +03:00
poljar (Damir Jelic)
dcf92db0c3 pactl: Add set-latency-offset command.
This introduces a new command to allow setting the latency offset.

Also the card list command now shows the latency offset on the ports.
2012-06-30 14:42:43 +03:00
Paul Menzel
86996b4cc8 Fix spelling of separated: s, sepera, separa, g
The used command for fixing the script is the following.

    $ git grep sepera | cut --delimiter=: --fields=1 | xargs sed -i s,sepera,separa,g

This patch is motivated by a patch in Debian from Martin-Éric Racine [1].

[1] http://anonscm.debian.org/gitweb/?p=pkg-pulseaudio/pulseaudio.git;a=commitdiff;h=70e7261a615141908c0cf366fd49e0fc0f550fbf
2012-06-30 13:53:58 +03:00