profile/ivi/pulseaudio-panda.git
13 years agoUse <pulsecore/socket.h> instead of <sys/socket.h>
Maarten Bosmans [Tue, 4 Jan 2011 16:03:13 +0000 (17:03 +0100)]
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)

13 years agoClean up <poll.h> includes
Maarten Bosmans [Tue, 4 Jan 2011 10:17:53 +0000 (11:17 +0100)]
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.

13 years agoUse setenv instead of putenv
Maarten Bosmans [Wed, 12 Jan 2011 07:15:44 +0000 (08:15 +0100)]
Use setenv instead of putenv

In theory putenv could be used to handle freeing of strings yourself, but this
was not done in PulseAudio.  That leaves no advantages in using putenv.  With
setenv you're at the mercy of the implementation whether the strings leak, but
at least that is better then a certain leak, as it was before.

13 years agoalsa: disable period wakeups in tsched mode if possible
Pierre-Louis Bossart [Mon, 31 Jan 2011 19:20:27 +0000 (13:20 -0600)]
alsa: disable period wakeups in tsched mode if possible

This patch reflects a new capability that Lennart was wishing
for. Wish granted...

Re-submitting it now that alsa-lib 1.0.24
provides additional entry points to disable period
wakeups in timer-scheduling mode if hardware can
work without it (HDAudio, oxygen and Intel SST).

    Example with standard playback on HDAudio output
    Before change:

    Top causes for wakeups:
       3.8% (  5.4)   [hda_intel] <interrupt>
       2.8% (  4.0)   alsa-sink

    After change:
    Top causes for wakeups:
       2.3% (  3.0)   alsa-sink

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
13 years agoecho-cancel: Make Orc file names less silly
Arun Raghavan [Mon, 25 Oct 2010 08:00:06 +0000 (09:00 +0100)]
echo-cancel: Make Orc file names less silly

The naming was what it was because of the way orc.mak was originally
written. This has changed now.

13 years agobuild: Simplify Orc-related make rules
Arun Raghavan [Tue, 19 Oct 2010 04:29:45 +0000 (09:59 +0530)]
build: Simplify Orc-related make rules

This greatly simplifies the Orc-related make rules. The old system of
distributing generated files is gone, which means that anyone who wants
to build with Orc support enabled needs to have the orcc compiler
installed (presumably the orc 'devel' package in most distros).

13 years agobuild: Move orc.mak out of build/
Arun Raghavan [Sun, 17 Oct 2010 02:55:27 +0000 (08:25 +0530)]
build: Move orc.mak out of build/

That directory is commonly used by developers for out-of-tree builds, so
don't keep the Makefile in there.

13 years agobuild: Remove unnecessary flags in AM_CFLAGS
Maarten Bosmans [Tue, 25 Jan 2011 10:57:30 +0000 (11:57 +0100)]
build: Remove unnecessary flags in AM_CFLAGS

The CFLAGS and LIBS of libsamplerate, libspeex and libsndfile are added to the pulse libraries depending on those libraries.

Also src/pulse/version.h is generated by configure, so it does not need to go in BUILT_SOURCES.

(Slightly tweaked by Colin Guthrie to fix a merge problem relating to BUILT_SOURCES)

13 years agobuild: Don't include empty Makefile.am in subdirs
Maarten Bosmans [Wed, 19 Jan 2011 12:35:38 +0000 (13:35 +0100)]
build: Don't include empty Makefile.am in subdirs

13 years agobuild: Generate module symdefs in src/modules directory
Maarten Bosmans [Tue, 25 Jan 2011 10:01:46 +0000 (11:01 +0100)]
build: Generate module symdefs in src/modules directory

This will make it possible to remove the empty Makefile.am files.
 - module-...-symdef.h files are all generated in src/modules, instead of in the subdir of the module.
 - The default inclusion of src/modules subdirs in AM_CFLAGS can be removed, where necessary (raop) the subdir is
   included in the specific CFLAGS.
 - The src/daemon and src/modules directories are always created on make, to facilitate out of tree builds.
 - AM silent rules are used for the generation of symdef files by m4.
 - For echo-cancel, keep the build dir include for now (and mkdir it) although limit it to just the echo-cancel
   module's CFLAGS (Colin Guthrie)

13 years agoMerge remote branch 'mkbosmans/rate-adjustment'
Colin Guthrie [Mon, 31 Jan 2011 11:45:50 +0000 (11:45 +0000)]
Merge remote branch 'mkbosmans/rate-adjustment'

