Commit graph

2591 commits

Author SHA1 Message Date
Lennart Poettering
584ca6193c don't free silence memblocks that don't exist
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1910 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 00:30:48 +00:00
Lennart Poettering
107f12ae3c speed up semaphore allocation with an flist
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1909 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 00:29:51 +00:00
Lennart Poettering
008c709900 Use Linux eventfd() if kernel supports it
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1908 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-26 22:50:08 +00:00
Lennart Poettering
e99bc33bcb fix build with compilers that lack __thread
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1907 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-26 13:33:25 +00:00
Lennart Poettering
a9e667bb83 make sure when can shutdown PA cleanly without segfault
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1906 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-25 01:58:16 +00:00
Lennart Poettering
5fe1589c8e work around newest open() magic in fedora glibc
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1905 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-25 00:53:49 +00:00
Lennart Poettering
1687226811 fix make dist
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1904 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-25 00:45:57 +00:00
Lennart Poettering
86ec421592 fix suspending in module-combine.c
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1903 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 23:53:58 +00:00
Lennart Poettering
609ad12f29 * decouple suspending of monitor sources and their sinks
* implement resume-on-uncork


git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1902 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 23:32:52 +00:00
Lennart Poettering
0e3e9e2274 only post data into the monitor source when it is not suspended
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1901 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 23:32:01 +00:00
Lennart Poettering
f0f9df9990 * add new state changed hook for streams
* update sink->n_corked properly when moving streams


git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1900 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 23:31:22 +00:00
Lennart Poettering
ac86fa1b97 fix IDLE vs. RUNNING state handling of sinks/sources when changing cork status for streams
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1899 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 22:41:00 +00:00
Lennart Poettering
3c75d35dd0 rework zeroconf service publishing, to use synchronous hooks instead of asynchronous subscription events. Don't push autoload entries anymore.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1898 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 21:49:02 +00:00
Lennart Poettering
e37fa011ac add hooks for name/description changes of sinks/source and streams
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1897 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 21:47:22 +00:00
Lennart Poettering
ef020c6e89 fix stream corking: ignore pa_sink_input() when we are in corked state
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1896 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 17:14:00 +00:00
Lennart Poettering
55651ec215 don't count streams using the monitor source in pa_sink_used_by(), because this would disallow suspending a sink ehn an rtp stream is connected
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1895 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 16:24:23 +00:00
Lennart Poettering
ba322a49e1 drop the PA_SOURCE_CAN_SUSPEND and PA_SINK_CAN_SUSPEND flags, since they were a bad idea in the first place. All sinks/sources are now *required* to handle suspending in one way or another. Luckily all current sink/source implementations handle it fine anyway.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1894 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-24 16:10:43 +00:00
Lennart Poettering
77ed60ce4c instead of using the mixer ioctl()s on the dsp fd, open a seperate fd for the mixer. This allows us the keep the mixer fd open while closing the dsp device while suspending.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1893 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-23 21:03:24 +00:00
Lennart Poettering
fc00eaf1d4 use O_NOFOLLOW when creating lock files, too
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1892 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-23 19:30:56 +00:00
Lennart Poettering
2860685269 use O_NOFOLLOW when creating PID file, to avoid symlink vulnerability
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1891 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-23 19:23:44 +00:00
Tanu Kaskinen
de079ac404 Added an assertion for the case when the sink programmer hasn't installed the thread_mq properly.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1890 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-23 14:51:07 +00:00
Tanu Kaskinen
7bcbf16e94 Comment typo fix.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1889 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-23 14:39:39 +00:00
Tanu Kaskinen
ecad937409 Fix the assignment of control values by using the right variable for indexing.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1888 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 08:39:07 +00:00
Tanu Kaskinen
1c44be2a7b Correct the parameter positions with the pa_cvolume_set() call.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1887 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 07:31:29 +00:00
Lennart Poettering
e04a8576bb minor optimization
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1886 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 02:00:32 +00:00
Lennart Poettering
6cfb09698a include the name of the master sink in the name for piggy-backed virtual sinks
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1885 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 01:35:32 +00:00
Lennart Poettering
c6b43bf119 prefix by order macros with PA_
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1884 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 01:16:14 +00:00
Lennart Poettering
668340099c rework a couple of sample type converters, to actually work
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1883 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 00:26:18 +00:00
Lennart Poettering
78a9ad336b - rework volume adjustment code to not require fp
- don't hit an assert when we cannot do a volume adjustment, instead, print a warning and go on


git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1882 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 00:25:17 +00:00
Lennart Poettering
d7a0876d7f fix selection of working format
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1881 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 00:22:36 +00:00
Lennart Poettering
9db42672d4 make use of byte swap builtins of gcc if they are available
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1880 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 00:21:08 +00:00
Lennart Poettering
f26de8077d add test program for the resampler
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1879 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-22 00:19:56 +00:00
Lennart Poettering
c34a2635b2 allow _unlink() functions to be called as many times as people want, even before _put() was called
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1878 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-21 13:32:00 +00:00
Lennart Poettering
1fc168b02f clamp sample data to -1 .. 1, before passing it to the plugin; if a control port data specification is left empty, initialize with the default value of the plugin
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1877 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-21 00:16:34 +00:00
Lennart Poettering
29d25ec8d9 add CLAMP macro
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1876 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-21 00:14:20 +00:00
Lennart Poettering
e205bb2555 don't segfault when the master changes
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1875 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-20 22:01:58 +00:00
Lennart Poettering
3b2835d334 properly detach/attach when moving sink inputs
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1874 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-20 22:01:07 +00:00
Lennart Poettering
f3f44dab37 rework module-combine again
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1873 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-20 20:33:34 +00:00
Lennart Poettering
c40c1682be maintain the attach status in a boolean variable 'attach' accessible from the IO thread for sink_inputs/source_outputs
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1872 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-20 20:30:03 +00:00
Lennart Poettering
75647bc38f render new data always in the master sink's thread, fixing missing locking
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1871 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-19 22:21:55 +00:00
Lennart Poettering
a8a9ee499d make sure we initialize thread private data before we move our ghost sink to the rt thread, not after
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1870 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-19 21:20:15 +00:00
Lennart Poettering
42b71ff965 fix trivial typo
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1869 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-19 19:06:25 +00:00
Lennart Poettering
d716e3cd7b fix check for lrintf, make resample2.c again identical to upstream ffmpeg
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1868 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-19 19:03:38 +00:00
Lennart Poettering
75f799a3d8 make O_CLOEXEC, O_NONBLOCK and socket low latency fd ops more uniform: always return void, name them similarly, only pass a single fd
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1867 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-19 00:12:01 +00:00
Lennart Poettering
0fcad97782 copy free_cb into a temporary variable first, to avoid compiler warning
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1866 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-19 00:08:40 +00:00
Lennart Poettering
ac66b6af08 fall back to plughw:, if hw: doesn't work, in the alsa source, too
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1865 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-18 23:35:05 +00:00
Lennart Poettering
781cf499cf properly release memblock always abd as soon as possible
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1864 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-18 23:24:13 +00:00
Lennart Poettering
1fd9afdf7d make use of pa_bool_t on a few places where applicable; really start work_cb
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1863 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-18 23:21:06 +00:00
Lennart Poettering
b3093d8405 lower SO_PRIORITY priority to 6, since this is the best we get without being root
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1862 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-18 22:29:24 +00:00
Lennart Poettering
ef8df41042 make rtp send socket low delay
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1861 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-18 22:25:18 +00:00