Commit graph

328 commits

Author SHA1 Message Date
Lennart Poettering
6ac66e453f add missing config.h includes
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1800 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-11 00:56:21 +00:00
Lennart Poettering
e2e2ce79e2 Instead of including config.h from header files, check whether PACKAGE is defined and if not, fail (thus using PACKAGE as a check for inclusion of config.h)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1799 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-11 00:30:53 +00:00
Lennart Poettering
9b0ab39b1c unify static TLS support, make use of gcc __thread attribute if available
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1797 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-10 23:57:10 +00:00
Lennart Poettering
662988650a make sure we send each memblock only once when recording, not twice
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1793 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-10 20:57:17 +00:00
Lennart Poettering
d5caa0205f minor cleanup
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1792 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-10 20:56:36 +00:00
Lennart Poettering
a77158e67a make the memchunk writeable before silencing it
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1791 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-10 20:56:13 +00:00
Lennart Poettering
841fcb4557 beef up comment
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1790 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-10 20:55:46 +00:00
Lennart Poettering
27c3bd497d document that the native amd64 atomic ops implementation is incomplete
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1785 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-10 18:55:36 +00:00
Pierre Ossman
d9b3c0eef2 posix_madvise and posix_fadvise aren't present on all systems.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1783 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-10 11:35:30 +00:00
Pierre Ossman
e1766011ca Monotonic clock is optional so treat is as such.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1780 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-10 11:27:56 +00:00
Pierre Ossman
717b164161 POSIX realtime clock functions are in time.h so make sure to include it.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1779 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-10 11:19:53 +00:00
Lennart Poettering
b41dbfd28d fix an assert when runnig module-oss in record only-mode. optimize allocation of memblocks on playback
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1777 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-06 23:29:16 +00:00
Lennart Poettering
e4eefb8ce0 fix copynpaste error
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1775 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-06 23:10:34 +00:00
Lennart Poettering
3b2cf1ade5 update default config:
- check for existance of modules before loading them
- disable all event sounds except hotplug by default


git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1773 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-06 20:38:10 +00:00
Lennart Poettering
a4757a1dd9 add native amd64 atomic int implementation
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1770 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-04 21:25:26 +00:00
Lennart Poettering
4c31ff9b45 fix a couple of compiler warnings
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1768 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-04 20:01:19 +00:00
Lennart Poettering
2dbe137daf if available, use native gcc atomicity builtins
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1767 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-04 20:00:19 +00:00
Lennart Poettering
c9a0df3617 add new API function pa_resample_method_supported() which tests whether a resampling method is supported. Fix building with libsamplerate enabled
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1757 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-03 20:50:03 +00:00
Lennart Poettering
2e8244b4bc Allow compilation without libsamplerate; based on patch from Marc-Andre Lureau; re #125
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1753 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-02 21:20:57 +00:00
Lennart Poettering
011dfa509b make argument to pa_memchunk_will_need() const
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1751 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-02 21:13:17 +00:00
Lennart Poettering
3e188b192c make use of pa_memchunk_will_need() before handing sample cache audio to the RT threads
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1748 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-02 20:38:57 +00:00
Lennart Poettering
7dbabc47bb add new pa_memchunk_will_need() API, similar to pa_memblock_will_need()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1747 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-02 20:37:55 +00:00
Lennart Poettering
f36ca79716 add new API pa_memblock_will_need() and make use of PA_PAGE_SIZE macro
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1746 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-02 20:37:17 +00:00
Lennart Poettering
2f7b6fead1 add new pa_will_need() API for paging in memory
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1745 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-02 20:36:32 +00:00
Lennart Poettering
b54e71a96a make use of new memory page alignment macros, reindent
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1743 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-02 20:35:36 +00:00
Lennart Poettering
fe1f55b877 add a couple of macros for memory page alignment
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1742 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-09-02 20:34:57 +00:00
Lennart Poettering
a1322269d5 minor reformatting
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1738 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-31 00:51:26 +00:00
Lennart Poettering
6eb2f88c5d add two new functions pa_make_path_absolute()/pa_getcwd()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1737 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-31 00:51:01 +00:00
Lennart Poettering
4d623f0d44 Lots of assorted minor cleanups and fixes:
* s/disconnect/unlink/ at many places where it makes sense
* make "start_corked" a normal pa_sink_input/pa_source_output flag instead of a seperate boolean variable
* add generic process() function to pa_sink_input/pa_source_output vtable that can be used by streams to do some arbitrary processing in each rt loop iteration even the sink/source is suspended
* add detach()/attach() functions to pa_sink_input/pa_source_output vtable that are called when ever the rtpoll object of the event thread changes
* add suspend() functions to pa_sink_input/pa_source_output vtable which are called whenever the sink/source they are attached to suspends/resumes
* add PA_SINK_INIT/PA_SOURCE_INIT/PA_SINK_INPUT_INIT/PA_SINK_OUTPUT_INIT states to state machines which is active between _new() and _put()
* seperate _put() from _new() for pa_sink/pa_source
* add PA_SOURCE_OUTPUT_DONT_MOVE/PA_SINK_INPUT_DONT_MOVE flags
* make the pa_rtpoll object a property of pa_sink/pa_source to allow streams attached to them make use of it
* fix skipping over move_silence
* update module-pipe-source to make use of pa_rtpoll
* add pa_sink_skip() as optimization in cases where the actualy data returned by pa_sink_render() doesn't matter