13 years agoFighting rewinds: Reduce calls to handle_seek
David Henningsson [Thu, 9 Dec 2010 10:08:37 +0000 (11:08 +0100)]
Fighting rewinds: Reduce calls to handle_seek

If many small blocks are in queue, handle_seek is being called
for every one of them, sometimes causing a rewind. Delay the
call until all blocks are handled, then call handle_seek only
once.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
13 years agoFighting rewinds: Seek and write data in the same message
David Henningsson [Mon, 6 Dec 2010 15:25:25 +0000 (16:25 +0100)]
Fighting rewinds: Seek and write data in the same message

Allow a message in the queue to perform both a seek and a post data.
For clients that do not use PA_SEEK_RELATIVE (e g gstreamer), this
cuts the message count - and sometimes even the rewinds - in half.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
13 years agoratelimit: fix log levels of log suppression messages
Lennart Poettering [Sat, 22 Jan 2011 00:08:36 +0000 (01:08 +0100)]
ratelimit: fix log levels of log suppression messages

When logging a suppression message do so on the same log level as the
suppressed messages.

Cherry picked by Colin Guthrie from ec5a7857127a1b3b9c5517c4a70a9b2c8aab35ca
with a couple of additional changes due to extra limiting in master
that was not present in stable-queue.

13 years agoCore: Fix incorrect check of return value
Scott Reeves [Thu, 20 Jan 2011 23:41:21 +0000 (16:41 -0700)]
Core: Fix incorrect check of return value

13 years agobuild: Use MODULE_LIBADD in Makefile.am
Maarten Bosmans [Thu, 20 Jan 2011 11:53:38 +0000 (12:53 +0100)]
build: Use MODULE_LIBADD in Makefile.am

13 years agoMerge commit 'e4979ab5cff84ef64c88bba3a1b6b4c5e02f7777'
Colin Guthrie [Mon, 17 Jan 2011 22:19:10 +0000 (22:19 +0000)]
Merge commit 'e4979ab5cff84ef64c88bba3a1b6b4c5e02f7777'

13 years agotunnel: Fix automatic names when source/sink_name argument is missing.
Colin Guthrie [Sun, 16 Jan 2011 14:34:11 +0000 (14:34 +0000)]
tunnel: Fix automatic names when source/sink_name argument is missing.

Spotted by palmerdabbelt via #894

13 years agomodule-rtp-recv: Request proper rewind after underrun
Maarten Bosmans [Wed, 12 Jan 2011 06:34:28 +0000 (07:34 +0100)]
module-rtp-recv: Request proper rewind after underrun

13 years agomodule-rtp-recv: Remove smoother from write index
Maarten Bosmans [Wed, 12 Jan 2011 06:31:26 +0000 (07:31 +0100)]
module-rtp-recv: Remove smoother from write index

It isn't necessary anymore with the new algorithm.  The slow adjust of the
smoother was even detrimental to the accuracy of the rate estimate.

13 years agomodule-rtp-recv: Average the estimated real sample rate
Maarten Bosmans [Sun, 16 Jan 2011 00:27:29 +0000 (01:27 +0100)]
module-rtp-recv: Average the estimated real sample rate

13 years agomodule-rtp-recv: Use new algorithm for adjusting sample rate
Maarten Bosmans [Wed, 12 Jan 2011 06:24:58 +0000 (07:24 +0100)]
module-rtp-recv: Use new algorithm for adjusting sample rate

13 years agoLimit rate adjustments to small, inaudible jumps
Maarten Bosmans [Fri, 7 Jan 2011 00:25:55 +0000 (01:25 +0100)]
Limit rate adjustments to small, inaudible jumps

The same logic is applied to the sample rate adjustments in module-rtp-recv,
module-loopback and module-combine:
 - Each time an adjustment is made, the new rate can differ at most 2‰ from the
   old rate.  Such a step is equal to 3.5 cents (a cent is 1/100th of a
   semitone) and as 5 cents is generally considered the smallest observable
   difference in pitch, this results in inaudible adjustments.
 - The sample rate of the stream can only differ from the rate of the
   corresponding sink by 25%.  As these adjustments are meant to account for
   very small clock drifts, any large deviation from the base rate suggests
   something is seriously wrong.
 - If the calculated rate is within 20Hz of the base rate, set it to the base
   rate.  This saves CPU because no resampling is necessary.

13 years agomodule-loopback: Add adjust_time to valid args
Maarten Bosmans [Sun, 16 Jan 2011 00:42:20 +0000 (01:42 +0100)]
module-loopback: Add adjust_time to valid args

