summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* build: Generate module symdefs in src/modules directoryMaarten Bosmans2011-01-311-104/+88
| | | | | | | | | | | 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)
* Merge remote branch 'mkbosmans/rate-adjustment'Colin Guthrie2011-01-313-60/+103
|\
| * module-rtp-recv: Request proper rewind after underrunMaarten Bosmans2011-01-161-1/+3
| |
| * module-rtp-recv: Remove smoother from write indexMaarten Bosmans2011-01-161-21/+3
| | | | | | | | | | 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.
| * module-rtp-recv: Average the estimated real sample rateMaarten Bosmans2011-01-161-4/+22
| |
| * module-rtp-recv: Use new algorithm for adjusting sample rateMaarten Bosmans2011-01-161-15/+29
| |
| * Limit rate adjustments to small, inaudible jumpsMaarten Bosmans2011-01-163-26/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * module-loopback: Add adjust_time to valid argsMaarten Bosmans2011-01-161-0/+1
| |
* | Fighting rewinds: Reduce calls to handle_seekDavid Henningsson2011-01-311-30/+26
| | | | | | | | | | | | | | | | | | 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>
* | Fighting rewinds: Seek and write data in the same messageDavid Henningsson2011-01-311-8/+12
| | | | | | | | | | | | | | | | 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>
* | ratelimit: fix log levels of log suppression messagesLennart Poettering2011-01-3113-18/+19
| | | | | | | | | | | | | | | | | | 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.
* | Core: Fix incorrect check of return valueScott Reeves2011-01-231-2/+2
| |
* | build: Use MODULE_LIBADD in Makefile.amMaarten Bosmans2011-01-231-84/+86
| |
* | Merge commit 'e4979ab5cff84ef64c88bba3a1b6b4c5e02f7777'Colin Guthrie2011-01-173-10/+16
|\ \
| * | bluetooth: detect when bitpool has changed on sbc codecLuiz Augusto von Dentz2010-12-231-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | bluetooth: fix build for libdbus < 1.3Luiz Augusto von Dentz2010-12-231-0/+2
| | |
| * | bluetooth: fix case of profile UUIDs to match what BlueZ usesLuiz Augusto von Dentz2010-12-231-8/+8
| |/
* | tunnel: Fix automatic names when source/sink_name argument is missing.Colin Guthrie2011-01-161-2/+2
| | | | | | | | Spotted by palmerdabbelt via #894
* | client: Don't update smoother while corkedArun Raghavan2011-01-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | alsa-sink: Don't assume we were able to enable hw-volume or sync-volume (v1.1)Jyri Sarha2011-01-151-21/+21
| | | | | | | | | | This patch also disables mixer callback code if we do not have neither HW-volume or HW-mute.
* | alsa-sink: Fix double use of stringJyri Sarha2011-01-151-6/+8
| |
* | core: Use pa_sink_get_latency_within_thread() in sync-volume codeJyri Sarha2011-01-151-9/+2
| |
* | core: Use volume_change_safety_margin when rewinding sync-volume eventsJyri Sarha2011-01-151-6/+16
| | | | | | | | | | After this patch the volume changes are applied immediately after sink rewind before processing streams and monitor source.
* | core: Change sematics of pa_flist_new_with_name() (v1.1)Jyri Sarha2011-01-152-3/+5
| | | | | | | | | | Name string is copied and added to flist structure. The original is responsibility of the caller. The name is only used for debug printing.
* | build-sys: Make --disable-dbus actually work.Colin Guthrie2011-01-111-30/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | build-sys: Put in specific warnings when there is no udev or DBUS supportColin Guthrie2011-01-111-0/+24
| | | | | | | | | | | | | | | | | | | | 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.
* | console-kit: Console Kit support is dependent on DBUS and is thus optional.Colin Guthrie2011-01-111-0/+2
| | | | | | | | | | | | | | | | 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.
* | padsp: wrap __open_2 and __open64_2Michal Schmidt2011-01-101-9/+52
| | | | | | | | | | | | 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.
* | loopback: Add new arguments to disable stream moveCai Yuanqing2011-01-031-1/+26
| | | | | | | | | | | | | | | | | | 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.
* | Revert "core: make use of dbus_message_iter_append_fixed_array"Colin Guthrie2011-01-031-1/+6
|/ | | | | This causes problems as outlined in ticket #887. This reverts commit f564c7d76371380980faa10ee3c756c3130c60bf.
* coreaudio: Make coreaudio-detect safer by adding asserts before dereferencingCai Yuanqing2010-12-221-6/+11
|
* fix bug about get source-output statusChen Rui2010-12-201-1/+1
|
* Fix typosZhang Wanming2010-12-2010-16/+16
|
* Further clarify src- and speex- references in pulse-daemon.confDaniel T Chen2010-12-191-13/+14
| | | | | | | | | 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>
* Fix return value of pa_sndfile_format_from_stringVincent Becker2010-12-181-3/+3
| | | | This prevented to use pacat --file-format option correctly
* core: Fix variable "has_whined" value bugYang Xichuan2010-12-181-1/+1
| | | | | | | | | 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.
* trivial: Mention speex as a resampler reference in pulse-daemon.confDaniel T Chen2010-12-181-1/+1
| | | | | | | | | | 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>
* module-loopback: Prevent an infinite loop when rate adjusting is disabledMaarten Lankhorst2010-12-121-1/+2
|
* bluetooth: Fix a2dp processingMaarten Lankhorst2010-12-121-1/+1
|
* volume: Trivial cosmetics (remove a space)Colin Guthrie2010-12-061-1/+1
|
* jack: Add module-jackdbus-detectDavid Henningsson2010-12-052-0/+316
|
* build-sys: Fix a warning during distcheckArun Raghavan2010-12-053-1/+22
| | | | | This adds a dummy Makefile.am to the dbus module to eliminate missing directory warnings during distcheck.
* i18n: Update POTFILES.*Arun Raghavan2010-12-052-0/+4
| | | | | Add new modules, and skip module-virtual-sink for i18n since it's really meant to be a template for writing other modules.
* build-sys: Include the .version file in the distribution tarballColin Guthrie2010-12-052-0/+2
| | | | | | | | | | | 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.
* build-sys: Fix make distcheck failure due to udev rules fixed install pathColin Guthrie2010-12-051-0/+2
| | | | | I don't know why this does not honour DESTDIR or similar during distcheck but this simple enough patch fixes it.
* build-sys: Replace dummy Makefiles with proper Makefile.am'sColin Guthrie2010-12-0535-39/+379
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* build-sys: Add some smarts to version extraction from git tags.Colin Guthrie2010-12-041-7/+15
| | | | | | | | | | | | | | 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.
* doxygen: Fix version numbers for new featuresColin Guthrie2010-12-043-7/+7
| | | | | | 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
* echo-cancel: Fix source may_move_to functionArun Raghavan2010-12-021-1/+1
| | | | | | | 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.
* rescue-streams: Fix segfault in some conditionsArun Raghavan2010-12-021-1/+1
| | | | | | | 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.