| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
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>
|
| |
|
| |
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
This commit restores the functionality originally included in 65e807
by Leszek Koltunski.
|
|
|
|
| |
Previously, if work_done was false, we could conceivably not call snd_pcm_start().
|
|
|
|
|
| |
This new audio interface from Native Instruments has 2 stereo channels
for both input and output direction. This patch adds mappings for them.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
GCC gave a warning, because the pointer given to pa_modargs_get_value_u32() had
type size_t instead of uint32_t.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
40ms for the smoother window is too small. Increase the size to 4 seconds, like
we do for the sinks.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
|
|
|
|
|
| |
This reverts commit e756467434f787d392c45aac1327768bcf0b610c.
The patch is incomplete and not entirely correct.
|
|
|
|
| |
device selection
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
http://pulseaudio.org/ticket/778
|
|
|
|
|
|
|
|
|
|
|
|
| |
We need to resume audio devices even for streams that are created in
corked stat, so that the latency ranges of the audio device are known
during the initial latency negotiation. If we don't the latency
negotiation will be based on placeholder data and changed later on which
clients do not expect.
This should fix issues with Skype.
https://bugzilla.redhat.com/show_bug.cgi?id=554929
|
| |
|
|
|
|
|
| |
instead of coming up with pointless aliases, reuse the already established
names, for second headphones, and second speakers.
|
|
|
|
| |
https://bugzilla.redhat.com/show_bug.cgi?id=562216
|
|
|
|
| |
https://bugzilla.redhat.com/show_bug.cgi?id=558638
|
|
|
|
| |
As exposed by really old Microsoft USB sound systems
|
|
|
|
|
|
|
|
|
|
|
|
| |
not know anything about
All seeks/flushes that depend on the playback buffer read pointer cannot
be accounted for properly in the client since it does not know the
actual read pointer. Due to that the clients do not account for it at
all. We need do the same on the server side. And we did, but a little
bit too extreme. While we properly have not applied the changes to the
"request" counter we still do have to apply it to the "missing" counter.
This patch fixes that.
|
|
|
|
|
|
|
| |
The fact whether an ALSA card is a modem is stored in the SOUND_CLASS,
not the SOUND_FORM_FACTOR property. So read it from there.
Patch from Whoopie.
|
| |
|
|
|
|
|
|
|
|
|
| |
That way we should be able to make use of the nicer USB strings the USB
hw provides.
Fixes the issues pointed out in:
https://tango.0pointer.de/pipermail/pulseaudio-discuss/2010-January/006248.html
|
|
|
|
| |
http://pulseaudio.org/ticket/740
|
|
|
|
| |
Check every single pcm device of a card whether it is a modem.
|
|
|
|
|
| |
http://pulseaudio.org/ticket/681
https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/394500
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
As seen on some HDA chips (e.g. Fujitsu Siemens S6410)
Refs http://pulseaudio.org/ticket/772
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
When an GetProperties() reply arrives after we already deleted the
device structure for it make sure we don't accidentaly touch the
invalidated object.
https://bugzilla.redhat.com/show_bug.cgi?id=543205
|
|
|
|
| |
https://bugzilla.redhat.com/show_bug.cgi?id=552932
|