13 years agoclient: Don't update smoother while corked
Arun Raghavan [Tue, 11 Jan 2011 18:28:25 +0000 (23:58 +0530)]
client: Don't update smoother while corked

This prevents the smoother attached to the stream clock from being
updated while the stream is corked, which in turn ensures that once
corking is completed, pa_stream_get_time() always returns the same value
until the stream is uncorked - i.e., the clock does not advance when the
client believes that it will not.

The actual call to pa_smoother_put() happens on things like stream
suspend/unsuspend, which trigger timing updates. This changes the
smoother coefficients, which means that a call to pa_smoother_get() for
the same value of 'x' can return different values before and after a
timing update.

13 years agoalsa-sink: Don't assume we were able to enable hw-volume or sync-volume (v1.1)
Jyri Sarha [Thu, 13 Jan 2011 14:44:45 +0000 (16:44 +0200)]
alsa-sink: Don't assume we were able to enable hw-volume or sync-volume (v1.1)

This patch also disables mixer callback code if we do not have neither
HW-volume or HW-mute.

13 years agoalsa-sink: Fix double use of string
Jyri Sarha [Thu, 13 Jan 2011 14:44:44 +0000 (16:44 +0200)]
alsa-sink: Fix double use of string

13 years agocore: Use pa_sink_get_latency_within_thread() in sync-volume code
Jyri Sarha [Thu, 13 Jan 2011 14:44:43 +0000 (16:44 +0200)]
core: Use pa_sink_get_latency_within_thread() in sync-volume code

13 years agocore: Use volume_change_safety_margin when rewinding sync-volume events
Jyri Sarha [Thu, 13 Jan 2011 14:44:42 +0000 (16:44 +0200)]
core: Use volume_change_safety_margin when rewinding sync-volume events

After this patch the volume changes are applied immediately after
sink rewind before processing streams and monitor source.

13 years agocore: Change sematics of pa_flist_new_with_name() (v1.1)
Jyri Sarha [Thu, 13 Jan 2011 14:44:41 +0000 (16:44 +0200)]
core: Change sematics of pa_flist_new_with_name() (v1.1)

Name string is copied and added to flist structure. The original is
responsibility of the caller. The name is only used for debug printing.

13 years agobuild-sys: Make --disable-dbus actually work.
Colin Guthrie [Tue, 11 Jan 2011 11:26:48 +0000 (11:26 +0000)]
build-sys: Make --disable-dbus actually work.

Previously this argument passed to configure only worked if --disable-hal and
--disable-bluez was also passed which wasn't immediately obvious to the
untrained compiler.

This change simply makes --disable-dbus disable the other two as well
and errors out of specific, incompatible --enable/--disable flags
are provided.

The summary table is also adjusted and intended to try and show the
dependency relationship a little.

13 years agobuild-sys: Put in specific warnings when there is no udev or DBUS support
Colin Guthrie [Tue, 11 Jan 2011 10:28:02 +0000 (10:28 +0000)]
build-sys: Put in specific warnings when there is no udev or DBUS support

Users have often come to me when their build doesn't work and typically
this is when they do not have dev headers for DBUS and udev installed
when building. Put in some specific warnings about these optional,
but critical, elements.

This will likely display this message on platforms where they are not
available, so patches welcome to hide them in a semi-intelligent way.

13 years agoconsole-kit: Console Kit support is dependent on DBUS and is thus optional.
Colin Guthrie [Tue, 11 Jan 2011 10:09:42 +0000 (10:09 +0000)]
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.

13 years agopadsp: wrap __open_2 and __open64_2
Michal Schmidt [Sat, 8 Jan 2011 15:25:15 +0000 (16:25 +0100)]
padsp: wrap __open_2 and __open64_2

These functions are used in OSS programs where the "flags" parameter for
open() is not a build-time constant and the build has _FORTIFY_SOURCE
enabled.

13 years agoloopback: Add new arguments to disable stream move
Cai Yuanqing [Thu, 23 Dec 2010 11:25:36 +0000 (19:25 +0800)]
loopback: Add new arguments to disable stream move

The arguments sink_dont_move and source_dont_move have been added to toggle
module automatic unloading when the sink or source were no longer
available, rather than just moving them to the next available
sink/source (via rescue streams).

Reviewed and tweaked by Colin Guthrie.

13 years agoRevert "core: make use of dbus_message_iter_append_fixed_array"
Colin Guthrie [Mon, 3 Jan 2011 09:22:33 +0000 (09:22 +0000)]
Revert "core: make use of dbus_message_iter_append_fixed_array"

