Lennart Poettering
03aa91dea7
make sure we don't hit an assert when we issue two rewind requests in a
...
single iteration
Closes rhbz 472757.
2008-12-21 17:55:29 +01:00
Lennart Poettering
82f09b6d8f
Don't hit an assert when checking for idleness
...
Closes #398
2008-12-17 21:03:17 +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
Lennart Poettering
309bc71f07
fix invalid validity check
2008-10-21 18:22:28 +02:00
Lennart Poettering
b6ccea3064
add a comment that pa_sink_input_set_volume and module-flat-volume.c are related
2008-10-08 00:10:01 +02:00
Lennart Poettering
e053fa03f7
if the channel map was modified due to PA_SINK_INPUT_FIX_CHANNELS, remap the specified volume properly
2008-10-07 22:46:18 +02:00
Lennart Poettering
e1dbc75eb8
use pa_channel_map_init_extend() instead of pa_channel_map_init_auto() as channel map for sink inputs/source outputs in case no map is specified
2008-10-07 22:45:37 +02:00
Lennart Poettering
ae83483cf0
modernize a few checks
2008-10-07 22:44:43 +02:00
Lennart Poettering
72024cda54
when the volume is changed make sure we send out a subscription event
2008-10-07 22:43:00 +02:00
Lennart Poettering
624f220aa6
instead of resetting virtual_volume unconditionally on initialization, do so only when no volume was set before
2008-10-07 22:42:13 +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
aa4373962c
make sure we send a started messages when we are uncorking
2008-10-06 02:26:08 +02:00
Lennart Poettering
f2164023fd
Add new option to disable remixing from/to LFE and set it to on by default
2008-09-05 16:04:42 +03:00
Lennart Poettering
450fe170a5
fix up latency before calling into stream code, to make sure we don't ask for too much data to early
2008-08-29 01:20:25 +02:00
Lennart Poettering
b7026bf248
add a few more gcc warning flags and fix quite a few problems found by doing so
2008-08-19 22:39:54 +02:00
Lennart Poettering
d7b138daa2
fix uninitialized memory access
2008-08-03 23:21:51 +02:00
Lennart Poettering
06ab488f73
cork/uncork before we ask for the rewrite, to make sure the rewrite actually gets trhough
2008-06-27 00:28:17 +02:00
Lennart Poettering
eab1cb8df9
make sure to call process_rewind() under all circumstances before we do the next loop iteration
2008-06-26 02:56:00 +02:00
Lennart Poettering
1514d13835
split pa_memblockq_flush() into two flush commands, one which fixes up the read ptr, and one which fixes up the write ptr
2008-06-26 00:39:31 +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
86b9ef8c96
deal with a possibly failing pa_channel_map_init_auto() correctly
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2105 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-02-13 22:13:44 +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
f873a2a224
add a simple fully-automatic fully-linearupmixer/downmixer and enable it by default
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2044 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-11-11 02:30:59 +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
Pierre Ossman
8dc6214276
Revert r1404 and keep it on a development branch until it is fully tested.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1409 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-11-06 13:06:01 +00:00
Lennart Poettering
d210ebbb09
rework memory block management to be thread-safe and mostly lock-free.
...
pa_memblock is now an opaque structure. Access to its fields is now done
through various accessor functions in a thread-safe manner.
pa_memblock_acquire() and pa_memblock_release() are now used to access the
attached audio data. Why? To allow safe manipulation of the memory pointer
maintained by the memory block. Internally _acquire() and _release() maintain a
reference counter. Please do not confuse this reference counter whith the one
maintained by pa_memblock_ref()/_unref()!
As a side effect this patch removes all direct usages of AO_t and replaces it
with pa_atomic_xxx based code.
This stuff needs some serious testing love. Especially if threads are actively
used.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1404 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-09-26 23:50:56 +00:00
Lennart Poettering
e385d93e5a
remove all occurences of
...
pa_logXXX(__FILE__":
and replace them by
pa_logXXX("
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1272 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 21:38:40 +00:00
Lennart Poettering
0e436a6926
Rework memory management to allow shared memory data transfer. The central idea
...
is to allocate all audio memory blocks from a per-process memory pool which is
available as read-only SHM segment to other local processes. Then, instead of
writing the actual audio data to the socket just write references to this
shared memory pool.
To work optimally all memory blocks should now be of type PA_MEMBLOCK_POOL or
PA_MEMBLOCK_POOL_EXTERNAL. The function pa_memblock_new() now generates memory
blocks of this type by default.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1266 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-18 19:55:18 +00:00
Lennart Poettering
e0f7e8614c
split a validity check into two
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1249 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 19:53:35 +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
3aba099fc3
clean up event generation a little: suppress unnecessary events and generate new ones on owner change
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1212 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 02:19:36 +00:00
Lennart Poettering
ddc69fccb5
- don't call pa_sink_notify in pa_sink_input_new() because the virtual methods are not yet initialized at this time
...
- some minor cleanups
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1180 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-03 22:29:55 +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