summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-12-18sink: Process rewind requests also when suspended.stable-2.xTanu Kaskinen14-60/+57
When a rewind is requested on a sink input, the request parameters are stored in the pa_sink_input struct. The parameters are reset during rewind processing, and if the sink decides to ignore the rewind request due to being suspended, stale parameters are left in pa_sink_input. It's particularly problematic if the rewrite_bytes parameter is left at -1, because that will prevent all future rewind processing on that sink input. So, in order to avoid stale parameters, every rewind request needs to be processed, even if the sink is suspended. Reported-by: Uoti Urpala
2012-09-25Merge commit 'v2.1' into stable-2.xArun Raghavan0-0/+0
v2.1 is identical to 8c34ed7e3bc626fee51b5c07dcd38f8da6f42dd6 which was HEAD at the time of the 2.1 release, but with the top 2 commits in reverse order.
2012-07-19build: Bump sonameArun Raghavan1-1/+1
2012-07-19build: Fix distcheck failure on libwebrtc-utilArun Raghavan1-0/+1
Without -avoid-version, libtool creates a libwebrtc-util.so.0 and libwebrtc-util.so.0.0.0 which are not cleaned up by make uninstall, which in turn causes make distcheck to fail.
2012-07-19build: Fix distcheck failure on libwebrtc-utilv2.1Arun Raghavan1-0/+1
Without -avoid-version, libtool creates a libwebrtc-util.so.0 and libwebrtc-util.so.0.0.0 which are not cleaned up by make uninstall, which in turn causes make distcheck to fail.
2012-07-18build: Bump sonameArun Raghavan1-1/+1
2012-07-18build: Avoid libstdc++ dep for module-echo-cancel if possibleArun Raghavan1-3/+10
This moves out the webrtc bits into a small helper library to shield the rest of module-echo-cancel from being linked with a C++ linker. This is required because automake will _always_ link module-echo-cancel in C++ mode if any of its deps (even conditional ones) are in C++.
2012-07-05alsa-mixer: Add "Front Headphone Jack" (fixup)David Henningsson1-0/+4
I forgot half of the front headphone patch, i e, to hide the speaker output when the front headphone is connected. Thanks to Shih-Yuan Lee for noticing. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Conflicts: src/modules/alsa/mixer/paths/analog-output-speaker.conf
2012-07-05alsa-mixer: Add "Front Headphone" jackDavid Henningsson1-0/+3
Many desktops have headphone on the front and line outs on the back. Sometimes this means that the headphone is labelled "Front Headphone Jack", but the volume controls are only "Headphone Playback Volume", i e, without the "Front" prefix. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2012-07-05alsa-mixer: Always turn "Inverted Internal Mic" offDavid Henningsson1-0/+4
Some devices have inverted right channel, so when you add left and right, the result is silence, or very faint sound. In recent kernels (3.5, perhaps also 3.4) these are starting to be marked with a special "Inverted Internal Mic" capture switch. While we might want to add some reverse summing mechanism in the future, for now, we just turn the thing off to avoid the problem of recording silence. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2012-07-05alsa-mixer: Add special profiles for some laptops missing speaker and/or ↵David Henningsson6-0/+557
internal mic Several laptops have speaker ports, and/or internal mic ports, but we have no way of detecting that. So we make the port(s) always show up for these devices. BugLink: https://bugs.launchpad.net/bugs/946232 Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2012-07-03role-cork: Fix another minor leakArun Raghavan1-2/+8
Credit to David for finding this one.
2012-07-03role-cork: Fix incorrect check at deinitialisation timeArun Raghavan1-1/+1
2012-07-03role-cork: Fix a minor leakArun Raghavan1-2/+2
2012-07-03xen: add the HAVE_CONFIG_H macro guardDeng Zhengrong1-1/+3
2012-07-03alsa-source: add missing header 'signal.h'Eero Nurkkala1-0/+1
Compilation with -DDEBUG_TIMING fails due to a missing header: modules/alsa/alsa-source.c: In function 'check_left_to_record': modules/alsa/alsa-source.c:426:9: warning: implicit declaration of function 'raise' [-Wimplicit-function-declaration] modules/alsa/alsa-source.c:426:9: error: 'SIGTRAP' undeclared (first use in this function) Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2012-07-03alsa-sink: add missing header 'signal.h'Eero Nurkkala1-0/+1
Compilation with -DDEBUG_TIMING fails due to a missing header: modules/alsa/alsa-sink.c: In function 'check_left_to_play': modules/alsa/alsa-sink.c:453:9: warning: implicit declaration of function 'raise' [-Wimplicit-function-declaration] modules/alsa/alsa-sink.c:453:9: error: 'SIGTRAP' undeclared (first use in this function) Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2012-07-03bluetooth: Release transport when the pa_rtpoll_run loop finishes.Jarkko Suontausta1-3/+10
Based on a patch by Marko Ollonen.
2012-07-03udev: Don't use deprecated udev_get_*_path() functionsMarc-Antoine Perennou2-8/+5
[These symbols were removed in libudev.so.1.0.0. Replace them with hardcoded strings. -- heftig] Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2012-07-03once: Fix race causing pa_once to sometimes run twiceDavid Henningsson2-34/+17
There was a race in the existing code that could cause the pa_once code to be run twice, see: http://lists.freedesktop.org/archives/pulseaudio-discuss/2012-April/013354.html Therefore the existing implementation was rewritten to instead look like the reference implementation here: http://www.hpl.hp.com/research/linux/atomic_ops/example.php4 Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2012-07-03bluetooth: Fix crash on disconnectionFrédéric Danis1-7/+9
When a Bluetooth headset is connected only to HFP profile (not connected to A2DP) and host streams to it, a crash occurs if host disconnects. When HFP disconnects, audio thread will fail on POLLHUP then generate a message to set PA profile to Off before ending. If this message is managed before PA unload bluetooth device module, all works fine. But, if this message is managed during module unload, this finish by re-entrance in release code (stop_thread) and a crash. This fix prevents to process profile change when module is unloading.
2012-07-03util: use the return value of gethosid() as fallback, not the address of the ↵Lennart Poettering1-1/+1
function Yikes!
2012-07-03sink-input,source-output: Avoid unneccessary rate updatesArun Raghavan2-2/+4
This makes sure we only call sink/source update_rate() if the stream being woken up has a sample spec that doesn't match the corresponding device'. https://bugs.freedesktop.org/show_bug.cgi?id=49875
2012-07-03pacmd: Added --help and --version descriptions to the man page.poljar1-0/+18
The pacmd man page should show the available options. A simple description for the --version and --help option was added.
2012-05-11build-sys: Bump sonamev2.0Arun Raghavan1-1/+1
Double-bump since v1.99.2 got a bump but the commit never landed.
2012-05-11Correct spelling of PulseAudioPaul Menzel4-5/+5
• s,Pulseaudio,PulseAudio, • One last occurence of this “error” is in the French translation.
2012-05-11bluetooth: Fix crash due to usage of pa_bool_t instead of dbus_bool_tArun Raghavan1-2/+4
pa_bool_t and dbus_bool_t cannot be used interchangably since their size might (and do) vary. This caused a crash on some systems which was reported and root caused by: Aidan Thornton <makosoft@googlemail.com>. Ref: https://bugs.gentoo.org/show_bug.cgi?id=398097
2012-05-11alsa: Add support for sound cards with 4-channel input.Tanu Kaskinen2-0/+10
Changes in v2: - Call the mapping a generic 4-channel input mapping instead of a 4-channel mic array mapping. The mapping will be used also by sound cards that have two stereo input jacks, so in those cases talking about mic arrays is wrong. - Added a comment about using the "hw" device name. BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=45813
2012-05-11resampler: Add support for resamplers that consume less data than asked.Tanu Kaskinen1-56/+135
libsamplerate_resample() assumed that src_process() would always consume the whole input buffer. That was an invalid assumption leading to crashes. This patch adds a leftover memchunk for storing any non-consumed input. When pa_resampler_run() is called next time, the leftover is prepended to the new input. Changes in v3: - Make the calculations in pa_resampler_result() and pa_resampler_max_block_size() more readable and more correct. - Rework the leftover storing: instead of using a dedicated buffer for it, store it in the beginning of remap_buf. This can avoid some memory copying. (The idea was suggested by Wang Xingchao.) - Use a generic save_leftover() function instead of doing the leftover copying in the resampler implementation. - Use the leftover logic also with the speex and ffmpeg resamplers. [ed: dropped the speex bit since the API guarantees that it will consume everything -- Arun] Changes in v2: - If add_leftover() is called with zero-length input while the leftover length is non-zero, we don't try to acquire the input memblock. - Instead of taking a reference to the original input in libsamplerate_resample(), we copy the leftover data to a new memblock. This is done, because otherwise, if the input is one of the internal buffers, the data can get overwritten before reading it in add_leftover(). - Store add_leftover_buf size in bytes instead of samples (more convenient, but less consistent with other code). BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=47156
2012-05-11resampler: Use more descriptive buffer names.Tanu Kaskinen1-55/+63
2012-05-11resampler: Use pa_xnew0() to avoid manual zeroing.Tanu Kaskinen1-31/+19
2012-05-05pacmd: Added --help and --version options.poljar1-12/+90
All utilities should have the --help and --version command line options. These two were added to pacmd, also the goto label was changed from fail to quit like in the other utilities. BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=45030
2012-04-27echo-cancel: Clarify function call contexts.Tanu Kaskinen1-34/+45
2012-04-27echo-cancel: Fix memblockq length check.Tanu Kaskinen1-44/+42
In addition to changing "plen > u->blocksize" to "plen >= u->blocksize", I also removed one of the duplicated ifs.
2012-04-27echo-cancel: Drop the correct amount of samples when skipping.Tanu Kaskinen1-1/+1
2012-04-27doc: Add entry for correct spellingPaul Menzel1-0/+3
Due to the formatting of `README` the only occurence of PulseAudio in a text is capitalized. People reading `README` should at least see the correct spelling once. In contrast to reformat just add a spelling section as an easy solution. Since it is not that important the last place in the ordering might suffice.
2012-04-18sink/source.h: Clarify set_port commentDavid Henningsson2-4/+4
State which thread calls set_port in which scenario. Reported-by: Jyri Sasha <oku@iki.fi> Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2012-04-17pulse: Fix warning in introspect.h; minor rewording and punctuation.Peter Meerwald1-50/+50
2012-04-17pulse: Clarify proplist doxygen documentation.Peter Meerwald1-3/+3
2012-04-17core: Fix comments.Peter Meerwald2-3/+3
2012-04-17echo-cancel: Upper/lowercase in comment.Peter Meerwald1-2/+2
2012-04-17build: Fix spelling in src/Makefile.am.Peter Meerwald1-1/+1
2012-04-17dbus: Fix dbus argument type in iface-stream.c handle_move().Peter Meerwald1-1/+1
BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=48376 Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
2012-04-15alsa: Add the DTS/DCA mapping to extra-hdmi.conf too.Colin Guthrie1-0/+6
This is needed for 0b421f on Intel/NVidia hardware.
2012-04-12alsa-sink/source: Make sure volumes are synchronised after fast user switchingDavid Henningsson6-4/+73
Log in as user A, fast user switch to user B, let user B change port, volume or mute status, then switch back to user A. At this point we must make sure that the ALSA and PA volumes are synchronised by writing to the ALSA mixer when the ALSA device becomes available. BugLink: https://bugs.launchpad.net/bugs/915035 Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2012-04-10cli: Allow source-output volumes/mute to be set via CLIColin Guthrie2-5/+101
This should have been done a long time ago but it brings symmetry to the API
2012-04-10man: Document the cli inteface a little.Colin Guthrie7-31/+379
This just documents the cli interface syntax. Mostly a lift from http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/CLI with some minor editing and bringing up to date. Also document a few undocumented commands. Shuffle around the order in 'pacmd help' output to match the order in the new docs for consistency. https://bugs.freedesktop.org/show_bug.cgi?id=45029
2012-04-04alsa-sink/source: Really set volumes on port changeDavid Henningsson2-4/+14
If deferred volumes were activated, set_volume does not really set the volume, and is probably only meant to be called from the main thread. As we're currently really setting the port and the mute here (i e modifying ALSA), we should really modify the volume as well. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2012-04-04module-loopback: Reset process_msg callbacks in teardownDavid Henningsson1-0/+2
Make sure we can't be called into by remaining references to sink-inputs and source-outputs after we have unloaded, as that will likely lead to segfaults. Thanks to Tanu for providing valuable input on this patch. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2012-04-02loopback: Fix crash on error during initFrédéric Dalleau1-1/+2
If an error during pa__init() causes a jump to fail: u->asyncmsgq is not initialized.