summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* core: Fix GCC 6 compiler warning regarding left shift of negative valuePeter Meerwald2016-02-181-2/+4
| | | | | | | | | | | | | | | | | In file included from pulse/timeval.c:32:0: pulse/timeval.c: In function 'pa_timeval_add': ./pulsecore/macro.h:303:28: warning: left shift of negative value [-Wshift-negative-value] ? ~(~(type) 0 << (8*sizeof(type)-1)) reported by Ubuntu gcc-6 gcc-6 adds -Wshift-negative-value (enabled by -Wextra) which warns about left shifting a negative value. Such shifts are undefined because they depend on the representation of negative values. also works with -Wshift-overflow=2 Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
* modules: Fix compiler warning comparing 0 with boolPeter Meerwald2016-02-181-1/+1
| | | | | | | | | | modules/module-stream-restore.c: In function 'clean_up_db': modules/module-stream-restore.c:2344:74: warning: comparison of constant '0' with boolean expression is always true [-Wbool-compare] pa_assert_se(entry_write(u, item->entry_name, item->entry, true) >= 0); reported by Ubuntu gcc-6 Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
* role-ducking: Fix improper unducking behavior in case of operating globallySangchul Lee2016-02-181-1/+17
| | | | | | | | Fix improper unducking behavior when using this module with "global=1" argument. BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=93994 Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
* coreaudio: Catch devices with more channels than we supportArun Raghavan2016-02-121-0/+10
|
* coreaudio: Dynamically allocate C string when converting from CFStringArun Raghavan2016-02-121-27/+31
|
* build-sys: Only use sysroot in OS X CFLAGS if specifiedArun Raghavan2016-02-121-3/+8
| | | | | The default value doesn't make sense any more, so we'll only use this if explicitly specified.
* default.pa: remove X11 module examplesTanu Kaskinen2016-02-091-31/+0
| | | | | | | | | | | | | Loading X stuff from default.pa is a bad idea, since it doesn't work if there are multiple X sessions, or PulseAudio is started outside the X session. Since it's a bad idea, don't encourage it by including examples that do so. I also removed the sample loading examples. I don't think the examples are particularly useful, since nothing uses the loaded samples once module-x11-bell is removed from the configuration. BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=93109
* glib: Trivial whitespace fixArun Raghavan2016-02-091-1/+1
|
* rescue-streams : Fix a typoJungsup Lee2016-02-021-1/+1
| | | | | | Fix a typo in log message. Signed-off-by: Jungsup Lee <jungsup4.lee@samsung.com>
* device-manager: improve logging about non-existing dataTanu Kaskinen2016-01-261-2/+4
| | | | | | | | | | | | | Previously a missing key would cause this kind of log output: D: [pulseaudio] module-device-manager.c: Database contains invalid data for key: sink:auto_null (probably pre-v1.0 data) D: [pulseaudio] module-device-manager.c: Attempting to load legacy (pre-v1.0) data for key: sink:auto_null D: [pulseaudio] module-device-manager.c: Size does not match. D: [pulseaudio] module-device-manager.c: Unable to load legacy (pre-v1.0) data for key: sink:auto_null. Ignoring. That is now replaced with D: [pulseaudio] module-device-manager.c: Database contains no data for key: sink:auto_null
* solaris: Illumos does not ship with SOUND_PCM* functionalityKamil Rytarowski2016-01-222-0/+13
| | | | | | | | | | | | | | Code reference: https://github.com/joyent/illumos-joyent/blob/master/usr/src/uts/common/sys/audio/audio_oss.h Add autoconf checks for: - SOUND_PCM_READ_RATE - SOUND_PCM_READ_CHANNELS - SOUND_PCM_READ_BITS Some platforms like SunOS (Illumos) may ship without SOUND_PCM_* functionality Thanks to Jonathan Perkin (Joyent) for Illumos code reference.
* solaris: Catch up with newer APIJonathan Perkin2016-01-221-3/+9
| | | | | | | Patch upstreamed from pkgsrc by Kamil Rytarowski <n54@gmx.com>. See commit e4a7625ba884c5cce20468d75937857343751c35 for why this was originally done.
* vala: Added cnames to callback delegates in Vala VAPIMarcin Lewandowski2016-01-221-0/+15
|
* source-output: remap volume_factor_source when starting moveTanu Kaskinen2016-01-221-0/+3
| | | | | | | | | | | | | | | | | | | | | This gets rid of an error message from the debug log. If volume_factor_source would actually be used somewhere, this bug would have caused more severe problems. volume_factor_source should have the source's channel map. When moving the stream, the volume needs to be remapped from the old source's channel map to the new source's map. However, when the stream is being moved, there is a period where the old source has already been forgotten and the new source isn't yet known, so the remapping can't be done directly between the two channel maps. Instead, the volume is remapped from the old source's map to the stream's own map when the move starts, and again remapped from the stream's map to the new source's map when the move finishes. The first remapping was missing, causing the second remapping fail and print an error to the log. (I checked the sink input code as well. It didn't have this bug.)
* source-output: do volume_factor_source application before resamplingTanu Kaskinen2016-01-221-13/+7
| | | | | | | | Applying the volume after resampling means mismatch between the volume channel map and the data channel map. volume_factor_source is not currently used anywhere, so this bug hasn't been causing any problems. I noticed it while reading the code.
* pulse: Bump PA_RATE_MAX to 384 kHzArun Raghavan2016-01-221-1/+1
| | | | | | This will likely be needed in the future when we start supporting high bitrate passthrough, and there actually seem to be people 352/384 kHz out there (potentially as an intermediate production step).
* format: Make pa_format_info_valid() stricter for PCMArun Raghavan2016-01-221-1/+7
| | | | We should do stricter validation when we can.
* Update NEWS for 8.0v8.0Arun Raghavan2016-01-221-0/+53
|
* bluetooth: Prevent aborts caused by invalid module argumentsJason Gerecke2016-01-152-3/+5
| | | | | | | | | If 'pa_modargs_new' returns a NULL, we need to be careful to not call 'pa_modargs_free' in the failure path since it requires that we pass it a non-null argument. Also updates 'module-bluetooth-policy.c:pa__init' to follow the standard "goto fail" pattern used everywhere else. Signed-off-by: Jason Gerecke <killertofu@gmail.com>
* build-sys: Use #ifdef with HAVE_FAST_64BIT_OPERATIONSArun Raghavan2016-01-152-2/+2
| | | | | | The define is made conditionally. Reported by: Kamil Rytarowski <n54@gmx.com>
* stream: Clarify pa_stream_writable_size() documentationArun Raghavan2016-01-121-1/+8
|
* sink-input, source-output: Add some debug output on start_move()v7.99.2Arun Raghavan2016-01-122-0/+4
|
* NetBSD: Stop depending upon nonstandard __WORDSIZEKamil Rytarowski2016-01-083-6/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | There is no way to check CPU type in a portable way across ABIs. Assume if pointers are 64-bit that CPU is capable to perform fast 64-bit operations. Add an extra check to handle x32-ABI. PulseAudio by default builds with -Wundef. If we add -Werror=undef this missing define is fatal. By default build log is full of entries like: In file included from ./pulsecore/core.h:47:0, from ./pulsecore/module.h:31, from ./pulsecore/sink-input.h:31, from pulsecore/sound-file-stream.c:36: ./pulsecore/sample-util.h: In function 'pa_mult_s16_volume': ./pulsecore/sample-util.h:58:5: warning: "__WORDSIZE" is not defined [-Wundef] #if __WORDSIZE == 64 || ((ULONG_MAX) > (UINT_MAX)) ^ (NetBSD-7.99.21 with default GCC 4.8.5) This change fixes build issues on NetBSD. This also address a bug reported by Shawn Walker from Oracle (possibly Solaris): Bug 90880 - builds can fail due to non-portable glibc-specific internal macro usage
* rtpoll: Fix build error when building with DEBUG_TIMINGjungsup lee2016-01-071-1/+1
| | | | | This typo causes a build error when DEBUG_TIMING is defined. Signed-off-by: jungsup lee <jungsup4.lee@samsung.com>
* module-tunnel: Fix double freeKimJeongYeon2016-01-071-2/+2
| | | | | | Local pointer 'dn' freed again when pa_thread_new() failed. Signed-off-by: KimJeongYeon <jeongyeon.kim@samsung.com>
* module-coreaudio-device: get channel name as CFString and convert to plain C ↵Mihai Moldovan2016-01-041-2/+44
| | | | | | | | | | | | | | | | | | | | | | | string. This is an OpenPGP/MIME signed message (RFC 4880 and 3156) The old code fetched the channel name via AudioObjectGetPropertyData() and accessed the "returned" data as a plain char buffer. This may or may not have worked at some point according to the Apple CFString documentation, which warns that the actual data layout is an implementation detail and subject to change at any time. On recent OS X versions, this behavior led to "random data" channel names like >H��{, H��{<. We need to actually let AudioObjectGetPropertyData() populate a CFString struct and convert this into a plain char buffer. The conversion function will not free the CFString, so do that in the caller. Signed-off-by: Mihai Moldovan <ionic@ionic.de>
* system.pa.in: load module-coreaudio-detect if HAVE_COREAUDIO.Mihai Moldovan2016-01-041-0/+4
| | | | | This is an OpenPGP/MIME signed message (RFC 4880 and 3156) Signed-off-by: Mihai Moldovan <ionic@ionic.de>
* default.pa.in: load module-coreaudio-detect if HAVE_COREAUDIO.Mihai Moldovan2016-01-041-0/+4
| | | | | This is an OpenPGP/MIME signed message (RFC 4880 and 3156) Signed-off-by: Mihai Moldovan <ionic@ionic.de>
* configure.ac: add HAVE_COREAUDIO to automake and code.Mihai Moldovan2016-01-041-0/+3
| | | | | This is an OpenPGP/MIME signed message (RFC 4880 and 3156) Signed-off-by: Mihai Moldovan <ionic@ionic.de>
* alsa: Don't disable timer-based scheduling on USB devicesArun Raghavan2015-12-291-2/+19
| | | | | | This isn't a great fix, but we need ALSA API to do this right. In the mean time, USB devices work fine with timer-based scheduling, so there's no reason to force a large minimum latency by disabling tsched on them.
* build-sys: Fix install order of libpulsecoreFelipe Sateler2015-12-291-3/+7
| | | | It needs to be installed after libpulse, because of libtool relinking.
* travis: Run make install in travis.Felipe Sateler2015-12-291-1/+1
| | | | This helps detect ordering problems in the install target
* build-sys: add typedefs.h to libpulsecore SOURCESv7.99.1Tanu Kaskinen2015-12-271-0/+1
| | | | Without this the file doesn't get included in tarballs.
* build-sys: bump sonamesTanu Kaskinen2015-12-271-1/+1
| | | | Bump 18 -> 19 due to the addition of the LFE balance API.
* daemon: Sanitise message about unsupported high res timersArun Raghavan2015-12-211-2/+2
|
* build: Move to using Travis trusty imagesArun Raghavan2015-12-211-4/+6
|
* always-sink: simplify hook management with pa_module_hook_connect()Tanu Kaskinen2015-12-211-7/+2
|
* i18n: Update Ukrainian translationYuri Chornoivan2015-12-201-166/+175
|
* gitignore: Add .orig and .rej to gitignoreDavid Henningsson2015-12-181-0/+2
| | | | Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* context: continue without srbchannel if it failsPierre Ossman2015-12-181-1/+5
| | | | | | | | We might be compiled without eventfd support, or something else might go wrong. And it's fully possible to continue using the old channel rather than just disconnecting. Signed-off-by: Pierre Ossman <ossman@cendio.se>
* loopback: Validate the rate parameterGeorg Chini2015-12-181-0/+5
|
* echo-cancel: Don't skip canceller when sink is inactiveArun Raghavan2015-12-151-9/+3
| | | | | | | | | This forces the canceller engine to be invoked even if playback is not currently active. We need to do this for cases where the engine provides additional processing that is independent of playback, such as noise suppression and AGC. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=83557
* build-sys: Make pulsecore a private libraryFelipe Sateler2015-12-141-1/+1
| | | | It is not meant to be used by third parties, so do not install in a public dir
* client-conf, daemon-conf: enable .d directoriesTanu Kaskinen2015-12-144-13/+35
| | | | | | | | | | | | | 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.
* conf-parser: add support for .d directoriesTanu Kaskinen2015-12-146-8/+52
| | | | | | | | This allows a configuration scheme where after loading configuration from "somefile", the parser loads configuration from files in directory "somefile.d". This feature needs to be enabled on a per-file basis, though, and this patch doesn't yet enable the feature for any files.
* typedefs.h: Move some typedefs to a separate fileDavid Henningsson2015-12-149-19/+47
| | | | | | | | | | | | | | The relationship between sinks, sources, cards, profiles, and ports is becoming ever more intertwined, to the point that if you try to include one file from the other, you're likely to end up with some weird error somewhere else. Work around this by creating a new typedefs.h, which does not depend on anything else, and just creates a few typedefs. (Can be expanded with more typedefs in the future if the need arises.) Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* alsa-mixer: Have valid proplist for synthesized path as well.Juho Hämäläinen2015-12-111-0/+1
| | | | | | | When synthesized alsa path is freed there is an assert from NULL proplist. Create empty proplist for the path to fix. Signed-off-by: Juho Hämäläinen <juho.hamalainen@nomovok.com>
* netbsd: Revamp NetBSD platform checksKamil Rytarowski2015-12-081-4/+7
|
* core, pulse, modules: Fix undefined behavior with array subscript of invalid ↵Kamil Rytarowski2015-12-085-15/+15
| | | | | | | | | | | | | | type From the NetBSD manual: The first argument of these functions is of type int, but only a very restricted subset of values are actually valid. The argument must either be the value of the macro EOF (which has a negative value), or must be a non-negative value within the range representable as unsigned char. Passing invalid values leads to undefined behavior. -- ctype(3)
* core-rtclock: Add missing declaration of struct timespecKamil Rytarowski2015-12-081-0/+2
|