Commit graph

1632 commits

Author SHA1 Message Date
Lennart Poettering
57734ec414 hook into move operations for resuming/suspending devices appropriately
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1643 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 20:31:08 +00:00
Lennart Poettering
44b82a1925 Add 'via DMA' to sink/source description if device is accessed with mmap()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1642 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 20:30:21 +00:00
Lennart Poettering
e71a34762e restore the ability move record streams between sources
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1641 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 20:29:42 +00:00
Lennart Poettering
50e014e7a9 use single array for storing pa_core hook lists, add sink state changed hook, drop NO_HOOKS flags for sink inputs/source outputs, listen for resume events in module-suspend-on-idle.c
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1640 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 19:08:06 +00:00
Lennart Poettering
a3cd8002b5 port oss driver to make use of the default fragment sizes as defined in pa_core: store in the sink/source description whether mmap is used; if mmap() fails, fall back to UNIX read/write mode instead of bailing out immediately
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1639 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 17:09:07 +00:00
Lennart Poettering
b71dde0e35 make sure that the device access event sound is only generated once
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1638 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 16:51:21 +00:00
Lennart Poettering
447c4a5327 deal with messages properly which are recieved after destruction of a stream
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1637 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 16:08:20 +00:00
Lennart Poettering
107b23d202 fix module-hal when no api= argument is specified
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1636 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 16:07:38 +00:00
Lennart Poettering
c1c59b4675 add proper refcounting to pa_asyncmsgq objects, to allow destruction from the dispatched callbacks
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1635 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 16:01:25 +00:00
Lennart Poettering
f7b707b954 allow destruction of pa_fdsem object that are still in 'poll' state
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1634 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 16:00:02 +00:00
Lennart Poettering
e1100b5b20 modify alsa drivers to make use of new global fragment setting variables
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1633 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 15:59:02 +00:00
Lennart Poettering
793f750429 fix default device naming and fix api selection code
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1632 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 15:58:15 +00:00
Lennart Poettering
a7a5f43f67 modernization
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1631 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 15:57:21 +00:00
Lennart Poettering
e2a10de756 allow setting the default sample and fragment settings from the config file
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1630 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 15:56:57 +00:00
Lennart Poettering
b44ce9e4e0 add default fragment settings variables to pa_core
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1629 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 15:56:06 +00:00
Lennart Poettering
59c9ed5473 move pstream item allocation to pa_flist
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1628 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-11 00:10:29 +00:00
Lennart Poettering
d2fed9d419 make revoke/release thread safe in the native protocol
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1627 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 23:42:17 +00:00
Lennart Poettering
ff4814cac7 add callbacks for the revoke/release stuff, so that we can make this thing thread-safe
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1626 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 23:41:50 +00:00
Lennart Poettering
4e145b676a if no thread-mq is attached to the current thread, return an error, don't hit an assert
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1625 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 23:40:05 +00:00
Lennart Poettering
3eae9038eb make use of pa_thread_mq everywhere
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1624 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 22:02:39 +00:00
Lennart Poettering
b3f1a133f1 minor update
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1623 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 22:01:54 +00:00
Lennart Poettering
f7171e86ca Wrap two pa_asyncmsq in a new pa_thread_mq object for bidirectional, lock-free communication between a main loop and a thread
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1622 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 22:01:17 +00:00
Lennart Poettering
aff77c162b update thread test to use pa_once instead of pa_once_t
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1621 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 22:00:22 +00:00
Lennart Poettering
27f75a5a1e Rename pa_once_t to pa_once
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1620 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 21:59:51 +00:00
Lennart Poettering
d4cb042a56 move pa_queue to an implementation based on pa_flist
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1619 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 16:47:39 +00:00
Lennart Poettering
ac49cc2029 do not acces playback pa_messagq from main thread
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1618 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 15:51:55 +00:00
Lennart Poettering
72840abe8a minor cleanliness fixes
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1617 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 15:09:28 +00:00
Lennart Poettering
357c0e415f fix closing of fds in gconf module
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1616 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 14:49:26 +00:00
Lennart Poettering
ffa1708070 * drop redundant pa_core argument from module initialization functions
* make pa__done() implementations optional
* a couple of modernizations
* wrap lt_dlsym() at a single place
* allow passing of an "api" argument to the HAL module, to choose whether OSS devices or ALSA devices should be picked up
* optimize fd closing a little on linux in the forked gconf helper
* save a little memory in the xsmp module