This causes problems as outlined in ticket #887.
This reverts commit f564c7d76371380980faa10ee3c756c3130c60bf.

13 years agobluetooth: detect when bitpool has changed on sbc codec
Luiz Augusto von Dentz [Thu, 23 Dec 2010 11:13:28 +0000 (13:13 +0200)]
bluetooth: detect when bitpool has changed on sbc codec

A2DP spec allow bitpool changes midstream which is why sbc configuration
has a range of values for bitpool that the encoder can use and decoder
must support.

Bitpool changes do not affect the state of encoder/decoder so they don't
need to be reinitialize when this happens, so the impact is fairly small,
what it does change is the frame length so encoders may change the
bitpool to use the link more efficiently.

13 years agobluetooth: fix build for libdbus < 1.3
Luiz Augusto von Dentz [Mon, 8 Nov 2010 12:37:37 +0000 (14:37 +0200)]
bluetooth: fix build for libdbus < 1.3

13 years agobluetooth: fix case of profile UUIDs to match what BlueZ uses
Luiz Augusto von Dentz [Wed, 3 Nov 2010 12:44:28 +0000 (14:44 +0200)]
bluetooth: fix case of profile UUIDs to match what BlueZ uses

13 years agocoreaudio: Make coreaudio-detect safer by adding asserts before dereferencing
Cai Yuanqing [Tue, 21 Dec 2010 05:59:06 +0000 (13:59 +0800)]
coreaudio: Make coreaudio-detect safer by adding asserts before dereferencing

13 years agofix bug about get source-output status
Chen Rui [Mon, 20 Dec 2010 01:42:17 +0000 (09:42 +0800)]
fix bug about get source-output status

13 years agoFix typos
Zhang Wanming [Mon, 20 Dec 2010 09:20:57 +0000 (17:20 +0800)]
Fix typos

13 years agoFurther clarify src- and speex- references in pulse-daemon.conf
Daniel T Chen [Sun, 19 Dec 2010 12:51:21 +0000 (07:51 -0500)]
Further clarify src- and speex- references in pulse-daemon.conf

Based on comments from Arun Raghavan, make clear that we're referring
to the libspeex API documentation for the speex- options. Also correct
the quality range (was incorrectly 0..9 but is 0..10 now) and clean up
the line length.

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
13 years agoFix return value of pa_sndfile_format_from_string
Vincent Becker [Tue, 14 Dec 2010 17:08:14 +0000 (18:08 +0100)]
Fix return value of pa_sndfile_format_from_string

This prevented to use pacat --file-format option correctly

13 years agocore: Fix variable "has_whined" value bug
Yang Xichuan [Thu, 16 Dec 2010 03:31:36 +0000 (11:31 +0800)]
core: Fix variable "has_whined" value bug

In the file src/pulsecore/random.c

I found that the log information "Failed to get proper entropy. Falling
back to seeding with current time." would never be printed.

This change corrects the issue.

13 years agotrivial: Mention speex as a resampler reference in pulse-daemon.conf
Daniel T Chen [Sat, 18 Dec 2010 04:55:21 +0000 (23:55 -0500)]
trivial: Mention speex as a resampler reference in pulse-daemon.conf

A Debian user seemed confused that the man page for pulse-daemon.conf
does not refer to the libspeex API Resampler for use in PulseAudio's
*-src. Fix it by explicitly mentioning speex.

