Lennart Poettering
24e582808c
source: rework volume handling
...
- drop the 'virtual_' prefix from s->virtual_volume since we don't
distuingish between reference and real volumes for sources
- introduce an accuracy for source volumes: if the hardware can control
the volume "close enough" don't necessarily adjust the rest in
software unless it is beyond a certain threshold. This should save a
little bit of CPU at the expensive of a bit of accuracy in volume
handling.
- other minor cleanups
2009-08-19 01:35:43 +02:00
Lennart Poettering
2838b78e59
macro: extend comments a bit
2009-08-19 01:03:09 +02:00
Lennart Poettering
8f928b2e57
macro: simplify page/word alignment macros a bit
2009-08-17 19:17:10 +02:00
Lennart Poettering
fe3a21f6a5
macro: add PA_ROUND_UP/PA_ROUND_DOWN macros
2009-08-17 19:15:33 +02:00
Lennart Poettering
01e4b61a91
aupdate: implicitly call _write_swap() if it wasn't called explicitly
2009-08-16 02:02:51 +02:00
Lennart Poettering
8dd0d871a7
core: add to FIXMEs
2009-08-16 00:45:56 +02:00
Lennart Poettering
4c29ba9c33
modules: add various checks to avoid selecting objects that are not linked or in another unclear state
2009-08-16 00:45:23 +02:00
Lennart Poettering
011add1c83
thread-mq: do final q flush only when we aren't dispatching anyway
2009-08-15 22:23:42 +02:00
Lennart Poettering
0c20e740f6
asyncmsgq: introduce pa_asyncmsgq_dispatching()
2009-08-15 22:22:57 +02:00
Lennart Poettering
0c08dbd9b9
core: introduce pa_{sink|source}_update_flags()
2009-08-15 03:41:13 +02:00
Juho Hämäläinen
ea5cdcbe52
database: simple hashmap based database implementation
2009-08-15 02:07:00 +02:00
Lennart Poettering
d9e4605e09
hook-list: make use of PA_LLIST_FOREACH
2009-08-15 00:55:31 +02:00
Lennart Poettering
d7d86e32dd
native-protocol: downgrade volume change log messages
2009-08-15 00:54:51 +02:00
Lennart Poettering
3c271ae060
core: document difference between IO and main thread view on requested latency
2009-08-15 00:54:25 +02:00
Lennart Poettering
c6080d8c61
core: don't update latency range if not changed
2009-08-15 00:54:02 +02:00
Lennart Poettering
3f9c67a7fb
core: call pa_sink_get_latency_within_thread() instead of going directly via process_msg()
2009-08-15 00:52:50 +02:00
Lennart Poettering
350a2bc846
core: make fixed latency dynamically changeable
...
This of course makes the name 'fixed' a bit of a misnomer. However the
definitions are now like this:
fixed latency: the latency may change during runtime, but is solely
controlled by the backend, the client has no influence.
dynamic latency: the latency may change during runtime, influenced by
the requests of the clients.
i.e. fixed vs. dynamic is from the perspective of the client.
2009-08-15 00:48:14 +02:00
Lennart Poettering
4eb59fb90e
core: move rtpoll to thread_info sub structure
2009-08-15 00:26:00 +02:00
Lennart Poettering
58d441f7ea
log: place more rate limit invocations
2009-08-15 00:16:25 +02:00
Lennart Poettering
e4db56bf07
core: split of FAIL_ON_SUSPEND into KILL_ON_SUSPEND and NO_CREATE_ON_SUSPEND
2009-08-15 00:12:53 +02:00
Lennart Poettering
e53d2fc6b5
native: handle moving() callback with NULL destination properly
2009-08-15 00:05:17 +02:00
Lennart Poettering
0989be13f6
core: introduce pa_{sink_input|source_output}_fail_move()
2009-08-15 00:03:50 +02:00
Lennart Poettering
72d2540e8d
protocol-native: log explicitly each time a client triggers a volume change
2009-08-14 19:31:05 +02:00
Lennart Poettering
fecd0dc801
resampler: round up when estimating input/output sizes
2009-08-14 04:21:09 +02:00
Lennart Poettering
9e21182e01
thread-mq: never drop queued messages for the main loop
...
Previously we might have dropped messages from IO trheads to the main
thread. This tuend out to be problematic since this cause SHM release
messages to be lost. More visibly however this could cause playback
freezing when moving streams between sinks and removing the old sink
right away.
2009-08-14 04:18:28 +02:00
Lennart Poettering
446fb2c9fe
asyncmsgq: add pa_asyncmsgq_flush() call
2009-08-14 04:17:48 +02:00
Lennart Poettering
a42c597f0a
memblockq: add pa_memblockq_get_maxrewind() API
2009-08-14 04:16:28 +02:00
Lennart Poettering
b0cabfe16b
shm: bump shm size limit to 1GB
2009-08-14 04:14:35 +02:00
Lennart Poettering
5ee4069e9e
core: add functions to query max_rewind/max_request values from streams
2009-08-13 02:17:24 +02:00
Lennart Poettering
9a95fe49c8
core: add assert macros for verifying calling context
...
This adds pa_assert_io_context() and pa_assert_ctl_context() in addition
to a few related macros. When called they will fail when the current execution
context is not IO resp. not control context. (aka 'thread' context vs.
'main' context)
2009-08-13 02:14:19 +02:00
Lennart Poettering
17d57415f5
start-child: clean up child environment a bit better
2009-08-12 21:43:06 +02:00
Lennart Poettering
286ab2f193
memblock: rate limit 'Pool full' message
2009-08-12 21:40:38 +02:00
Lennart Poettering
ef176ecb62
core-util: move personality resetting into core-util
2009-08-12 21:36:52 +02:00
Lennart Poettering
8998cba683
conf: add pa_config_parse_not_bool() for parsing inverse boolean configuration options
2009-08-12 20:14:31 +02:00
Lennart Poettering
7d4916379b
ladspa/remap: make sure we process all requested rewinds unconditionally
...
In some situations a rewind request travelling downstream might be
optimized away on its way and an upstream rewind processing might never
come back. Hence, call _process_rewind() before each _render()just to
make sure we processed them all.
2009-08-07 23:58:45 +02:00
Lennart Poettering
51b3899348
core: save volume/mute changes coming from the hardware automatically
...
Volume changes coming from the lower layers are most likely changes
triggered by the user, so let's save them automatically.
2009-08-07 23:55:06 +02:00
Lennart Poettering
ff52588c7b
smoother: readd #ifdef protection
2009-08-05 03:52:15 +02:00
Lennart Poettering
277822053c
autospawn: if creating the lock file fails, pass error code cleanly back to main process
...
This makes sure PA clients don't hang if $HOME is for some reason
unsuitable for autospawn lockfiles.
Closes #539
2009-08-01 03:10:19 +02:00
Lennart Poettering
49fd8ee72e
core-util: replace remaining fixed size destination string functions by _malloc() versions
...
This helps portability to GNU/Hurd.
Patch originally from Samuel Thibault but modified.
Closes ticket #546
2009-08-01 02:03:22 +02:00
Lennart Poettering
c6ea9fecc9
core-util: rework pa_strlcpy() to not rely on strncpy()
...
strncpy() is very slow since it resets the entire destination buffer.
Replace usage of strncpy by memcpy().
2009-08-01 02:01:58 +02:00
Lennart Poettering
e5c2256e36
pipe: replace PIPE_BUF macro pa pa_pipe_buf call
...
This should help portability to platforms that lack PIPE_BUF. Based on a
patch from Samuel Thibault.
See ticket #546
2009-08-01 01:59:58 +02:00
Lennart Poettering
5efb07281d
alsa: throw timing data away after device resume
2009-07-24 20:13:52 +02:00
Lennart Poettering
5e24b6dff5
memblock: try to hit an assert earlier when ref counting doesn't work
2009-07-24 15:49:22 +02:00
Lennart Poettering
5a0ef5fd13
daemon: replace colons by dash in per-machine directory names for compat with weird filesystems
2009-07-23 19:12:53 +02:00
Lennart Poettering
88d5749f6a
Merge branch 'master' of ssh://rootserver/home/lennart/git/public/pulseaudio
...
Conflicts:
src/daemon/main.c
2009-07-23 15:18:06 +02:00
Lennart Poettering
3d6278bc31
Merge commit 'flameeyes/osx'
2009-07-23 15:13:29 +02:00
Wim Taymans
3b01d3a53f
protocol-native: use the right samplerate
...
The render_memblockq is expressed in the sample_spec of the sink, not of the
particular stream before resampling.
2009-07-23 13:57:42 +02:00
Lennart Poettering
0225ef68f2
memtrap: clarify that we are not interested in the return value of write()
2009-07-20 15:50:02 +01:00
Diego Elio 'Flameeyes' Pettenò
d18eb61bd2
Again make sure that the wait() definition is not shadowed.
...
Rename the parameter in pa_asyncmsgq_get() to wait_op.
2009-07-17 21:05:49 +02:00
Lennart Poettering
7dabe051cd
memtrap: properly lock access to memtrap changer
2009-07-01 20:22:38 +02:00