git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1733 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-30 22:57:53 +00:00
Lennart Poettering
ca72adf100 modernize and make use of a static flist for allocating idxset entries
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1731 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-30 22:43:35 +00:00
Lennart Poettering
821eb8e295 move queue processing code into pa_thread_mq
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1730 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-30 22:42:47 +00:00
Lennart Poettering
687f1f15fc add new function pa_memblock_ref_is_one()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1729 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-30 22:42:02 +00:00
Lennart Poettering
c2e4328c53 fix pa_memchunk_make_writable(), make memchunk functions return the memchunk they modify
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1728 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-30 22:41:33 +00:00
Lennart Poettering
bfe69cebf3 add an assert()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1727 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-30 22:40:11 +00:00
Lennart Poettering
6817987116 add pa_timespec_reset()
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1726 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-30 22:39:47 +00:00
Lennart Poettering
747b01be94 make passing a code pointer to pa_asyncmsgq_get() optional
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1725 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-30 22:39:24 +00:00
Lennart Poettering
782d5a53d9 make floating point speex resampler the default
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1721 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-25 23:40:16 +00:00
Lennart Poettering
89fcd51b7b enable -ffast-math for gcc
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1720 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-25 23:32:37 +00:00
Lennart Poettering
9439e81de1 make ffmpeg resampler actually work
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1717 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-25 22:26:59 +00:00
Lennart Poettering
f0dbbe966f add makefiles to speex/ and ffmpeg/ to easy compilation from emacs
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1715 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-24 00:23:48 +00:00
Lennart Poettering
640ae04589 Copy resampler from ffmpeg into our sources
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1714 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-24 00:23:22 +00:00
Lennart Poettering
ed4dc16b95 big resampler rework: support integer-only resampling, support speex resampler
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1712 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-23 22:35:40 +00:00
Lennart Poettering
4eb9bb0746 fix a bad memory access when destructing pa_memimports
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1711 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-23 22:34:49 +00:00
Lennart Poettering
c72d4c6b9e add a small speex wrapper so that we can include both the fp and the fixed-point resampler in the same binary
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1709 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-23 22:32:58 +00:00
Lennart Poettering
5ff891c156 add a copy of the speex resampler to our sources
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1707 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-23 22:31:01 +00:00
Lennart Poettering
0ff2afd8a6 support absolute, relative and periodic timers in pa_rtpoll
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1703 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-22 22:26:30 +00:00
Lennart Poettering
b937009bcd add convenience functions to hook up pa_fdsem and pa_asyncmsgq to an pa_rtpoll; add pa_rtpoll_item_get_userdata(), on EINTR/EAGAIN, reset revents; automatically destory left over items
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1700 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-22 17:11:26 +00:00
Lennart Poettering
7490977a84 add missing include
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1699 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-22 17:06:04 +00:00
Lennart Poettering
0449966852 make pa_make_power_of_two() and pa_is_power_of_two() inline functions
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1698 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-22 17:05:41 +00:00
Lennart Poettering
190648a3ed add missing #include
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1697 fefdeb5f-60dc-0310-8127-8f9354f1896f
2007-08-22 17:05:07 +00:00