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
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
61b07768c2
add suspend_within_thread() callbacks to pa_sink_input/pa_source_output
2009-04-07 00:46:20 +02:00
Maarten Bosmans
8bcb9c6910
various spelling fixes
2009-04-04 02:27:13 +02:00
Lennart Poettering
75a8d18285
pass destination source/sink when moving streams so that we can access them
2009-04-01 03:04:39 +02:00
Lennart Poettering
d04f3e1aef
Trigger move callback a little bit earlier so that no IO thread is running
2009-03-30 18:21:34 +02:00
Lennart Poettering
a998038ee2
introduce pa_sink_input_get_relative_volume()
2009-03-20 13:50:26 +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
823431e447
allow sending meta/policy events to clients
2009-02-12 03:18:05 +01:00
Lennart Poettering
f42afc4883
make return value of pa_{sink_input|source_output}_update_proplist() void
2009-02-05 04:08:18 +01: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
d802a76963
remove soft volume from pa_sink_input_new_info since it should be handled internally and automatically by the sink input
2009-02-04 18:34:08 +01:00
Lennart Poettering
08800c35b0
make a couple of functions return proper error codes
2009-02-03 03:14:20 +01:00
Lennart Poettering
e47d03dea4
implement PA_STREAM_FAIL_ON_SUSPEND logic
2009-02-03 02:23:46 +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
9ba408415c
store requested resampling method in a seperate field and use it when create a new resampler after a move
2009-01-27 00:52:28 +01:00
Lennart Poettering
29cb778dcc
move sink input/source output move functions into two parts so that we can start the move, delete the original sink, create a new sink, finish the move; similar for source outputs
2009-01-23 22:38:30 +01:00
Lennart Poettering
75119e91cd
add new dont_rewind_render flag to allow quick starts of newly created streams
2009-01-15 00:40:06 +01:00
Marc-André Lureau
2204bbebf2
core: add source, si, so proplist_update
2009-01-13 19:06:10 +02:00
Lennart Poettering
adc2973c8d
Implement new flags DONT_INHIBIT_AUTO_SUSPEND and START_UNMUTED
2008-10-26 19:32:04 +01:00
Lennart Poettering
358824b330
add new virtual function may_move_to to sink inputs/source outputs to allow modules to forbid certain connections
2008-10-21 18:24:45 +02:00
Marc-Andre Lureau
45412740b8
volume hooks
...
Signed-off-by: Lennart Poettering <lennart@poettering.net>
2008-10-07 01:54:30 +02:00
Lennart Poettering
d315dcf5d9
save a bit of memory
2008-08-18 17:46:57 +02:00
Lennart Poettering
add6c0361a
Rework module-combine to work with glitch-free core; add new max_request field to pa_sink
2008-06-20 22:32:41 +02:00
Lennart Poettering
8ae83d618e
get rid of svn $ keywords
2008-06-18 23:23:21 +03:00
Lennart Poettering
b27cc1d426
fix a bad memory access pulsecore/client.c
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2527 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-06-13 21:56:19 +00:00
Lennart Poettering
045c1d602d
merge glitch-free branch back into trunk
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2445 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-05-15 23:34:41 +00:00
Lennart Poettering
14a9b80afb
- Check process name when dealing with PID files
...
- Add new PA_STREAM_FIX_CHANNELS, FIX_RATE, FIX_FORMAT, DONT_MOVE, VARIABLE_RATES to pa_sream_flags_t adn implement it
- Expose those flags in pacat
- Add notifications about device suspend/resume to the protocol and expose them in libpulse
- Allow changing of buffer_attr during playback
- allow disabling for remixing globally
- hookup polkit support
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2067 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-21 01:30:40 +00:00
Lennart Poettering
a67c21f093
merge 'lennart' branch back into trunk.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1971 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-28 19:13:50 +00:00
Pierre Ossman
06211b7c8f
Add copyright notices to all relevant files. (based on svn log)
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1426 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-02-13 15:35:19 +00:00
Pierre Ossman
521daf6f0a
Huge trailing whitespace cleanup. Let's keep the tree pure from here on,
...
mmmkay?
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1418 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-01-04 13:43:45 +00:00
Lennart Poettering
a75e1ed9ef
implement hook_source_ouput_new. For this I modified the pa_source_output_new constructor to take a struct similar to what I already did for pa_sink_input_new()
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1250 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 19:55:17 +00:00
Lennart Poettering
72cf2118df
remove pa_sink_input::variable_rate field since it has been folded into pa_sink_input::flags
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1240 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:30:51 +00:00
Lennart Poettering
a621d90285
allow hooking into the process of creating playback streams. To implement this I modified the pa_sink_input_new() signature to take a pa_sink_input_new_data structure instead of direct arguments.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1237 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 16:19:56 +00:00
Lennart Poettering
af1b0317f6
comment which values in pa_{sink,source,sink_input,source_output} structures may be NULL
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1204 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 23:31:59 +00:00
Lennart Poettering
5e9295037f
* implement "hot" moving of playback streams between sinks (pa_sink_input_move_to()).
...
* optimize the adjusting of the volume in pa_sink_input_peek() a little
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1168 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-29 15:06:49 +00:00
Lennart Poettering
f1c46113ae
fold the seperate variable pa_sink_input::playing into pa_sink_input::state as state PA_SINK_INPUT_DRAINED. The following mappings hold:
...
old PA_SINK_RUNNING + playing set = new PA_SINK_RUNNING
old PA_SINK_RUNNING + playing not set = new PA_SINK_DRAINED
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1162 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-28 23:27:16 +00:00
Lennart Poettering
f44ba09265
big s/polyp/pulse/g
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1033 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-06-19 21:53:48 +00:00