summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* port a few things over to use xmalloc and friends instead of low-level libc ↵Lennart Poettering2009-08-232-12/+11
| | | | malloc/free directly
* Merge commit 'wtay/optimize'Lennart Poettering2009-08-2325-641/+2255
|\
| * remap: make the MMX code pretierWim Taymans2009-08-201-50/+24
| |
| * remap: add MMX mono to stereoWim Taymans2009-08-204-1/+180
| |
| * remap: init the do_remap function to NULLWim Taymans2009-08-201-2/+4
| |
| * remap: allow specialisations to install NULLWim Taymans2009-08-201-0/+5
| | | | | | | | | | Fallback to the default C implementation when the remap init function did not set a function.
| * remap: move remapping code in separate fileWim Taymans2009-08-204-152/+249
| | | | | | | | | | Move the remapping code into a separate file. Have functions to install custom init functions that can install optimized versions, when they want.
| * resamples; refactor the channel remapping bitsWim Taymans2009-08-201-81/+105
| | | | | | | | | | | | Move the channel remapping bits into a separate structure. We'll make this structure global so that optimized versions can use it to perform the channel remapping.
| * sconv: allow for setting custom functionsWim Taymans2009-08-202-64/+102
| | | | | | | | Add methods to override the default conversion functions.
| * alsa-sink: reduce the amount of smoother updatesWim Taymans2009-08-201-4/+22
| | | | | | | | | | | | | | Exponentially increase the amount of time between smoother updates. We start with a 2ms interval and increase up to 200ms intervals. Smoother updates and the resulting linear regression take a fair amount of CPU so we want to reduce the amount of updates.
| * svolume: cleanupsWim Taymans2009-08-203-26/+26
| | | | | | | | | | Use PA_MAX Use pa_rtclock_now() for benchmarks
| * whitespace fixesWim Taymans2009-08-208-740/+765
| |
| * resampler: avoid some multiplies when we canWim Taymans2009-08-201-2/+7
| |
| * svolume: add commentWim Taymans2009-08-201-0/+3
| |
| * arm: implement ARM cpu detectionWim Taymans2009-08-202-7/+107
| |
| * x86: keep the cpu flags localWim Taymans2009-08-201-30/+27
| |
| * svolume: fix compilation in 32bitsWim Taymans2009-08-202-12/+12
| |
| * sample: manually inline table lookupsWim Taymans2009-08-201-25/+24
| | | | | | | | | | Manually inline some table lookups to avoid excessive calls to pa_sample_spec_valid().
| * resampler: fix identity checkWim Taymans2009-08-201-10/+6
| | | | | | | | | | | | Fix the identity matrix check for mono to stereo. Help the compiler generate better code for the C implementation of the channel remapping code.
| * resample: fix countersWim Taymans2009-08-201-4/+4
| |
| * resample: refactor the channel remapping a littleWim Taymans2009-08-201-88/+109
| | | | | | | | | | | | | | | | Factor out the channel remap matrix code into a separate function. Keep a pointer to the channel remapping function so we can install custom functions. Catch the common mono->stereo remapping case and install a custom, more optimized function.
| * svolume: add CPU guards around codeWim Taymans2009-08-202-0/+11
| | | | | | | | Mark code that should only be compiled on x86 CPUs with proper defines.
| * svolume: add ARM optimized volume scalingWim Taymans2009-08-205-2/+281
| |
| * svolume: remove unneeded compareWim Taymans2009-08-202-3/+1
| | | | | | | | | | We don't need the compare because the sub operation already set the right flags for us.
| * resampler: cache integer channel_mapWim Taymans2009-08-201-33/+33
| | | | | | | | | | Calculate and cache an integer version of the channel map so that we don't have to regenerate it when dealing with s16 samples.
| * Get rid of liboilWim Taymans2009-08-208-90/+65
| | | | | | | | | | | | | | Get rid of the liboil dependency and reimplement the liboil functions with an equivalent C implementation. Note that most of these functions are deprecated in liboil and that none of them had any optimisations. We can further specialize our handrolled versions for some extra speedups.
| * volume: remove ref functionsWim Taymans2009-08-202-446/+0
| |
| * volume: improved commentsWim Taymans2009-08-202-27/+30
| |
| * volume: make the benchmark more meaningfullWim Taymans2009-08-202-43/+69
| | | | | | | | MMX is about 6x faster, SSE around 15x on my machine.
| * svolume: add some commentsWim Taymans2009-08-201-0/+18
| |
| * cpu-x86: guard header with ifdefWim Taymans2009-08-201-0/+5
| |
| * main: hook up cpu detection codeWim Taymans2009-08-204-21/+20
| | | | | | | | | | | | Add CPU detection code to activate the various optimisations. Move some method definitions around. Use compatibility macros when we can.
| * cpu-x86: add cpu detection code and helpersWim Taymans2009-08-203-0/+184
| | | | | | | | | | Add CPU detection code and various macros and typdefs to make it easier to write 64 and 32 bit code.
| * svolume: improve SSE and MMX codeWim Taymans2009-08-202-123/+268
| |
| * volume_sse: add sse optimisationsWim Taymans2009-08-204-1/+440
| |
| * volume_mmx: fix mmx code a bitWim Taymans2009-08-201-20/+26
| |
| * volume: add first mmx optimized functionWim Taymans2009-08-204-0/+428
| | | | | | | | | | Add code for an mmx optimized version of s16ne volume scaling. Install the custom function.
| * samples-util: add padding to volume arrayWim Taymans2009-08-201-5/+17
| | | | | | | | | | Pad the volume array with a copy of the start. We'll need this later to be able to write optimized functions.
| * sample-util: move volume code to separate fileWim Taymans2009-08-204-311/+347
| | | | | | | | | | Move the volume code into a separate file with the reference C implementations. Add a function to retrieve the volume function and one to install a new one.
| * sample-util: move some functions aroundWim Taymans2009-08-201-22/+22
| | | | | | | | Move some stuff around before splitting it into a separate file.
| * sample-utils: coding style cleanupWim Taymans2009-08-201-53/+46
| | | | | | | | | | | | Make the coding style match the rest of pulseaudio more. Remove some liboil functions, they seem unoptimized and likely slower than our handrolled versions here.
| * sample-utils: split out functions from caseWim Taymans2009-08-201-283/+303
| | | | | | | | | | Move the volume functions out of the switch case and use a table indexed by the sample format to find the volume function.
* | udev: check busy status of alsa cards before loading alsa modules and hence ↵Lennart Poettering2009-08-221-17/+132
| | | | | | | | initiating profile probing
* | udev: process all inotify events queued up, not just the first one in the queueLennart Poettering2009-08-221-17/+39
| |
* | core: relex validity checks when destructing half-set up source outputs/sink ↵Lennart Poettering2009-08-222-3/+4
| | | | | | | | inputs
* | ladspa/remap: handle failing stream moves properlyLennart Poettering2009-08-222-4/+10
| |
* | add usergroup-test to .gitignoreLennart Poettering2009-08-221-0/+1
| |
* | daemon: don't free script_commands twiceLennart Poettering2009-08-221-5/+0
| |
* | core: Remove wrong doc on how to free returned dataTed Percival2009-08-221-4/+0
| |
* | Solaris: fixed latency (resent)Finn Thain2009-08-221-26/+30
| | | | | | | | | | Set a fixed latency based on the given buffer size, which is constrained to the 128 KB limit on buffered writes. Also fix an error path.