Commit graph

5190 commits

Author SHA1 Message Date
Jason Newton
493d8b2fb7 module-equalizer-sink: add latency of output_q and input_q to get latency calculation 2009-11-20 06:34:46 -08:00
Jason Newton
1178f61280 module-equalizer-sink: switch back to reference dsp implementation - cpu usage doesn't really change and there may be
a bug in the vectorized version
2009-11-20 06:34:46 -08:00
Jason Newton
c6c933b4ec module-equalizer-sink: (re)added output memblockq commented out timing debug statements 2009-11-20 06:34:46 -08:00
Lennart Poettering
9708ecd648 Merge branch 'master' of ssh://rootserver/home/lennart/git/public/pulseaudio 2009-11-20 01:02:01 +01:00
Lennart Poettering
9033140f18 rygel: fix itemCount property for sources
Fixes http://pulseaudio.org/ticket/721
2009-11-18 22:00:31 +01:00
Colin Guthrie
eb5562637b build-sys: Fix missing trailing slash in 14eaf2 2009-11-16 23:36:44 +00:00
Sjoerd Simons
14eaf245c6 build-sys: Make sure all alsa path config files are installed
While all alsa path configuration files were in EXTRA_DIST not all of them were
in in alsapaths_DATA. Fixed by only defining the list in one place
2009-11-15 01:13:02 +01:00
Colin Guthrie
dad36acea3 device-manager: Update docs version -> 0.9.20
Third time is a charm... maybe.
2009-11-11 17:24:57 +00:00
Daniel Mack
ed7642ebac Merge branch 'master' of git://0pointer.de/pulseaudio 2009-11-11 10:48:39 +01:00
Lennart Poettering
2294642762 core: make cpuid code compile cleanly with 32bit PIC 2009-11-11 04:50:32 +01:00
Lennart Poettering
d9b5bbca01 core: adjust volume only when there is actually a memory block
Fixes an assert that is hit in somne niche cases:

https://bugzilla.redhat.com/show_bug.cgi?id=533482
2009-11-11 04:18:10 +01:00
Wim Taymans
f3866f2635 protocol: use the right sample rate for sources
Use the correct sample rate for reporting about the timing.
2009-11-10 13:21:55 +01:00
Colin Guthrie
9e45f198d0 device-manager: Update docs version -> 0.9.20 2009-11-09 21:57:07 +00:00
Lennart Poettering
f202af17b7 ramping: minor cleanups 2009-11-05 22:58:15 +01:00
Lennart Poettering
4d62f159a7 Merge remote branch 'origin/merge-queue'
Conflicts:
	src/pulsecore/sink-input.c
	src/pulsecore/sink.c
2009-11-05 22:54:42 +01:00
Lennart Poettering
721e32b473 jack: never try to autoconnect to MIDI ports
Original patch supplied by 'adi'

http://pulseaudio.org/ticket/669
2009-11-05 05:18:10 +01:00
Lennart Poettering
38a03c1e4f man: fix build with --disable-manpages
http://pulseaudio.org/ticket/698
2009-11-05 05:08:50 +01:00
Vladimir Kokarev
7793da371b lirc,mmkvd: added module parameters volume_limit, volume_step
volume_limit sets maximum volume that can be set from the module
default is PA_VOLUME_NORM*3/2 (150%)
volume_step sets step in volume changing
default is PA_VOLUME_NORM/20
values are of raw pa_volume_t type
2009-11-05 04:57:15 +01:00
Vladimir Kokarev
d2c59354d5 volume: add pa_cvolume_inc_clamp function
added function to increase volume not exceeding specified limit
simply changed PA_VOLUME_MAX to 'limit' in pa_cvolume_inc
pa_cvolume_inc now calls pa_cvolume_inc_clamp with PA_VOLUME_MAX limit
2009-11-05 04:56:47 +01:00
Lennart Poettering
53b046d5c9 alsa: disable timer-based scheduling inside a VM
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
2009-11-05 03:23:08 +01:00
Lennart Poettering
c079ceeba0 daemon: during startup say whether we run in a VM 2009-11-05 03:22:48 +01:00
Lennart Poettering
642c69bed8 core-util: add call to detect if we are called from within a VM 2009-11-05 03:22:15 +01:00
Lennart Poettering
19516d4e7f alsa: introduce more standard path names 2009-11-05 03:21:10 +01:00
Lennart Poettering
83b181f92a alsa: cover 'Analog Output' control
http://pulseaudio.org/ticket/702
2009-11-04 00:15:47 +01:00
Daniel Mack
21ffcd55a5 Merge branch 'master' of git://0pointer.de/pulseaudio 2009-11-02 18:09:57 +01:00
Lennart Poettering
7938442f77 Merge remote branch 'phish3/master' 2009-10-31 03:49:02 +01:00
Lennart Poettering
6839ef6874 alsa: create a seperate mixer path for Speaker elements
On some cards line-out is independant of Sepaker and it is a good idea
to cover that so that they can independantly be activated.