git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1615 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 14:28:39 +00:00
Lennart Poettering
e621071bf1 fix minor memory leakage
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1614 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 12:11:40 +00:00
Lennart Poettering
10b135a4bf avoid duplicate loading of modules
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1613 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 00:33:47 +00:00
Lennart Poettering
1e5ca51016 handle ACLAdded messages for previously unknown devices identically to a really new device
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1612 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 00:29:28 +00:00
Lennart Poettering
3b078b2068 Avoid a race condition when one PA instance gets HAL's ACLAdded message before the previous owner instance has given up access to the device, and thus the device is blocked
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1611 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-10 00:15:20 +00:00
Lennart Poettering
d9e44c52cb Add X11 XSMP module for hooking into the X11 session manager, for being notified about X11 disconnects before they actually happen, so that we are not killed by the bloody xlibs
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1610 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 23:47:06 +00:00
Lennart Poettering
583167722e modernize
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1609 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 23:46:03 +00:00
Lennart Poettering
3dfdb21759 don't assume that sink/source is already unregistered from namereg when disconnect hook is called
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1608 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 21:57:01 +00:00
Lennart Poettering
1c7b84204e play ACL event sound only when gained access, not when losing it
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1607 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 21:56:23 +00:00
Lennart Poettering
b751f3a3c7 s/login.wav/startup3.wav
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1606 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 21:37:19 +00:00
Lennart Poettering
02bf2f2dd2 update default configuration
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1605 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 21:31:58 +00:00
Lennart Poettering
0f155748da protect memimpors with a recursive mutex to avoid deadlock when shutting down
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1604 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 21:17:32 +00:00
Lennart Poettering
e76efa990e forgot to actually add the new suspend-on-idle module source code
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1603 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 21:08:10 +00:00
Lennart Poettering
bb46da3b4a add new module-suspend-on-idle module which suspends sinks/sources which are idle for more than 5s (or any other configurable time). Power saving, here we come\!
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1602 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 21:07:14 +00:00
Lennart Poettering
9c89f37ace if we get access to a device we don't know yet, add it to our tree instead of ignoring it
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1601 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 21:06:08 +00:00
Lennart Poettering
30ccf9a5c9 add a couple of additional hooks for modules to use
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1600 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 21:05:20 +00:00
Lennart Poettering
ed01e1adb5 don't hit an assert when we cannot resume a device
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1599 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 17:52:13 +00:00
Lennart Poettering
eaddc0195c by default, store esd socket in /tmp/.esd-id -u/socket, instead of /tmp/.esd/socket, to allow multiple simultaneous esd instances. this is only compatible with a patched esd, which however ubuntu and fedora ship now. other distros need to patch their esd as well, or may pass socket=/tmp/.esd/socket to module-protocol-esound-unix
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1598 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 16:27:24 +00:00
Lennart Poettering
33cd5e26cf listen for HAL ACL events; play an event sound on hw coldplug, hotplug and ACL access
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1597 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 13:49:27 +00:00
Lennart Poettering
0c29a2f1db add new function pa_scache_play_item_by_name
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1596 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 13:47:25 +00:00
Lennart Poettering
23ba125725 fix bug in handling of defer events
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1595 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-09 13:36:06 +00:00
Lennart Poettering
a69f4705c5 modernize module-hal-detect.c and check for ALSA pcm_class != modem
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1594 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-08 23:49:17 +00:00