summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* module-switch-on-port-available: Route to preferred profiletanuk/restore-profile-per-portDavid Henningsson2015-10-191-67/+105
| | | | | | | | | | | | | | This makes the routing slightly more aggressive: * It will try to route to another profile, if such a profile is preferred by the port. * It will allow changing profiles on transitions both to PA_AVAILABLE_YES and PA_AVAILABLE_NO To accommodate there is also some refactoring. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* module-alsa-card: Report available ports before unavailable onesDavid Henningsson2015-10-191-6/+25
| | | | | | | | | | | | | | In case the same jack causes one port to become available and another one unavailable, the available should be reported first. This is to avoid unnecessary changes: e g, consider a 'Headphone Jack' making 'Headphone' available and 'Speaker' unavailable. In case the unavailable change triggers first, and there is also a currently available third port (e g 'Digital out'), the routing system might choose to route to this port because neither of the 'Speaker' and 'Headphone' ports are available. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* module-switch-on-port-available: Use input and output namesDavid Henningsson2015-10-191-0/+7
| | | | | | | | In case input or output names are filled in, we can use this to get a better match in the profile_good_for_input/output functions instead of guessing based on number of sources and channels. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* card-restore: Save and restore "preferred profile" of portDavid Henningsson2015-10-191-5/+58
| | | | Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* device-port: Add preferred_profile field to pa_device_portDavid Henningsson2015-10-192-0/+2
| | | | Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* alsa-mixer: Fill in input and output namesDavid Henningsson2015-10-193-1/+18
| | | | | | | Fill in input_name and output_name to make routing easier for routing modules. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* card: Add variables for splitting up a profileDavid Henningsson2015-10-192-0/+8
| | | | | | | | | | | It can be useful for routing modules to know if a profile consists of an output and input part, in order to e g change output profile while keeping the input profile unchanged. For now filling in these fields is optional and a routing module must be able to handle NULL in these fields. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* make availability of ports visible over dbusJohn Horan2015-10-191-2/+63
|
* dbus: Add card profile availability info to APIJuho Hämäläinen2015-10-192-6/+64
| | | | [diwic: Profile availability to boolean bug fixed]
* core-util: avoid calling fchmod if already right modeJulien Isorce2015-10-191-1/+1
| | | | fchmod is denied in chromium sandbox.
* card: Use pa_xmalloc0 when creating card profilesDavid Henningsson2015-10-161-6/+1
| | | | Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* shm: Warn on not being able to open shm filesDavid Henningsson2015-09-281-3/+7
| | | | | | | With the exception of when trying to clean up shm files, it's useful to warn if opening them fails, regardless of reason. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* card: Use pa_xnew0 when creating a cardDavid Henningsson2015-09-281-7/+1
| | | | Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* client: Use pa_xnew0 when creating a clientDavid Henningsson2015-09-281-5/+1
| | | | Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* build-sys: fix the default bash completion directoryTanu Kaskinen2015-09-271-1/+1
| | | | | | If bashcompletiondir was empty, the check didn't catch that. As a result, the symlinks that were supposed to be generated in the completion directory were created in the root directory.
* build-sys: bootstrap.sh: Do a make only if configure has succeededAhmed S. Darwish2015-09-251-2/+2
| | | | | | | Otherwise the important configure script error messages get buried by the "make clean" output. Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
* alsa-mixer: Add "Dock Line Out" jack handling to analog-output-speaker-alwaysTanu Kaskinen2015-09-251-0/+4
| | | | | The jack is already in analog-output-speaker, so let's have the same handling in analog-output-speaker-always too.
* alsa-mixer: Recognize "Dock Line Out" jackTakashi Iwai2015-09-252-0/+12
| | | | | | | Some machines provide "Dock Line Out Jack" control that should be handled like a normal line out. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* bluetooth: bluez4: Remove the unused "auto_connect" parameter as it is not ↵Manish Sogi2015-09-251-9/+0
| | | | | | | used in bluez4 <EP-F69A421D31544C56BDE97C590307C014> Signed-off-by: Manish Sogi <manish.sogi@samsung.com>
* alsa-mixer: Add "Mic Boost" and "Line Boost" to analog-input.confDavid Henningsson2015-09-251-0/+6
| | | | | | | | | I'm not sure how much they are needed nowadays with the latest changes to the subset elimination (I found this while researching a bug on an older PA version), but I guess they could be added for consistency at least. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* log: Fix compilation error on non-systemd systemsAhmed S. Darwish2015-09-252-1/+4
| | | | | | | | | | | | | Commit 262bdae0330e used symbols which are only available if systemd support was compiled in. Fix by using the appropriate #ifdef guards. Also document the resulting PULSE_LOG_JOURNAL environment variable behavior if systemd journal support was not compiled in. [Diwic: changed wording slightly.] Reported-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
* log: Introduce PULSE_LOG_JOURNAL environment variableAhmed S. Darwish2015-09-252-0/+15
| | | | | | | | | | | | | | | | | By introducing such an environment variable, applications using the PA client libraries can configure these libraries to send their logs directly to the journal. While client libraries journal logging can be indirectly achieved using PULSE_LOG_SYSLOG, this pollutes the journal. Meta data gets replicated twice: once in the journal meta fields and once in the syslog(3) plain-text message itself. For attaching any backtraces, also introduce the PA-specific journal meta field PULSE_BACKTRACE. This is the recommend journal practice instead of appending any furuther data to the logging message itself. Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
* pulseaudio.1: document that systemd notification only works without ↵Felipe Sateler2015-09-251-1/+3
| | | | daemonization
* daemon: Use Type=notify for systemd serviceFelipe Sateler2015-09-252-0/+10
| | | | | This ensures systemd knows when pulseaudio finishes loading, thus never marking pulseaudio as active if startup fails.
* Rename functions with "tostring" in the name to one with "to_string" to ↵Deepak Srivastava2015-09-2524-46/+46
| | | | | | | | | | | conform with the convention. component: core <EP-E358F00C1D9A449EAE69225B9D2530F8> BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=88833 Signed-off-by: Deepak Srivastava <srivastava.d@samsung.com>
* core: Fallbacks for machine-id in filesystemPeter Meerwald2015-09-251-3/+12
| | | | | | see https://bugs.freedesktop.org/show_bug.cgi?id=88834 Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
* build-sys: don't use the nodelete linker flag on executablesShawn Walker2015-09-252-18/+20
| | | | | | | | | The nodelete flag indicates that we don't want our libraries to be unloaded. It's only relevant on libraries, so let's not use it for executables. Trying to use it on executables breaks things on some platforms. BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=90878
* Update NEWS for 7.0 releasev7.0Arun Raghavan2015-09-241-0/+5
|
* i18n: Update Slovak translationDušan Kazik2015-09-231-202/+261
|
* tests: Fix test-suite failure on AlphaMichael Cree2015-09-171-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Pulseaudio fails to build on the Alpha architecture due to a failure in the volume-test of the test suite. I had reported this to the Debian bug tracker [1] but the maintainer has asked that I forward the patch to this mail list. The failure in volume-test occurs because it is compiled with -ffast-math which implies -ffinite-math-only of which the gcc manual states that it optimizes for floating-point arithmetic with the assumption that arguments and results are not NaNs or +/-infinity, and futher notes that it may result in incorrect output. On the Alpha platform that is somewhat an understatement as the use of non-finite floating-point arithmetic with -ffinite-math-only results in a floating-point exception and the termination of the program. The volume-test converts volumes into decibels (so a zero volume becomes a negative infinity) and proceeds to add two volumes (in decibels), thus does arithmetic with non-finite floating point numbers despite being compiled with -ffast-math! I attach a patch that protects against the arithmetic with non-finite numbers for your consideration. With that patch the test-suite passes on Alpha. Cheers Michael. [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=798248
* lfe-filter: Deal with empty input chunksArun Raghavan2015-09-171-1/+1
| | | | | | | | | | | | | | | | | It is possible that we get a zero-length memchunk to work with. Specifically, this happens the resampler (which is called before the lfe-filter) consumes all the input data, but does not (yet) produce any output data. Reproduced using: pulseaudio --resample-method=soxr-mq pactl load-module module-null-sink sink_name=lfe_test channels=3 channel_map=front-left,front-right,lfe paplay --raw /dev/zero --rate=48000 -d lfe_test Thanks to the original reporter for the backtrace: Bug: https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/1496577
* modules: Fix entry leak in module-card-restorePeter Meerwald2015-09-161-1/+4
| | | | | | CID 1323585 entry_read() allocates an entry which must be freed
* core: Add missing return on protocol errorPeter Meerwald2015-09-161-1/+3
| | | | | | CID 1323582 when a protocol error occors, better bail out :)
* daemon: No need to check optarg, -p requires argumentPeter Meerwald2015-09-161-1/+1
| | | | | | | CID 1323589 getopt() makes sure that we have an argument for -p remove the broken check for optarg being set
* loopback: Fix the obviously-wrong "buffer+=buffer" logicAlexander E. Patrakov2015-09-131-1/+1
| | | | | | | | | Originally pointed out by Georg Chini. Calculating buffer = buffer + (send_counter - recv_counter) in one branch and buffer = 2 * buffer - (recv_counter - send_counter) looks very obviously wrong. In other words, before the patch, the contribution from the previous lines was double-counted.
* build-sys: add sb-omni-surround-5.1.conf to Makefile.amv6.99.2Tanu Kaskinen2015-09-121-1/+2
| | | | This is needed to get the file included in the release tarballs.
* build-sys: bump sonamesTanu Kaskinen2015-09-121-1/+1
| | | | There were a couple of bug fixes to libpulse since 6.99.1.
* sink, source: Do not dereference freed memory when freeing the next eventsFelipe Sateler2015-09-122-2/+4
| | | | Coverity IDs: 1138197, 1138196
* util: pa_get_fqdn: always free addrinfoFelipe Sateler2015-09-121-2/+7
| | | | | | Also fix the return error code check of getaddrinfo call Coverity ID: 1323587
* i18n: Update Polish translationPiotr Drąg2015-09-121-656/+752
|
* Fix return code check of pa_append_to_home_dirFelipe Sateler2015-09-111-1/+1
| | | | | | It returns negative on error, zero on success. Found by coverity
* build-sys: fix order of libraries installationZavadovsky Yan2015-09-101-1/+1
| | | | | | | | | | | Libraries from modlibexec_LTLIBRARIES list require not only libpulsecommon but also libpulse and libpulsecore from lib_LTLIBRARIES list. This patch fix race in 'make -j X install' (with X is 2 and more) when building/installing inside chroot placed on RAM-disk(tmpfs). Signed-off-by: Zavadovsky Yan <zavadovsky.yan@gmail.com>
* module: Always remove freed module from modules_pending_unloadDavid Henningsson2015-09-071-2/+3
| | | | | | | | | pa_module_free is called from more than one place, not all of these places correctly removed the module from the modules_pending_unload array, potentially causing a dangling pointer in that array. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* core-util: include xlocale.h when using strtod_l()Tanu Kaskinen2015-09-071-0/+1
| | | | | | | | | | | | | | Based on some googling, strtod_l() is defined in xlocale.h on BSD. Glibc seems to define it in stdlib.h, but only if GNU extensions are enabled (otherwise the function won't be available). So, this patch should fix the use of strtod_l() on BSDs, but on other systems things may or may not be still broken. The original patch author is Jakob Fink <jfink@gmx.at>. He sent this patch to the freebsd-gnome mailing list: http://lists.freebsd.org/pipermail/freebsd-gnome/2015-April/032138.html BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=90285
* build-sys: check strtod_l instead of strtof_lTanu Kaskinen2015-09-072-4/+4
| | | | | | | | | | We have no strtof_l calls in the code, so it doesn't make sense to check that function's availability. We have one strtod_l call, so let's check that instead. I don't know if this change makes any practical difference. I just wondered why we had HAVE_STRTOF_L ifdefs in core-util.c for code that didn't use strtof_l.
* alsa-mixer: sb-omni-surround-5.1.conf: remove analog-surround-40 mappingTanu Kaskinen2015-08-281-7/+0
| | | | | It was reported that the 4.0 mode doesn't work properly: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/23677/focus=23904
* alsa-mixer: sb-omni-surround-5.1.conf: rename analog-stereo to ↵Tanu Kaskinen2015-08-281-2/+3
| | | | | | | analog-stereo-output The mapping is only useful for output, and this renaming makes the name symmetric with the input mapping.
* alsa-mixer: Add support for Creative SoundBlaster Omni Surround 5.1 USB ↵Nazar Mokrynskyi2015-08-284-0/+93
| | | | | | | sound card Mic and Line in inputs were not working at all, since they use the hw:x,1,0 device, which is not supported in the default configuration.
* update NEWS for 7.0v6.99.1Tanu Kaskinen2015-08-271-0/+48
|
* build-sys: bump sonamesTanu Kaskinen2015-08-271-1/+1
| | | | | | | In this release cycle, libpulse had some internal code changes, but no ABI changes. libpulse-simple and libpulse-mainloop-glib had no changes whatsoever.