Lennart Poettering
00797b8b6e
core: add a suspend cause flags field
2009-06-05 19:05:07 +02:00
Lennart Poettering
28069ef0f7
core: automatically add icons for headsets/headphones/speakers for devices
2009-05-13 01:00:39 +02:00
Jyri Sarha
35faedb6e8
core: Take samples from silence cache rather than write zeros
...
If the only stream to render from is muted take samples from the
silence cache. This should shrink memory/cache bandwidth. Again the
gain was not what I hoped for.
2009-05-09 00:06:47 +02:00
Jyri Sarha
d7b8947a5e
core: optimize pa_sink_render_full()
...
I have used this fix for quite a while and I am pretty confident about
it. However, the performance gain was not what I expected.
2009-05-08 23:59:16 +02:00
Lennart Poettering
7f767e5fe6
core: liberalize 99a6a4 a bit
...
While flags should generally be initialized by passing them to
pa_{sink|source}_new() we make an exception for the volume related flags
which may be initilized afterwards, but before _put().
2009-05-08 02:16:10 +02:00
Lennart Poettering
8d9c26e3b6
core: cache requested latency only when we are running, not while we are still constructing
2009-05-08 02:04:48 +02:00
Lennart Poettering
99a6a4742f
core: make sure we fix up flags/monitor flags already in pa_sink_new() instead of pa_sink_put()
2009-05-08 02:04:48 +02:00
Lennart Poettering
3766850c8b
core: introduce pa_{sink,source}_set_fixed_latency()
...
This allows us to forward the fixed latency directly from the sink to
the monitor source withut having to wait for pa_sink_put().
2009-05-08 02:04:48 +02:00
Lennart Poettering
fe8b10cc05
core: introduce new 'reference' volume for sinks
...
The reference volume is to be used as reference volume for stored stream
volumes. Previously if a new stream was created the relative volume was
taken relatively to the virtual device volume. Due to the flat volume
logic this could then be fed back to the virtual device volume.
Repeating the whole story over and over would result in a device volume
that would go lower, and lower and lower.
This patch introduces a 'reference' volume for each sink which stays
unmodified by stream volume changes even if flat volumes are used. It is
only modified if the sink volumes are modified directly by the user.
For further explanations see http://pulseaudio.org/wiki/InternalVolumes
2009-04-13 22:56:25 +02:00
Lennart Poettering
f7c229d8f9
core: add a seperate fixed_latency field for sinks/sources with fixed latency
2009-04-10 01:26:04 +02:00
Lennart Poettering
9ae8ca2c37
core: memory leak, fix ref counting when moving streams
2009-04-10 01:21:16 +02:00
Lennart Poettering
c32c6c833e
introduce relative_volume field in sink_input and make use of it on sink flat volume change
2009-04-08 03:49:16 +02:00
Lennart Poettering
c523b16d33
after propagating a sink volume change to the sink inputs recalculate their soft volumes
2009-04-07 04:47:58 +02:00
Lennart Poettering
93e14d3e62
we need to make our multiplications with linear values
2009-04-07 04:05:03 +02:00
Lennart Poettering
02686cce6d
reduce number of conversions to/from linear volumes
2009-04-07 04:04:19 +02:00
Lennart Poettering
e356a03ab2
If the sink volume is lowered to 0 and then increased again, make sure all stream volumes follow instead of staying at 0
2009-04-07 01:21:07 +02:00
Lennart Poettering
61b07768c2
add suspend_within_thread() callbacks to pa_sink_input/pa_source_output
2009-04-07 00:46:20 +02:00
Lennart Poettering
ce73e715c9
introduce pa_{sink|source}_get_latency_within_thread()
2009-04-05 02:46:38 +02:00
Lennart Poettering
649c982222
Use pa_source_set_max_rewind_within_thread() for updating the monitor source's max_rewind
2009-03-30 20:19:32 +02:00
Lennart Poettering
2c1eaa7593
copy latency flags from sink to monitor source
2009-03-25 16:30:28 +01:00
Lennart Poettering
892a83945e
simplify things and make sure timing setters can be called in most contexts
2009-03-25 00:33:35 +01:00
Lennart Poettering
44ca897769
introduce new flag that marks sinks/sources which can adjust the latency dynamically
2009-03-25 00:30:54 +01:00
Lennart Poettering
9151107cb9
get rid of 'default' min/max latencies, simplify things by just having absolute boundaries
2009-03-25 00:25:17 +01:00
Lennart Poettering
c64d8cbcc7
Allow calling pa_{sink|source}_update_proplist() without an actual proprlist
2009-03-24 21:17:55 +01:00
Lennart Poettering
2f9a784167
set request/rewind sizes only via accessor functions
2009-03-24 21:13:41 +01:00
Lennart Poettering
aa92ff408c
simplify latency range by not allowing stored 'wildcard' ranges anymore
2009-03-24 21:06:57 +01:00
Lennart Poettering
b3675c28fa
add functions that modules can call whenever they now the volume changed
2009-03-21 02:45:31 +01:00
Lennart Poettering
4ebdee5b29
deduce a proper icon for TV sets
2009-03-19 12:38:59 +01:00
Lennart Poettering
6427c70a85
try more things to get a proper icon for sinks/sources
2009-03-04 18:37:14 +01:00
Lennart Poettering
341f44fa24
fix handling of _suspend_all(), return first failure error code
2009-03-04 05:32:26 +01:00
Lennart Poettering
ecbc320a4c
make suspend state of monitor source follow the suspend state of the sink it belongs to
2009-03-04 05:32:19 +01:00
Lennart Poettering
946d07211b
document more closely from which context certain functions may be called
2009-03-04 02:51:30 +01:00
Colin Guthrie
86dee05aec
Use LGPL 2.1 on all files previously using LGPL 2
2009-03-03 20:23:02 +00:00
Lennart Poettering
671b927955
add logic for initializing a useful icon name
2009-03-01 21:38:27 +01:00
Lennart Poettering
928920c8b8
additional validity check
2009-02-19 03:58:52 +01:00
Lennart Poettering
1837a96e64
call _kill functions instead of _unlink since the latter should only be called be the stream implementor
2009-02-12 03:39:56 +01:00
Lennart Poettering
f0cc23d6e5
Merge commit 'elmarco/bt-wip'
2009-02-12 03:35:57 +01:00
Marc-André Lureau
86bec09fa8
pulsecore: add PA_CORE_HOOK_*_MOVE_FAIL
...
In case pa_*_move_all_fail(), it is nicer to let a module override the
default behavior to fallback on a different sink/source. (instead of
unlinking the sink_input/source_output)
2009-02-11 20:26:32 +02:00
Lennart Poettering
de86c6e3ad
add a 'volume factor' that is implicitly multiplied into the volume of a sink input without being visible to the outside
2009-02-05 01:22:05 +01:00
Lennart Poettering
162e43b306
make a few functions return void where the retval isn't used/never != 0
2009-02-03 03:11:31 +01:00
Lennart Poettering
e47d03dea4
implement PA_STREAM_FAIL_ON_SUSPEND logic
2009-02-03 02:23:46 +01:00
Lennart Poettering
2854afbb1b
fix soft_mute handling
2009-02-02 01:51:27 +01:00
Lennart Poettering
537424a9a9
reset rewind_requested when we enter suspend mode
2009-02-02 00:46:11 +01:00
Lennart Poettering
a9e9ab32a2
shortcut pa_sink_process_rewind() when no rewind is happenning and none was requested
2009-02-02 00:45:54 +01:00
Lennart Poettering
5fc11a0724
Fix a few sink/source calls when they are called in suspended state.
2009-02-02 00:45:00 +01:00
Lennart Poettering
8fbce6eb89
when determining the minimum volume of all sink inputs make sure to handle the case when there are no sink inputs correctly
2009-02-02 00:27:47 +01:00
Lennart Poettering
dbb8951a41
dump properties when we create a new sink or source
2009-01-30 02:25:49 +01:00
Lennart Poettering
64b0543588
when changing volume, store whether it is worth remembering or no
2009-01-27 23:40:03 +01:00
Lennart Poettering
d5f46e824e
move flat volume logic into the core. while doing so add n_volume_steps field to sinks/sources
2009-01-27 04:39:07 +01:00
Lennart Poettering
640d317df9
add functions to move all inputs of a sink away/similar for source outputs
2009-01-23 22:40:02 +01:00