https://bugzilla.redhat.com/show_bug.cgi?id=520884
2009-10-31 03:43:42 +01:00
Lennart Poettering
73a4f4fdbc alsa: leave other headphone control enabled if possible 2009-10-31 03:42:42 +01:00
Lennart Poettering
591ade1aca alsa: lower priority for Headphone2 path 2009-10-31 03:41:21 +01:00
Lennart Poettering
73d9d317b2 alsa: cover Input Source:AUX IN
As seen on some HDA chips:

https://bugzilla.redhat.com/attachment.cgi?id=359804
2009-10-31 03:25:32 +01:00
Lennart Poettering
220ac0a61a alsa: cover Headphone2 mixer element
As seen on some drivers:

https://bugzilla.redhat.com/show_bug.cgi?id=498612
2009-10-31 03:10:00 +01:00
Lennart Poettering
430e8e2ee5 alsa: cover 'Digital Input Source' element
As used by some HDA devices:

https://bugzilla.redhat.com/attachment.cgi?id=365290
2009-10-31 02:56:57 +01:00
Lennart Poettering
3e115a96b0 alsa: cover Mic Jack Mode element
As used by some HDA chips:

https://bugzilla.redhat.com/attachment.cgi?id=366816
2009-10-31 02:52:35 +01:00
Lennart Poettering
8e94f65348 daemon: make sure pa has its own session and process group, but is not its leader so that we cannot acquire a tty ever 2009-10-31 02:43:47 +01:00
Daniel Mack
c4e276edbd Merge branch 'master' of git://0pointer.de/pulseaudio 2009-10-31 02:16:14 +01:00
Lennart Poettering
2dc37e1214 bluetooth: do not hand out access to devices that are not fully configured yet 2009-10-31 02:05:54 +01:00
Daniel Mack
b83d7a27ce configure.ac: enable check for CoreAudio 2009-10-31 02:00:58 +01:00
David Yoder
5c57650769 daemon: realpath segfault fix
Lennart,

Apparently I was debugging this at the same time as you. I can't figure out
why my Fedora 11 install with glibc-2.10 has a glibc realpath that doesn't
match the gnu documentation and returns null. But it does.

Your commit aa8ce5bb9b almost fixed my
problem, but it needs a tweak.

