Commit graph

  • 241ad047c8 port module-combine to new core Lennart Poettering 2007-08-30 22:58:12 +00:00
  • 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 Lennart Poettering 2007-08-30 22:57:53 +00:00
  • b552541dd1 reorder initialization of pa_core variables Lennart Poettering 2007-08-30 22:44:19 +00:00
  • ca72adf100 modernize and make use of a static flist for allocating idxset entries Lennart Poettering 2007-08-30 22:43:35 +00:00
  • 821eb8e295 move queue processing code into pa_thread_mq Lennart Poettering 2007-08-30 22:42:47 +00:00
  • 687f1f15fc add new function pa_memblock_ref_is_one() Lennart Poettering 2007-08-30 22:42:02 +00:00
  • c2e4328c53 fix pa_memchunk_make_writable(), make memchunk functions return the memchunk they modify Lennart Poettering 2007-08-30 22:41:33 +00:00
  • bfe69cebf3 add an assert() Lennart Poettering 2007-08-30 22:40:11 +00:00
  • 6817987116 add pa_timespec_reset() Lennart Poettering 2007-08-30 22:39:47 +00:00
  • 747b01be94 make passing a code pointer to pa_asyncmsgq_get() optional Lennart Poettering 2007-08-30 22:39:24 +00:00
  • ee97c4295a add new PA_SINK_CAN_SUSPEND/PA_SOURCE_CAN_SUSPEND flag Lennart Poettering 2007-08-30 22:38:57 +00:00
  • d88514c58c drop check for gid < 500, since this isn't really a security improvement, re: #111 Lennart Poettering 2007-08-26 01:10:55 +00:00
  • 0362350fa8 Add option --dump-resample-methods to list available resampler implementations Lennart Poettering 2007-08-25 23:49:11 +00:00
  • 782d5a53d9 make floating point speex resampler the default Lennart Poettering 2007-08-25 23:40:16 +00:00
  • 89fcd51b7b enable -ffast-math for gcc Lennart Poettering 2007-08-25 23:32:37 +00:00
  • f82067f6de lower suspend timeout to 1s Lennart Poettering 2007-08-25 22:27:51 +00:00
  • f4e2d2331a include ffmpeg resampler in build Lennart Poettering 2007-08-25 22:27:24 +00:00
  • 9439e81de1 make ffmpeg resampler actually work Lennart Poettering 2007-08-25 22:26:59 +00:00
  • 6687dd0131 Corrected a bogus comment. Tanu Kaskinen 2007-08-24 07:12:47 +00:00
  • f0dbbe966f add makefiles to speex/ and ffmpeg/ to easy compilation from emacs Lennart Poettering 2007-08-24 00:23:48 +00:00
  • 640ae04589 Copy resampler from ffmpeg into our sources Lennart Poettering 2007-08-24 00:23:22 +00:00
  • f754a24cd2 make speex resampler the default Lennart Poettering 2007-08-23 22:35:58 +00:00
  • ed4dc16b95 big resampler rework: support integer-only resampling, support speex resampler Lennart Poettering 2007-08-23 22:35:40 +00:00
  • 4eb9bb0746 fix a bad memory access when destructing pa_memimports Lennart Poettering 2007-08-23 22:34:49 +00:00
  • c1cdcfde7c a couple of modernizations; parse RE sample types properly Lennart Poettering 2007-08-23 22:34:10 +00:00
  • c72d4c6b9e add a small speex wrapper so that we can include both the fp and the fixed-point resampler in the same binary Lennart Poettering 2007-08-23 22:32:58 +00:00
  • fdead579b7 build speex resampler tiwce, once for fixed point, one for floating point Lennart Poettering 2007-08-23 22:31:51 +00:00
  • 5ff891c156 add a copy of the speex resampler to our sources Lennart Poettering 2007-08-23 22:31:01 +00:00
  • b3b382d8ef fix minor typo Lennart Poettering 2007-08-22 22:36:39 +00:00
  • 9d381599be port remaining sinks to pa_rtpoll Lennart Poettering 2007-08-22 22:27:53 +00:00
  • 1bfa1802d4 minor cleanups Lennart Poettering 2007-08-22 22:27:07 +00:00
  • 0ff2afd8a6 support absolute, relative and periodic timers in pa_rtpoll Lennart Poettering 2007-08-22 22:26:30 +00:00
  • 53b872c070 port alsa driver to make use of new pa_rtpoll object Lennart Poettering 2007-08-22 17:13:07 +00:00
  • 79d3dddecd reverse hrtimer check, add missing #include Lennart Poettering 2007-08-22 17:11:54 +00:00
  • 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 Lennart Poettering 2007-08-22 17:11:26 +00:00
  • 7490977a84 add missing include Lennart Poettering 2007-08-22 17:06:04 +00:00
  • 0449966852 make pa_make_power_of_two() and pa_is_power_of_two() inline functions Lennart Poettering 2007-08-22 17:05:41 +00:00
  • 190648a3ed add missing #include Lennart Poettering 2007-08-22 17:05:07 +00:00
  • 0da65cf3df add message about hrtimers, and initialize pa_core::high_priority Lennart Poettering 2007-08-22 00:29:15 +00:00
  • 0af0fb8f9c hide rtpoll-test from svn Lennart Poettering 2007-08-22 00:28:04 +00:00
  • 7fca89034f check pa_core::high_priority before becoming rt thread Lennart Poettering 2007-08-22 00:27:25 +00:00
  • b3029464a4 add new option to pa_core stating whether we are running as high prio process Lennart Poettering 2007-08-22 00:26:43 +00:00
  • 35461981c6 add check for ppoll() Lennart Poettering 2007-08-22 00:25:29 +00:00
  • 8568f7038c add rtpoll, rtclock, rtsig to Makefile Lennart Poettering 2007-08-22 00:25:03 +00:00
  • dc9d80326e add test program for pa_rtpoll Lennart Poettering 2007-08-22 00:24:31 +00:00
  • 78c362c5d9 add new realtime event loop abstraction which precise time keeping by using hrtimers on Linux, if they are available Lennart Poettering 2007-08-22 00:24:12 +00:00
  • 8972d06bc7 add facility for managing realtime signals Lennart Poettering 2007-08-22 00:23:33 +00:00
  • ef2bc41b87 add monotonic clock abstraction pa_rtclock Lennart Poettering 2007-08-22 00:22:51 +00:00
  • 6bfeef1818 rename a few things in a macro to make name collisions less likely Lennart Poettering 2007-08-22 00:21:28 +00:00
  • 531cc3cfaf make use of new public function pa_is_power_of_two() Lennart Poettering 2007-08-22 00:21:00 +00:00
  • b7b119ae00 add pa_is_power_of_two() and pa_make_power_of_two() functions Lennart Poettering 2007-08-22 00:20:13 +00:00
  • a0ad42a35f add macro for creating static TLS objects Lennart Poettering 2007-08-22 00:19:33 +00:00
  • b0b06b0002 add more PA_PTR_TO_XXX macros Lennart Poettering 2007-08-22 00:18:58 +00:00
  • fa7fc315bd modernizations Lennart Poettering 2007-08-22 00:18:04 +00:00
  • eaafb79858 Modified the JACK sink heavily: * Made the sink realtime-safe. * To achieve the previous item, internal buffering was be added. New module argument: buffersize. * Removed the user's need to set the JACK transport to playing state before he could hear anything from PulseAudio. * In process of achieving the previous item, latency calculation got more inaccurate: the reported latency is now always a multiple of the JACK processing block size, and constant. * The JACK ports now have a running numbering in their names. Tanu Kaskinen 2007-08-20 06:22:21 +00:00
  • 2d292befab use realtime scheduling for ALSA and OSS driver threads Lennart Poettering 2007-08-16 19:50:11 +00:00
  • 876e682ad8 never stay root after startup, even if we don't have capabilites Lennart Poettering 2007-08-16 19:48:49 +00:00
  • 5e93816e1b seperately get high nice level and acquire realtime sched Lennart Poettering 2007-08-16 19:46:11 +00:00
  • d5cbf4fed9 Keep CAP_SYS_NICE not only in PERMITTED but also in EFFECTIVE capset Lennart Poettering 2007-08-16 19:44:51 +00:00
  • 843dcceb1d only suspend device when server is local Lennart Poettering 2007-08-16 18:26:35 +00:00
  • 39d1e65338 truncate service names if necessary, include user name in service string Lennart Poettering 2007-08-16 13:47:18 +00:00
  • 03b0b1db7b add pa_truncate_utf8() function for truncating a string and guaranteeing it stays valid UTF8 afterwards Lennart Poettering 2007-08-16 13:46:32 +00:00
  • 81cdb3798c add fedora-snapshot target Lennart Poettering 2007-08-15 23:13:53 +00:00
  • c0d668431b fix an awful race condition when handling data requests Lennart Poettering 2007-08-15 22:47:59 +00:00
  • 1ff47862c4 don't fail if no pa is srunning Lennart Poettering 2007-08-15 21:03:53 +00:00
  • a96c5f8137 add new tool pasuspender which temporarily suspends all sinks and resumes them later again Lennart Poettering 2007-08-15 20:50:15 +00:00
  • 33c6f9dd52 set CLOEXEC on more fds Lennart Poettering 2007-08-15 20:47:53 +00:00
  • 5679de5cfc add new commands suspend-source, suspend-sink Lennart Poettering 2007-08-15 19:57:12 +00:00
  • d2d0978454 add protocol support for muting sink inputs and suspending sinks/sources Lennart Poettering 2007-08-15 19:30:04 +00:00
  • 0640615c4a bump protocol revision and soname of libpulse Lennart Poettering 2007-08-15 19:27:52 +00:00
  • b20d204a30 use pa_source_suspend_all/pa_sink_suspend_all for suspending all sinks/sources Lennart Poettering 2007-08-15 19:27:12 +00:00
  • a74e804973 fix muting for sink inputs Lennart Poettering 2007-08-15 19:26:38 +00:00
  • 3d9299029c actually mute sinks when asked for i, add new function pa_sink_suspend_all Lennart Poettering 2007-08-15 19:25:56 +00:00
  • 6f714d9887 actually mute sinks when asked for i, add new function pa_sink_suspend_all Lennart Poettering 2007-08-15 19:25:42 +00:00
  • 44f91cfafa load module-x11-xsmp from a /etc/xdg/autostart file, to make sure it is loaded when we have XSMP Lennart Poettering 2007-08-13 23:49:26 +00:00
  • 80f5abf6d9 add load-module and unload-module commands to pactl Lennart Poettering 2007-08-13 23:34:46 +00:00
  • 8a663d4cda a couple of build fixes Lennart Poettering 2007-08-13 00:15:55 +00:00
  • 1d5e9f0205 deactivate module-x11-xsmp by default, due to a deadlock when pa is being started from gnome-session Lennart Poettering 2007-08-12 23:29:12 +00:00
  • e381dd9e4d 64 bit fixes and minor gcc shut ups Lennart Poettering 2007-08-12 23:24:05 +00:00
  • 5e96d5da78 yet another new glibc build fix Lennart Poettering 2007-08-12 21:20:08 +00:00
  • 3cbcb982e2 build fix for newer glibc Lennart Poettering 2007-08-12 21:14:25 +00:00
  • e6714e1cb1 make make distcheck pass Lennart Poettering 2007-08-12 20:51:58 +00:00
  • db7fdf6e32 make make dist work Lennart Poettering 2007-08-12 20:35:05 +00:00
  • 55f3d34923 ship full libltdl tree in SVN to make sure we can build this crack on fedora Lennart Poettering 2007-08-12 20:24:03 +00:00
  • b16d8e2df4 bump soname and stuff for fedora pre-release Lennart Poettering 2007-08-12 18:40:50 +00:00
  • 1cecd46d95 Resurrect ability to move streams between sinks Lennart Poettering 2007-08-11 23:46:51 +00:00
  • 79a586db17 add comments describing the context these functions are called from Lennart Poettering 2007-08-11 23:45:50 +00:00
  • 3d81dde335 modernize pa_play_memblockq() and add a new function pa_memblockq_sink_input_new() which allows creation of memblockq streams without activating them immediately Lennart Poettering 2007-08-11 23:45:13 +00:00
  • 14d93fce44 minor cleanup Lennart Poettering 2007-08-11 23:44:00 +00:00
  • 45e495499e fix latency reporting for oss and alsa modules Lennart Poettering 2007-08-11 23:43:39 +00:00
  • 06f2799d8f minor modernizations Lennart Poettering 2007-08-11 20:31:34 +00:00
  • 57734ec414 hook into move operations for resuming/suspending devices appropriately Lennart Poettering 2007-08-11 20:31:08 +00:00
  • 44b82a1925 Add 'via DMA' to sink/source description if device is accessed with mmap() Lennart Poettering 2007-08-11 20:30:21 +00:00
  • e71a34762e restore the ability move record streams between sources Lennart Poettering 2007-08-11 20:29:42 +00:00
  • 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 Lennart Poettering 2007-08-11 19:08:06 +00:00
  • 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 Lennart Poettering 2007-08-11 17:09:07 +00:00
  • b71dde0e35 make sure that the device access event sound is only generated once Lennart Poettering 2007-08-11 16:51:21 +00:00
  • 447c4a5327 deal with messages properly which are recieved after destruction of a stream Lennart Poettering 2007-08-11 16:08:20 +00:00
  • 107b23d202 fix module-hal when no api= argument is specified Lennart Poettering 2007-08-11 16:07:38 +00:00
  • c1c59b4675 add proper refcounting to pa_asyncmsgq objects, to allow destruction from the dispatched callbacks Lennart Poettering 2007-08-11 16:01:25 +00:00