Lennart Poettering
c3df1ceb38
fix a PA_LLIST_HEAD_INIT invocation
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1261 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-17 20:03:38 +00:00
Lennart Poettering
a847f74ed0
add missing #include
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1260 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-17 20:03:09 +00:00
Lennart Poettering
99db0672c7
make PA_LLIST_HEAD_INIT thread safe
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1258 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-17 20:01:04 +00:00
Lennart Poettering
d182a0b1cb
minor optimization
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1251 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 20:43:22 +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
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
79cb80c574
implement hook_source_disconnect
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1248 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 19:53:18 +00:00
Lennart Poettering
8f91b1f4c4
define new hooks: hook_source_output_new, hook_source_disconnect
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1247 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 19:52:43 +00:00
Lennart Poettering
8180832898
properly implement a pa_sink_disconnect() hook
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1243 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:33:32 +00:00
Lennart Poettering
abbabd848a
ignore if we recieved a memory block for an invalid stream, since this might happen unwillingly due to the asychnronous nature of the protocol
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1241 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 17:31:58 +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
db3f561ec4
rework hook list stuff once again: change the callback prototype to recieve three data pointers: one to the data for the hook, once for the slot and once for the call
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1235 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 16:13:36 +00:00
Lennart Poettering
281125c727
rework hook list stuff again, and replace macros with real functins. We loose type safety but things are much cleaner now
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1234 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-13 01:43:34 +00:00
Lennart Poettering
82a913d73e
reall add type safe hook list
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1232 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 23:55:22 +00:00
Lennart Poettering
80d73dd21b
implement typeafe hook chain
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1231 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 23:35:44 +00:00
Lennart Poettering
7f70ca31a1
extend maximum sink/source name length, because HAL UDIs can get ridiculously long
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1230 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 17:59:10 +00:00
Lennart Poettering
02e083cbc4
test if sink->monitor_source is set before making use of it
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1228 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 17:06:39 +00:00
Lennart Poettering
b5207fc9ca
add pa_sink_used_by()/pa_source_used_by()
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1226 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 16:50:58 +00:00
Lennart Poettering
0547b0fd4a
there's no need to queue subscription events if noone is listening, hence don't do it!
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1218 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 15:08:53 +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
47d009afd6
rework subscription code: try to drop redundant queued events
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1211 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 02:18:24 +00:00
Lennart Poettering
f8e5f47e23
fix a compiler warning
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1210 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 02:16:47 +00:00
Lennart Poettering
e9d9356d11
add new macro PA_LLIST_INSERT_AFTER
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1209 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-12 02:16:12 +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
c90dd53268
* introduce new functions pa_sink_set_description() and pa_source_set_description() for changing the description of a sink/source
...
* allow sinks without monitor sources attached
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1203 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 17:53:34 +00:00
Lennart Poettering
539612a5c2
do not export name validity checking routes and apply them only to sink/source names, not sample names
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1199 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 16:58:21 +00:00
Lennart Poettering
576c4dd96a
rework name register a litle to only allow "valid" names.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1197 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-11 16:38:51 +00:00
Lennart Poettering
5fdc39dc26
wrap pa_source_output_move_to() in the native protocol
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1183 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-03 22:32:23 +00:00
Lennart Poettering
1c45061fe1
add new CLI command move-source-output as wrapper around pa_source_output_move_to()
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1182 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-03 22:31:35 +00:00
Lennart Poettering
2d00de5851
Implement pa_source_input_move_to() for moving record streams between sources
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1181 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-08-03 22:30:45 +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
785477ba93
add new native protocol function for moving sink inputs between sinks
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1176 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-31 21:54:46 +00:00
Lennart Poettering
304fcbb843
add new commands opcode for moving sink inputs and source outputs
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1175 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-31 21:54:20 +00:00
Lennart Poettering
ccf67d2988
deal properly with recursive module unloading
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1174 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-31 21:53:48 +00:00
Lennart Poettering
e2e94ca47c
fix bad memory access if a non-existing entry shall be removed from a pa_idxset by index
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1173 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-31 21:53:21 +00:00
Lennart Poettering
a1e8b0968b
add new CLI function "move-sink-input" as wrapper around pa_sink_input_move_to()
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1169 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-29 15:07:15 +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
4dd3b31825
free the memblockq if we decide not to play it
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1167 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-29 15:04:17 +00:00
Lennart Poettering
f15b4c7c70
if the memblockq is empty, return -1 in all cases
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1166 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-29 15:03:26 +00:00
Lennart Poettering
d1db037577
for the playing field of pa_timing_info use pa_sink_input::state == PA_SINK_INPUT_RUNNING. This means that this variable will now refer to the current state and not to the expected future state, which is probably more what clients expect.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1163 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-28 23:29:37 +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
12aa842174
introduce pa_play_memblockq() which creates a playback stream and passes the data from the memblockq to it. after that is done, frees the memblockq
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1161 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-28 22:52:28 +00:00
Lennart Poettering
0dea2237ed
introduce three virtual sink/source names: @DEFAULT_SINK@, @DEFAULT_SOURCE@, @DEFAULT_MONITOR@. Especially the latter is useful for connecting to the monitor source of the default sink.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1158 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-27 18:02:59 +00:00
Lennart Poettering
216bdd4859
split a few asserts
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1147 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-25 20:10:47 +00:00
Lennart Poettering
32444f0df3
split a few assert()s
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1146 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-25 20:10:30 +00:00
Lennart Poettering
c85351ba05
as a result of memory profiling with valgrind/massif: decrease default hash table size from 1024 to 127. the hashtables are sparsely filled most of the time, so there is no point in allocating to much memory by default.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1140 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-23 22:35:30 +00:00
Pierre Ossman
09e01afa1f
Get ACL:s to work on Win32.
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1134 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 23:21:57 +00:00
Lennart Poettering
90b521d73e
add missing #ifdef HAVE_CREDS (thanks, Flameeyes)
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1130 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 22:46:41 +00:00
Lennart Poettering
2683f25b97
some more FreeBSD compat from Flameeyes
...
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1129 fefdeb5f-60dc-0310-8127-8f9354f1896f
2006-07-20 22:44:38 +00:00