summaryrefslogtreecommitdiffstats
path: root/src/modules/alsa
Commit message (Collapse)AuthorAgeFilesLines
...
* build-sys: Replace dummy Makefiles with proper Makefile.am'sColin Guthrie2010-12-058-4/+80
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* alsa-sink: take base volume into account when applying hw volumeJuho Hämäläinen2010-12-011-2/+8
| | | | | | | 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>
* 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
* 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: Print dB values in addition to percentages in debug messages.Tanu Kaskinen2010-11-192-17/+46
| | | | | | | 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< --
* alsa: Sprinkle some PA_UNLIKELYs around error checksArun Raghavan2010-11-181-11/+10
| | | | | This just adds a few PA_UNLIKELY macros around some error paths in frequently called code.
* alsa: remove redundant call to snd_pcm_nonblock()Pierre-Louis Bossart2010-11-161-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-162-0/+86
|
* daemon-conf: Add sync volume parameters to daemon-confJyri Sarha2010-10-161-0/+1
| | | | | | Signed-off-by: Jyri Sarha <jyri.sarha@nokia.com> Reviewed-by: Tanu Kaskinen <tanu.kaskinen@digia.com> Reviewd-by: Colin Guthrie <cguthrie@mandriva.org>
* alsa: Take syncronized HW volume infra into use for alsa-sinkJyri Sarha2010-10-166-25/+246
| | | | | | Signed-off-by: Jyri Sarha <jyri.sarha@nokia.com> Reviewed-by: Tanu Kaskinen <tanu.kaskinen@digia.com> Reviewd-by: Colin Guthrie <cguthrie@mandriva.org>
* 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: Set the rewind safeguard proportionally to sample specColin Guthrie2010-09-141-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-mixer: add profile for Traktor Kontrol S4Daniel Mack2010-09-122-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-092-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-094-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-071-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: 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-sink/source: Use the "namereg_fail" module argument.Tanu Kaskinen2010-08-302-2/+28
| | | | | | | | | This allows the name registry to mangle the names of auto-detected sinks and sources to be unique, which makes it possible to load multiple identical sound cards using module-udev-detect. At least for now the module argument can only be passed through module-alsa-card.
* alsa-sink: Get rid of a compiler warning regarding rewind_safeguard type.Tanu Kaskinen2010-08-241-2/+2
| | | | | GCC gave a warning, because the pointer given to pa_modargs_get_value_u32() had type size_t instead of uint32_t.
* module-alsa-card: New argument: namereg_fail.Tanu Kaskinen2010-08-241-0/+15
| | | | | | This is added so that module-udev-detect can load multiple module-alsa-card instances with the same card name - forcing namereg_fail to false allows the name registry to mangle the card names to be unique.
* 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.
* AC3 passthrough supportPierre-Louis Bossart2010-08-121-0/+7
| | | | | | | | | | | | Second version after Tanu's feedback TODO: - notify client that volume control is disabled - change sink rate in passthrough mode if needed - automatic detection of passthrough mode instead of hard coded profile names Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
* alsa: add missing iec958 files from previous commitPierre-Louis Bossart2010-07-152-0/+38
|
* alsa: fix mixer profiles, add passthrough configPierre-Louis Bossart2010-07-132-6/+12
| | | | Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
* alsa: disable rewinds when using ALSA pluginsPierre-Louis Bossart2010-07-131-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-131-0/+3
|
* alsa: Fix log output to inform about positive base volumes correctly.Tanu Kaskinen2010-05-102-8/+2
| | | | | | | Positive base volume can happen, if the alsa volume range has been limited. For example, in an embedded environment it may be known that the sound device is capable of louder output than what the speakers can handle, so setting the max volume below 0 dB makes sense.
* alsa-mixer: Replace erroneous PA_ALSA_VOLUME_IGNORE with ↵Tanu Kaskinen2010-05-101-1/+1
| | | | | | | PA_ALSA_ENUMERATION_IGNORE. This fix doesn't have any concrete effect, because the two constants have the same value.
* alsa-mixer: Use pa_xfree() instead of pa_xstrdup() for freeing a string.Tanu Kaskinen2010-05-101-1/+1
|
* alsa: Handle 'Digital Mic' as an 'Input Source'Daniel T Chen2010-05-081-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.
* add rewind-safeguard parameterPierre-Louis Bossart2010-05-082-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.
* thread: name all threads so that the names appear in /proc/$PID/task/$TID/commLennart Poettering2010-05-072-2/+2
|
* alsa: don't make use of tsched related variables when tsched is disabledLennart Poettering2010-02-232-22/+40
|
* alsa: reset max_rewind/max_request while suspendingLennart Poettering2010-02-221-1/+10
|
* alsa-util: strip spaces from ALSA card/pcm namesLennart Poettering2010-02-211-5/+7
| | | | http://pulseaudio.org/ticket/778
* alsa: use default output port namesLennart Poettering2010-02-215-3/+5
| | | | | instead of coming up with pointless aliases, reuse the already established names, for second headphones, and second speakers.
* alsa: cover "Internal Mic" elementsLennart Poettering2010-02-219-0/+98
| | | | https://bugzilla.redhat.com/show_bug.cgi?id=562216
* alsa: cover 'Shared Mic/Line in', 'Analog Source'Lennart Poettering2010-02-211-0/+25
| | | | https://bugzilla.redhat.com/show_bug.cgi?id=558638
* alsa: cover "Desktop Speaker" mixer elementsLennart Poettering2010-02-219-8/+131
| | | | As exposed by really old Microsoft USB sound systems
* alsa: cover bass boost mixer elementLennart Poettering2010-02-092-0/+13
| | | | http://pulseaudio.org/ticket/740
* alsa: Cover the 'Int Mic Boost' element.Colin Guthrie2010-02-091-0/+9
| | | | | | | | | | This is not 100% ideal as we have not way to tie specific boosts to specific inputs and this particular chipset (as noted in #772) appears to support just that. For the time being incorporate it into the normal boost logic. See http://pulseaudio.org/ticket/772
* alsa: cover Input Source:Int MicColin Guthrie2010-02-091-0/+4
| | | | | As seen on some HDA chips (e.g. Fujitsu Siemens S6410) Refs http://pulseaudio.org/ticket/772
* alsa: ignore volume changes from the hw if we are not on the active consoleLennart Poettering2010-02-092-0/+6
|
* alsa: add profile set for M-Audio FastTrack Pro USBDavid Kågedal2010-01-052-0/+86
|
* alsa: fix minor sampling rate deviations before adjusting the buffer sizeLennart Poettering2009-11-201-7/+9
|
* alsa: fix log output when the audio device refuses to give us again the same ↵Lennart Poettering2009-11-202-2/+2
| | | | period settings we had before
* alsa: disable timer-based scheduling inside a VMLennart Poettering2009-11-054-8/+28
| | | | | | | | | | | | | | | In virtual machines sound card clocks and OS scheduling tend to become unreliable, adding various 'uneven' latencies. The adaptive algorithm that handles drop-outs does not handle it this well: in contrast to drop-outs on real machines that are evenly distributed, small and can easily be encountered via the adpative algorithms, drop-outs in VMs tend to happen abruptly, and massively, which is not easy to counter. This patch simply disables timer based scheduling in VMs reverting to classic IO based scheduling. This should help make PA perform better in VMs. https://bugzilla.redhat.com/show_bug.cgi?id=532775
* alsa: introduce more standard path namesLennart Poettering2009-11-051-10/+14
|