summaryrefslogtreecommitdiffstats
path: root/src/modules
Commit message (Collapse)AuthorAgeFilesLines
* module-rtp-recv: Remove smoother from write indexMaarten Bosmans2011-02-251-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-02-251-4/+22
|
* module-rtp-recv: Use new algorithm for adjusting sample rateMaarten Bosmans2011-02-251-15/+29
|
* Limit rate adjustments to small, inaudible jumpsMaarten Bosmans2011-02-253-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-02-251-0/+1
|
* tunnel: Fix automatic names when source/sink_name argument is missing.Colin Guthrie2011-01-231-2/+2
| | | | Spotted by palmerdabbelt via #894
* ratelimit: fix log levels of log suppression messagesLennart Poettering2011-01-223-6/+6
| | | | | When logging a suppression message do so on the same log level as the suppressed messages.
* fix bug about get source-output statusChen Rui2010-12-201-1/+1
|
* Fix typosZhang Wanming2010-12-207-13/+13
|
* module-loopback: Prevent an infinite loop when rate adjusting is disabledMaarten Lankhorst2010-12-121-1/+2
|
* jack: Add module-jackdbus-detectDavid Henningsson2010-12-051-0/+304
|
* build-sys: Replace dummy Makefiles with proper Makefile.am'sColin Guthrie2010-12-0421-9/+240
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* 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.
* Handle 'Internal Mic 1' as an 'Input Source'Daniel T Chen2010-11-251-0/+4
| | | | | | | | | 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>
* Add "Rear Mic" to alsa mixer paths.David Henningsson2010-11-252-0/+13
| | | | Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* alsa-source: fix enum typesLennart Poettering2010-11-251-2/+2
|
* alsa-mixer: make a few strings translatableLennart Poettering2010-11-251-3/+3
| | | | | | Original patch contributed by 'kelemeng' http://pulseaudio.org/ticket/843
* upnp: Implement the MediaServer2 D-Bus interfaceStephen Moehle2010-11-171-199/+463
| | | | | | This allows PulseAudio to work with versions of Rygel 0.7.1 and higher which only support MediaServer2: http://live.gnome.org/Rygel/MediaServer2Spec
* combine: Only check if the sink is h/w etc. in automatic modeColin Guthrie2010-11-171-8/+8
|
* combine: Handle reappearing slave sinks in non-automatic mode.Antti-Ville Jansson2010-11-171-3/+23
| | | | | | | | 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>
* alsa: remove redundant call to snd_pcm_nonblock()Pierre-Louis Bossart2010-11-171-2/+0
| | | | | | | 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>
* alsa-mixer: add profile for Native Instruments KorecontrollerDaniel Mack2010-10-312-0/+86
|
* augment-properties: Fix debug messages and statement bracketing.Colin Guthrie2010-10-061-2/+3
|
* device-manager: Ensure that sinks/sources populate the device manager lists ↵Colin Guthrie2010-09-291-5/+59
| | | | | | | in order of their priority. Currently the order of the sinks is simply that of their position in the idxset which is certainly not what the user would want.
* augment-properties: Search for .desktop files in subfolders too.Colin Guthrie2010-09-291-5/+39
|
* stream-restore: Clear the save_sink/save_source flags on apply_entry.Colin Guthrie2010-09-291-12/+36
| | | | | | | | | | | If the user specifically removes the device element from the stream restore rule, we have to clear the save_sink/save_source flag of the stream. This means that other stream routing systems (e.g. module-device-manager) can take over routing for this stream. In order to facilitate the reapplication of other routing rules, we fire a stream change event. Arguably the stream itself has not changed, but the rules governing its routing have, so I feel this is justified.
* x11: Use the default screen for X11 properties.Colin Guthrie2010-09-181-15/+22
| | | | | This commit restores the functionality originally included in 65e807 by Leszek Koltunski.
* alsa: Only set the 'first' flag to false when we actually call snd_pcm_start()Colin Guthrie2010-09-141-1/+2
| | | | Previously, if work_done was false, we could conceivably not call snd_pcm_start().
* alsa-mixer: add profile for Traktor Kontrol S4Daniel Mack2010-09-142-0/+82
| | | | | This new audio interface from Native Instruments has 2 stereo channels for both input and output direction. This patch adds mappings for them.
* alsa: make defines for smoother configurationWim Taymans2010-09-142-4/+10
| | | | | | | | | | | | Make new defines for the smoother window size and adjust time constants instead of reusing some unrelated constant. Increase the smoother window size even more because the bigger it is, the better. Since we have a 200ms max update interval and the max smoother history is 64 entries, 10seconds is a good default. Decrease the smoother adjust time to 1 second. The previous value of 4 seconds was too much to adapt quickly after a resume.
* alsa: work around slightly broken _delay implementationsWim Taymans2010-09-144-6/+46
| | | | | | Use snd_pcm_avail_delay() in pa_alsa_safe_delay() so that we can check the delay value against the avail value and patch it up when it looks invalid. Only do this for capture.
* alsa-source: refactor smoother and device startWim Taymans2010-09-141-8/+18
| | | | | | | Move the code to start the capture and the smoother closer together to improve smoother accuracy. Rework things to look more like the alsa sink where the device is started in only one place.
* alsa: Set the rewind safeguard proportionally to sample specColin Guthrie2010-09-041-2/+3
| | | | | | | | | | | | | Currently when rewinding alsa, a fixed value of 256 bytes is used, which represents 1.33ms @ 48kHz (2ch, 16bit). This is typically fine and due to DMA constraints we would not want to rewind less than this. However with more demanding sample specs, (e.g. 8ch 192kHz 32bit) 256 bytes is likely not sufficient, so calculate what 1.33ms would be and use which ever value is bigger. Discussed with David Henningsson and Pierre-Louis Bossart here: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/7286
* alsa-sink: Get rid of a compiler warning regarding rewind_safeguard type.Tanu Kaskinen2010-09-041-2/+2
| | | | | GCC gave a warning, because the pointer given to pa_modargs_get_value_u32() had type size_t instead of uint32_t.
* add rewind-safeguard parameterPierre-Louis Bossart2010-09-042-5/+17
| | | | | | | | | | Rewinding the ring buffer completely causes audible issues with DMAs. Previous solution didn't work with tsched=0, and used tsched_watermark for guardband, which isn't linked to hardware and could become really high if underflows occurred. Added separate parameter that can be tuned to hardware limitations and size of DMA bursts.
* alsa: don't make use of tsched related variables when tsched is disabledLennart Poettering2010-09-042-22/+40
|
* alsa: increase the smoother windowWim Taymans2010-09-031-2/+2
| | | | | 40ms for the smoother window is too small. Increase the size to 4 seconds, like we do for the sinks.
* alsa: resume smoother after unsuspendWim Taymans2010-08-231-1/+1
| | | | | | The smoother is paused when the device is suspended but never resumed on unsuspend. Pass the paused = FALSE flag to the pa_smoother_reset() call to make it unpause when unsuspending. This patch improves source timings quite a bit.
* x11: Partially convert to XCB.Colin Guthrie2010-08-151-18/+17
| | | | | | This commit mostly converts the X11 handling to XCB. There are still some uses of XLib to deal with the X11 session handling modules, however all client-side code should now be free of XLib and thus this should fix Bug #799
* udev: fix hex decodingLennart Poettering2010-08-151-2/+2
|
* alsa: disable rewinds when using ALSA pluginsPierre-Louis Bossart2010-07-151-2/+12
| | | | | | | | | | This is required to when playing on a52: device, rewind is broken in those plugins. Credits to Michael Rans <mcarans@yahoo.co.uk> for finding this workaround, and Tanu Kaskinen <tanuk@iki.fi> for providing valuable feedback. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
* alsa: Fix assertion on mmap_write (triggered via a52 plugin)Colin Guthrie2010-07-151-0/+3
|
* rtp: Fix bracketing in pa_rtp_recv.Colin Guthrie2010-05-081-2/+2
| | | | | | | | | | The syntactically correct error meant that the timestamp was always marked as found and only the first header was checked. In the case where the timestamp was the first header, things would have worked as expected. Thanks to pino for reporting via bug refs #818
* jack: Prevent crash on jack server shutdownDavid Henningsson2010-05-082-6/+7
|
* thread: name all threads so that the names appear in /proc/$PID/task/$TID/commLennart Poettering2010-05-0314-14/+19
|
* Revert "Fix crash on jack server shutdown"Lennart Poettering2010-03-221-3/+3
| | | | | | This reverts commit e756467434f787d392c45aac1327768bcf0b610c. The patch is incomplete and not entirely correct.
* intended-roles: Do not pick monitor sources when doing automatic role-based ↵Colin Guthrie2010-03-171-1/+12
| | | | device selection
* Fix crash on jack server shutdownDavid Henningsson2010-03-151-3/+3
| | | | | | | On sink unlinking, existing sink inputs are moved, which in turn calls a get latency callback, which references the jack client. Therefore, make sure the sink is unlinked before the client is closed. Failure to do so might lead to SIGSEGV.
* Handle 'Digital Mic' as an 'Input Source'Daniel T Chen2010-03-121-0/+4
| | | | | | | BugLink: https://launchpad.net/bugs/533877 Some laptops have 'Digital Mic' exposed as an 'Input Source', e.g., Dell XPS 1330, so handle these, too.
* alsa: reset max_rewind/max_request while suspendingLennart Poettering2010-02-221-1/+10
|