Commit graph

2607 commits

Author SHA1 Message Date
Pierre Ossman
8dcc1fa616 Adapt rtpoll and friends to Windows by replacing timespec with timeval and
add a fallback when clock_gettime() isn't available.


git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1926 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-03 14:43:56 +00:00
Pierre Ossman
ef8812e89b Replace all references to sys/poll.h with poll.h as that's what POSIX defines.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1925 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-03 14:41:21 +00:00
Lennart Poettering
7c1768d4d1 update native protocol to make use of pa_memblockq_pop_missing
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1924 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-01 16:42:59 +00:00
Lennart Poettering
2e780e88c2 Move request size handling into pa_memblockq, function pa_memblockq_pop_missing()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1923 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-01 16:41:50 +00:00
Lennart Poettering
d6a2203207 Fix race condition between IO thread creation and pa_sink_put(). Move activation of rtpoll fds when we change the state INIT->IDLE.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1922 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-01 16:39:04 +00:00
Lennart Poettering
9d34a1e18b fix trivial typo
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1921 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-01 00:44:29 +00:00
Lennart Poettering
abd692e1ba fix silence initializer for alaw and ulaw
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1920 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-10-01 00:16:24 +00:00
Tanu Kaskinen
dbcd086332 Fixed PA_GCC_CONST definition.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1919 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-30 13:19:26 +00:00
Pierre Ossman
bdf97468f3 Update module-solaris to new structure.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1918 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 14:01:25 +00:00
Lennart Poettering
67b899acc9 treat timer_enabled like a real, grown-up boolean variable
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1917 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 13:15:11 +00:00
Lennart Poettering
33f2f497de rework module-combine once again. We now run the data generation always in a seperate thread. This should help use to avoid all the awful race conditions we had in previously
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1916 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 13:02:28 +00:00
Lennart Poettering
229afb5e2d Move the poll() call outside the #ifdef checking for ppoll, since we want the poll in all cases. Prior to this change the check for negative return values of poll/ppoll was never actually executed when ppoll() was available
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1915 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 13:00:35 +00:00
Lennart Poettering
f8c17861b8 use the full range of RTSIGS for our stuff
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1914 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 12:53:17 +00:00
Lennart Poettering
3cdff5f3cc Allocate rtsigs from back to front, to avoid clashes with other libraries makeing use of rtsigs
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1913 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 12:52:47 +00:00
Lennart Poettering
df33b4c7b3 only do IO if we are RUNNING or IDLE, but not when we are in INIT
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1912 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 12:22:56 +00:00
Pierre Ossman
6d8aea724e Incorrectly used str2sig() instead of sig2str().
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1911 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-28 09:23:05 +00:00
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