Thanks,
David Yoder
2009-10-31 01:56:59 +01:00
Daniel Mack
542fa468c2 Mac OS X: add semaphore implementation
On Wed, Sep 16, 2009 at 11:57:04PM +0200, Lennart Poettering wrote:
> On Wed, 16.09.09 15:15, Daniel Mack (daniel@caiaq.de) wrote:
>
> > +    s = pa_xnew(pa_semaphore, 1);
> > +    MPCreateSemaphore(UINT_MAX, value, &(s->sema));
> > +    pa_assert(s->sema != 0);
>
> Hmm, I'd prefer if the ret val of MPCreateSemaphore() would be checked
> here.
>
> Also I find it a bit weird checking for s->sema, though not
> initializing it to 0 in the beginning. If the call actually failed,
> then the assert will check uninitialized memory. Also, comparing
> pointers with 0 sucks. That should be NULL.
>
> Given that this can not realisitically fail, only in OOM or OOM-like
> situations in which case we abort anyway it mght be enough just writing:
>
> pa_assert_se(MPCreateSemaphore(UINT_MAX, value, &s->sema) == 0);
>
> (Assuming that success is signalled by retval == 0 on MacOSX)
>
> > +void pa_semaphore_free(pa_semaphore *s) {
> > +    pa_assert(s);
> > +    MPDeleteSemaphore(s->sema);
>
> Same here.
>
> > +    pa_xfree(s);
> > +}
> > +
> > +void pa_semaphore_post(pa_semaphore *s) {
> > +    pa_assert(s);
> > +    MPSignalSemaphore(s->sema);
>
> And here.
>
> > +}
> > +
> > +void pa_semaphore_wait(pa_semaphore *s) {
> > +    pa_assert(s);
> > +    /* should probably check return value (-ve is error), noErr is ok. */
> > +    MPWaitOnSemaphore(s->sema, kDurationForever);
>
> And here.

Ok, done. See the patch below.

Daniel

>From 26df2fbae6d9215a3ae084876fb5f79e4d9cf4f0 Mon Sep 17 00:00:00 2001
From: Kim Lester <kim@dfusion.com.au>
Date: Wed, 16 Sep 2009 09:23:39 +0800
Subject: [PATCH] Mac OS X: add semaphore implementation
2009-10-31 01:34:04 +01:00
Daniel Mack
b04fe9b516 Wrap clock_gettime and friends
On Wed, Sep 16, 2009 at 11:48:58PM +0200, Lennart Poettering wrote:
> On Wed, 16.09.09 15:15, Daniel Mack (daniel@caiaq.de) wrote:
>
> > From: Kim Lester <kim@dfusion.com.au>
> >
> > OS X does not define clockid_t or clock_gettime() and friends.
> > Add a wrapper to fix this.
>
> Hmpf. I am not particularly happy with this. This adds a lot of
> unnecessary compat code. We don't actually need implementations of
> clock_getres(). All we need is some kind of check whether system
> timers are accurate or whether they are rounded up to scheduling
> slices. On Linux we do that check with clock_getres(), but all the
> information it returns is actually not intertesting at all. We just
> check if this is below some trheshold, that's all.
>
> clock_settime() we don't use at all! We shouldn't carry compat code
> for that.
>
> And clock_gettime we don't really need either. We need some kind of
> accurate system timers (preferably monotonic), and on Linux we use
> clock_gettime() for that. But we already have a fallback there for
> gettimeofday().
>
> Or in other words, the current APIs pa_rtclock_get(),
> pa_rtclock_hrtimer() is supposed to be the abstract API that has
> different backends on different systems. I'd very much prefer if any
> MacOS specific code would simply be plugged in there instead of
> creating various new abstraction interfaces!

Ok - what about the version below? I don't particularily like the

Daniel

>From 9f0a051953ec354ccdb8aa44a9845c408b26ae0b Mon Sep 17 00:00:00 2001
From: Kim Lester <kim@dfusion.com.au>
Date: Wed, 16 Sep 2009 14:40:01 +0800
Subject: [PATCH] Implement pa_rtclock_get() and pa_rtclock_hrtimer() for Darwin

OS X does not define clockid_t or clock_gettime() and friends.
Add wrappers to fix this. Based on a patch from Kim Lester
<kim@dfusion.com.au>.
2009-10-31 01:33:13 +01:00
Leszek Koltunski
65e8078a3b X11: attach X11 properties to Screen, not Display 2009-10-30 05:24:41 +01:00
Lennart Poettering
366ab9633b git: ignore kde related files 2009-10-30 05:20:00 +01:00
Wim Taymans
056930cbcd svolume: fix MMX error
We need to sign extend the lower part of the multiplication before adding it to
the higher part. Makes -1 * 0xffff work again.
2009-10-30 05:09:15 +01:00
Wim Taymans
8a49514f74 sink: simplify silence checks 2009-10-30 05:09:05 +01:00
Lennart Poettering
aa8ce5bb9b daemon: don't crash if pa_realpath() fails 2009-10-30 05:08:48 +01:00
Lennart Poettering
a82c6b0cd5 socket-util: drop redundant casts 2009-10-30 04:55:13 +01:00
Lennart Poettering
75f7a971db socket-util: allocate at least sizeof(sockaddr_storage) space 2009-10-30 04:54:55 +01:00
Lennart Poettering
168be3830a use pa_fopen_cloexec() where applicable 2009-10-30 04:54:19 +01:00
Lennart Poettering
88b72958be tdb: use O_CLOEXEC if available 2009-10-30 04:53:15 +01:00
Lennart Poettering
752727a13d core-util: introduce pa_fopen_cloexec() 2009-10-30 04:20:24 +01:00