(http://bugs.debian.org/541206)

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
13 years agomodule-loopback: Prevent an infinite loop when rate adjusting is disabled
Maarten Lankhorst [Sat, 11 Dec 2010 11:05:30 +0000 (12:05 +0100)]
module-loopback: Prevent an infinite loop when rate adjusting is disabled

13 years agobluetooth: Fix a2dp processing
Maarten Lankhorst [Fri, 10 Dec 2010 19:34:05 +0000 (20:34 +0100)]
bluetooth: Fix a2dp processing

13 years agovolume: Trivial cosmetics (remove a space)
Colin Guthrie [Mon, 6 Dec 2010 15:45:22 +0000 (15:45 +0000)]
volume: Trivial cosmetics (remove a space)

13 years agojack: Add module-jackdbus-detect
David Henningsson [Tue, 30 Nov 2010 03:59:27 +0000 (04:59 +0100)]
jack: Add module-jackdbus-detect

13 years agobuild-sys: Fix a warning during distcheck
Arun Raghavan [Sun, 5 Dec 2010 10:38:32 +0000 (16:08 +0530)]
build-sys: Fix a warning during distcheck

This adds a dummy Makefile.am to the dbus module to eliminate missing
directory warnings during distcheck.

13 years agoi18n: Update POTFILES.*
Arun Raghavan [Sun, 5 Dec 2010 10:17:17 +0000 (15:47 +0530)]
i18n: Update POTFILES.*

Add new modules, and skip module-virtual-sink for i18n since it's really
meant to be a template for writing other modules.

13 years agobuild-sys: Include the .version file in the distribution tarball
Colin Guthrie [Sat, 4 Dec 2010 13:47:43 +0000 (13:47 +0000)]
build-sys: Include the .version file in the distribution tarball

As per the comments in git-version-gen, the .version file that is
typically generated automatically during build should be included
in the tarball, so generate it in the dist-hook.

This fixes a problem when running make distcheck which uses a read-only
source folder and thus cannot generate the $top_srcdir/.version as
part of it's build process (it uses a _build folder which is r/w)
and thus cannot be built.

13 years agobuild-sys: Fix make distcheck failure due to udev rules fixed install path
Colin Guthrie [Sat, 4 Dec 2010 12:01:01 +0000 (12:01 +0000)]
build-sys: Fix make distcheck failure due to udev rules fixed install path

I don't know why this does not honour DESTDIR or similar during distcheck
but this simple enough patch fixes it.

13 years agobuild-sys: Replace dummy Makefiles with proper Makefile.am's
Colin Guthrie [Fri, 3 Dec 2010 17:20:16 +0000 (17:20 +0000)]
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.

13 years agobuild-sys: Add some smarts to version extraction from git tags.
Colin Guthrie [Sat, 4 Dec 2010 17:21:27 +0000 (17:21 +0000)]
build-sys: Add some smarts to version extraction from git tags.

When we are dealing with a tag against a commit with other tags applied,
then favour the first tag, not the last one. This allows us to tag a release
as e.g. v1.0, v1.1-dev and v2.0-dev and get a version of 1.0 rather than the
newer tags.

This also removes support for git versions that do not accept
the --match argument as we also now make use of the --contains arg
which was added at the same time (I think)

Additionally, the v variable is reset just incase it is already exported
in the shell for some reason.

13 years agodoxygen: Fix version numbers for new features
Colin Guthrie [Sat, 4 Dec 2010 16:43:04 +0000 (16:43 +0000)]
doxygen: Fix version numbers for new features

Due to how our branching worked out, these new features will
debut in v1.0 and not v0.9.22 which has already been released
from the stable-queue branch

13 years agoecho-cancel: Fix source may_move_to function
Arun Raghavan [Thu, 2 Dec 2010 11:04:03 +0000 (16:34 +0530)]
echo-cancel: Fix source may_move_to function

This is required to make sure that the source output between
module-echo-cancel and ALSA can't get plugged to the virtual source or
monitor of the virtual sink that we expose. This could be triggered by
changing the profile of the underlying ALSA device.

13 years agorescue-streams: Fix segfault in some conditions
Arun Raghavan [Thu, 2 Dec 2010 11:00:59 +0000 (16:30 +0530)]
rescue-streams: Fix segfault in some conditions

There is a call to this function where 'skip' variable is NULL. Looks
like this code doesn't get hit very often, probably because a suitable
default sink can be found to move the stream to. However, if we can't
move to the default sink and skip is NULL, there will be a segfault.

13 years agoalsa-sink: take base volume into account when applying hw volume
Juho Hämäläinen [Thu, 25 Nov 2010 13:15:17 +0000 (15:15 +0200)]
alsa-sink: take base volume into account when applying hw volume

Currently if sink base volume differs from 0dB and sync-volume is used,
wrong volume values are written to hw. This patch fixes that.

Signed-off-by: Juho Hämäläinen <ext-juho.hamalainen@nokia.com>
13 years agoman: Reference correct `--use-pid-file` and fix typo (`s/Of/If/`).
Paul Menzel [Sun, 31 Jan 2010 13:15:31 +0000 (14:15 +0100)]
man: Reference correct `--use-pid-file` and fix typo (`s/Of/If/`).

Also reword to avoid referring to the legacy /tmp/pulse-$USER
path (Colin Guthrie)

13 years agobuild-sys: simplify things for building on fedora
Lennart Poettering [Fri, 26 Nov 2010 01:08:21 +0000 (02:08 +0100)]
build-sys: simplify things for building on fedora

13 years agoi18n: update POTFILES.in
Lennart Poettering [Fri, 26 Nov 2010 00:58:46 +0000 (01:58 +0100)]
i18n: update POTFILES.in

13 years agobuild-sys: bump soname
Lennart Poettering [Fri, 26 Nov 2010 00:38:43 +0000 (01:38 +0100)]
build-sys: bump soname

13 years agobuild-sys: Link lirc libraries in right order
Jyri Sarha [Fri, 26 Nov 2010 16:38:27 +0000 (18:38 +0200)]
build-sys: Link lirc libraries in right order

Wrong order of libraries causes libtool to link primarily from lirc
library location and not from $(libdir) location in install
phase. This is a problem if you have an older version pulseaudio libs
installed under same directory as liblirc and you are building a
newer version with some other directory prefix.

13 years agobuild-sys: Link binaries linking libpulsecommon to libpulse too
Jyri Sarha [Fri, 26 Nov 2010 16:38:26 +0000 (18:38 +0200)]
build-sys: Link binaries linking libpulsecommon to libpulse too

Build fails if a symbol is removed from from libpulsecommon. Linking
explicitly to libpulse fixes the problem.

13 years agobuild-sys: Link binaries linking libpulse to libpulsecommon too
Jyri Sarha [Fri, 26 Nov 2010 16:38:25 +0000 (18:38 +0200)]
build-sys: Link binaries linking libpulse to libpulsecommon too

Build appeared to fails when a new function is added to
libpulsecommon. This is because build uses libpulsecommon that is
installed into system instead of the one that is being built. Explicit
linking to libpulsecommon fixes the problem.

13 years agocore: Add name to flist struct for more informative log messages
Jyri Sarha [Fri, 26 Nov 2010 16:38:24 +0000 (18:38 +0200)]
core: Add name to flist struct for more informative log messages

PA_STATIC_FLIST_DECLARE macro sets the flist name automatically.

13 years agocore: Lower "flist is full" log message level to debug and ratelimit it
Jyri Sarha [Fri, 26 Nov 2010 16:38:23 +0000 (18:38 +0200)]
core: Lower "flist is full" log message level to debug and ratelimit it

13 years agovolume: Add explicit checks for ARMv6 instructions
Arun Raghavan [Fri, 26 Nov 2010 06:25:57 +0000 (11:55 +0530)]
volume: Add explicit checks for ARMv6 instructions

This ensures that the build does not fail if the ssat and pkhbt
instructions are not available (armv5te and below).

Fixes: http://www.pulseaudio.org/ticket/790

13 years agoversion: Drop the micro version number
Colin Guthrie [Sun, 28 Nov 2010 14:27:08 +0000 (14:27 +0000)]
version: Drop the micro version number

As per discussions with Lennart, we will be moving to a two-component version
number scheme when the next release is made from git master branch.

This means we will be dropping the micro version component (although
for compatibility, it will remain defined as 0 in version.h).

For more information, please see the announcement here:
 http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/7921

13 years agomodule-bonjour-publish: don't include avahi headers
Daniel Mack [Fri, 19 Nov 2010 02:30:55 +0000 (18:30 -0800)]
module-bonjour-publish: don't include avahi headers

The avahi layer won't work on OSX and is unnecessary, too.

13 years agoalsa-source: fix enum types
Lennart Poettering [Thu, 25 Nov 2010 03:34:04 +0000 (04:34 +0100)]
alsa-source: fix enum types

13 years agoalsa-mixer: make a few strings translatable
Lennart Poettering [Thu, 25 Nov 2010 03:03:56 +0000 (04:03 +0100)]
alsa-mixer: make a few strings translatable

Original patch contributed by 'kelemeng'

http://pulseaudio.org/ticket/843

13 years agopulse: make sure legacy_dir is not static
Jan Kratochvil [Thu, 25 Nov 2010 02:49:27 +0000 (03:49 +0100)]
pulse: make sure legacy_dir is not static

13 years agoHandle 'Internal Mic 1' as an 'Input Source'
Daniel T Chen [Thu, 25 Nov 2010 14:54:07 +0000 (09:54 -0500)]
Handle 'Internal Mic 1' as an 'Input Source'

BugLink: https://launchpad.net/bugs/680810
Some laptops have 'Internal Mic 1' exposed as an 'Input Source', e.g., Dell
XPSM 1530, so handle these, too.

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
13 years agoAdd "Rear Mic" to alsa mixer paths.
David Henningsson [Fri, 19 Nov 2010 09:41:46 +0000 (10:41 +0100)]
Add "Rear Mic" to alsa mixer paths.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
13 years agoalsa: Print dB values in addition to percentages in debug messages.
Tanu Kaskinen [Thu, 18 Nov 2010 16:12:51 +0000 (18:12 +0200)]
alsa: Print dB values in addition to percentages in debug messages.

How about this? There are a couple of bugs in sink_write_volume_cb,
by the way. Another patch will be sent once this dB value printing
patch is accepted.
-- 8< --

13 years agoalsa: Sprinkle some PA_UNLIKELYs around error checks
Arun Raghavan [Thu, 18 Nov 2010 04:32:10 +0000 (10:02 +0530)]
alsa: Sprinkle some PA_UNLIKELYs around error checks

This just adds a few PA_UNLIKELY macros around some error paths in
frequently called code.

13 years agoman: Remove repeated lines
Wanming.Zhang@tieto.com [Thu, 18 Nov 2010 02:17:36 +0000 (04:17 +0200)]
man: Remove repeated lines

From 3c18dbe5889816792db27c9a7253a83687d68ee9 Mon Sep 17 00:00:00 2001
From: Zhang Wanming <wanming.zhang@tieto.com>
Date: Thu, 18 Nov 2010 10:03:39 +0800
Subject: [PATCH] man: Remove repeated lines

Signed-off-by: Zhang Wanming <wanming.zhang@tieto.com>
13 years agocombine: Only check if the sink is h/w etc. in automatic mode
Colin Guthrie [Wed, 17 Nov 2010 23:43:36 +0000 (23:43 +0000)]
combine: Only check if the sink is h/w etc. in automatic mode

13 years agoupnp: Implement the MediaServer2 D-Bus interface
Stephen Moehle [Sun, 14 Nov 2010 20:31:15 +0000 (12:31 -0800)]
upnp: Implement the MediaServer2 D-Bus interface

This allows PulseAudio to work with versions of Rygel 0.7.1 and higher
which only support MediaServer2:
 http://live.gnome.org/Rygel/MediaServer2Spec

13 years agocore: New LIFO style flist implementation v2.2
Jyri Sarha [Mon, 30 Nov 2009 14:55:27 +0000 (16:55 +0200)]
core: New LIFO style flist implementation v2.2

The old free list implementation used objects in FIFO style. This is
bad because it tries keep all the objects ever used alive and in
memory. This minimizes the changes that an allocated object is already
in cache. When there is shortage of physical memory this may also
increase change that newly allocated object is swapped out. LIFO
(e.g. stack) style free list should help these issues. Like the old
one the new implementation is also lock free. This version (v2.1) of
the patch has a potential weakness fixed. The previous version (2.0)
did segfault when popping from empty flist, this does not.

13 years agocombine: Handle reappearing slave sinks in non-automatic mode.
Antti-Ville Jansson [Fri, 12 Nov 2010 07:52:48 +0000 (09:52 +0200)]
combine: Handle reappearing slave sinks in non-automatic mode.

Earlier, if slave sinks were unlinked in non-automatic mode, their
re-appearance was disregarded. Now they are added back to the list of outputs.

Signed-off-by: Antti-Ville Jansson <antti-ville.jansson@digia.com>
Reviewed-by: Tanu Kaskinen <tanu.kaskinen@digia.com>
13 years agoalsa: remove redundant call to snd_pcm_nonblock()
Pierre-Louis Bossart [Thu, 11 Nov 2010 16:19:25 +0000 (10:19 -0600)]
alsa: remove redundant call to snd_pcm_nonblock()

The PCM handle is already opened with the SND_PCM_NONBLOCK flag.
This additional call is useless.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
14 years agocore: make use of dbus_message_iter_append_fixed_array
Luiz Augusto von Dentz [Wed, 20 Oct 2010 11:04:38 +0000 (14:04 +0300)]
core: make use of dbus_message_iter_append_fixed_array

dbus_message_iter_append_fixed_array does appends a block of fixed-length
values to an array.

14 years agobluetooth: make use of dbus-util helper functions
Luiz Augusto von Dentz [Wed, 20 Oct 2010 10:50:40 +0000 (13:50 +0300)]
bluetooth: make use of dbus-util helper functions

14 years agodbus: Fix log message after volume changes.
Colin Guthrie [Tue, 19 Oct 2010 08:53:45 +0000 (09:53 +0100)]
dbus: Fix log message after volume changes.

14 years agovolume: Fix incorrect usage of PA_VOLUME_IS_VALID
Arun Raghavan [Tue, 19 Oct 2010 07:33:48 +0000 (13:03 +0530)]
volume: Fix incorrect usage of PA_VOLUME_IS_VALID

The commit that introduced this macro was incorrect in some places. This
patch fixes these. Thanks to Pierre-Louis Bossart for pointing this out.

14 years agolog: Totally trivial spelling 'correction' (for en-US)
Colin Guthrie [Sun, 17 Oct 2010 20:05:39 +0000 (21:05 +0100)]
log: Totally trivial spelling 'correction' (for en-US)

14 years agoman: Clarify wording in volume sync documentation.
Paul Menzel [Sun, 17 Oct 2010 17:28:27 +0000 (19:28 +0200)]
man: Clarify wording in volume sync documentation.

14 years agointended-roles: Mark devices with a form factor of 'headset' as being appropriate...
Colin Guthrie [Sat, 16 Oct 2010 11:26:32 +0000 (12:26 +0100)]
intended-roles: Mark devices with a form factor of 'headset' as being appropriate for 'phone' streams

This was a result a report by Patrick Ben Koetter relating to his
Logitech Wireless Headset.

14 years agoalsa-mixer: add profile for Native Instruments Korecontroller
Daniel Mack [Fri, 15 Oct 2010 16:18:43 +0000 (18:18 +0200)]
alsa-mixer: add profile for Native Instruments Korecontroller

14 years agoman: sync_volume parameters to manual page
Jyri Sarha [Fri, 15 Oct 2010 10:05:18 +0000 (13:05 +0300)]
man: sync_volume parameters to manual page

Some wording teaks by Colin Guthrie and others.

Signed-off-by: Jyri Sarha <jyri.sarha@nokia.com>
Reviewed-by: Tanu Kaskinen <tanu.kaskinen@digia.com>
14 years agodaemon-conf: Add sync volume parameters to daemon-conf
Jyri Sarha [Fri, 15 Oct 2010 10:05:17 +0000 (13:05 +0300)]
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>
14 years agoudev-detect: Add sync_volume parameter
Jyri Sarha [Fri, 15 Oct 2010 10:05:16 +0000 (13:05 +0300)]
udev-detect: Add sync_volume parameter

Signed-off-by: Jyri Sarha <jyri.sarha@nokia.com>
Reviewed-by: Tanu Kaskinen <tanu.kaskinen@digia.com>
Reviewd-by: Colin Guthrie <cguthrie@mandriva.org>
14 years agoalsa: Take syncronized HW volume infra into use for alsa-sink
Jyri Sarha [Fri, 15 Oct 2010 10:05:15 +0000 (13:05 +0300)]
alsa: Take syncronized HW volume infra into use for alsa-sink

Signed-off-by: Jyri Sarha <jyri.sarha@nokia.com>
Reviewed-by: Tanu Kaskinen <tanu.kaskinen@digia.com>
Reviewd-by: Colin Guthrie <cguthrie@mandriva.org>
14 years agocore: Add infrastructure for synchronizing HW and SW volume changes
Jyri Sarha [Fri, 15 Oct 2010 10:05:14 +0000 (13:05 +0300)]
core: Add infrastructure for synchronizing HW and SW volume changes

To make concurrent use of SW and HW volume glitchles their application
needs to be synchronized. For accurate synchronization the HW volume
needs to be applied in IO thread. This patch adds infrastructure to
delay the applying of HW volume to match with SW volume timing. To
avoid synchronization problems this patch moves many of the volume and
mute related functions from main thread to IO thread. All these
changes become active only if the sync volume flag for a sink has been
set. So, for this patch to have any effect it needs to be taken into
use by sink implementor.

Signed-off-by: Jyri Sarha <jyri.sarha@nokia.com>
Reviewed-by: Tanu Kaskinen <tanu.kaskinen@digia.com>
Reviewd-by: Colin Guthrie <cguthrie@mandriva.org>
14 years agovolume: Decrease PA_VOLUME_MAX to be < 2^31
Arun Raghavan [Sat, 9 Oct 2010 17:59:51 +0000 (23:29 +0530)]
volume: Decrease PA_VOLUME_MAX to be < 2^31

This decrease PA_VOLUME_MAX to be less than 2^31. We want to do this in
order to simplify signed arithmetic when applying software volume
scaling (since the volume can now always be safely treated as a signed
number).

14 years agopactl: Validate volume before setting
Arun Raghavan [Sat, 9 Oct 2010 17:41:26 +0000 (23:11 +0530)]
pactl: Validate volume before setting

This makes sure that a valid volume is provided before setting on
sink/sink-input/source.