Lennart Poettering
ac05619141
combine: quieten gcc a bit
2009-08-21 03:45:17 +02:00
Lennart Poettering
8a2a6b2004
adjust various data/library paths automatically if we are run from a build tree
2009-08-21 03:43:53 +02:00
Lennart Poettering
a562978509
ladspa: forward volume changes from ladspa sink to stream and hence via flat volume logic to master sink
2009-08-21 02:59:26 +02:00
Lennart Poettering
9f97b7cbe1
sink-input: add callbacks that are called whenever the mute/volume changes
2009-08-21 02:56:17 +02:00
Wim Taymans
6076cef209
remap: make the MMX code pretier
2009-08-20 20:00:50 +02:00
Wim Taymans
6e5dbed51e
remap: add MMX mono to stereo
2009-08-20 19:46:06 +02:00
Wim Taymans
e961efc130
remap: init the do_remap function to NULL
2009-08-20 18:32:51 +02:00
Wim Taymans
28baa53d55
remap: allow specialisations to install NULL
...
Fallback to the default C implementation when the remap init function did not
set a function.
2009-08-20 18:29:02 +02:00
Wim Taymans
ac1f2e0a2e
remap: move remapping code in separate file
...
Move the remapping code into a separate file. Have functions to install custom
init functions that can install optimized versions, when they want.
2009-08-20 18:23:42 +02:00
Wim Taymans
a3f4a4f6ba
resamples; refactor the channel remapping bits
...
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.
2009-08-20 17:54:45 +02:00
Wim Taymans
05fef5f551
sconv: allow for setting custom functions
...
Add methods to override the default conversion functions.
2009-08-20 15:50:02 +02:00
Wim Taymans
c1b6a87b27
alsa-sink: reduce the amount of smoother updates
...
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.
2009-08-20 13:40:27 +02:00
Wim Taymans
f8ffe0dabc
svolume: cleanups
...
Use PA_MAX
Use pa_rtclock_now() for benchmarks
2009-08-20 12:30:48 +02:00
Wim Taymans
f09b51198f
whitespace fixes
2009-08-20 11:31:04 +02:00
Wim Taymans
3cc1278dcf
resampler: avoid some multiplies when we can
2009-08-20 11:31:04 +02:00
Wim Taymans
aeae567f88
svolume: add comment
2009-08-20 11:31:04 +02:00
Wim Taymans
8aa86f5247
arm: implement ARM cpu detection
2009-08-20 11:31:04 +02:00
Wim Taymans
078bde1b49
x86: keep the cpu flags local
2009-08-20 11:31:04 +02:00
Wim Taymans
370016c0e7
svolume: fix compilation in 32bits
2009-08-20 11:31:04 +02:00
Wim Taymans
d2389ef96e
sample: manually inline table lookups
...
Manually inline some table lookups to avoid excessive calls to
pa_sample_spec_valid().
2009-08-20 11:31:04 +02:00
Wim Taymans
548b735ccf
resampler: fix identity check
...
Fix the identity matrix check for mono to stereo.
Help the compiler generate better code for the C implementation of the channel
remapping code.
2009-08-20 11:31:04 +02:00
Wim Taymans
d04a6e935f
resample: fix counters
2009-08-20 11:31:04 +02:00
Wim Taymans
b4e9942c2f
resample: refactor the channel remapping a little
...
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.
2009-08-20 11:31:04 +02:00
Wim Taymans
bd49d43bd3
svolume: add CPU guards around code
...
Mark code that should only be compiled on x86 CPUs with proper defines.
2009-08-20 11:31:03 +02:00
Wim Taymans
951bf1b28d
svolume: add ARM optimized volume scaling
2009-08-20 11:31:03 +02:00
Wim Taymans
a98fa950d2
svolume: remove unneeded compare
...
We don't need the compare because the sub operation already set the right flags
for us.
2009-08-20 11:31:03 +02:00
Wim Taymans
601e5f1867
resampler: cache integer channel_map
...
Calculate and cache an integer version of the channel map so that we don't have
to regenerate it when dealing with s16 samples.
2009-08-20 11:31:03 +02:00
Wim Taymans
25724cdd40
Get rid of liboil
...
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.
2009-08-20 11:31:03 +02:00
Wim Taymans
591baacba5
volume: remove ref functions
2009-08-20 11:31:03 +02:00
Wim Taymans
f24c24c14b
volume: improved comments
2009-08-20 11:31:03 +02:00
Wim Taymans
a1235446a7
volume: make the benchmark more meaningfull
...
MMX is about 6x faster, SSE around 15x on my machine.
2009-08-20 11:31:03 +02:00
Wim Taymans
dcae9a3113
svolume: add some comments
2009-08-20 11:31:03 +02:00
Wim Taymans
e396fe67fb
cpu-x86: guard header with ifdef
2009-08-20 11:31:03 +02:00
Wim Taymans
563cb2dea9
main: hook up cpu detection code
...
Add CPU detection code to activate the various optimisations.
Move some method definitions around.
Use compatibility macros when we can.
2009-08-20 11:31:03 +02:00
Wim Taymans
a83f5524fb
cpu-x86: add cpu detection code and helpers
...
Add CPU detection code and various macros and typdefs to make it easier to write
64 and 32 bit code.
2009-08-20 11:31:02 +02:00
Wim Taymans
5998cf99b0
svolume: improve SSE and MMX code
2009-08-20 11:31:02 +02:00
Wim Taymans
7086784573
volume_sse: add sse optimisations
2009-08-20 11:31:02 +02:00
Wim Taymans
08f3e16c84
volume_mmx: fix mmx code a bit
2009-08-20 11:31:02 +02:00
Wim Taymans
3a0b012ee0
volume: add first mmx optimized function
...
Add code for an mmx optimized version of s16ne volume scaling. Install the
custom function.
2009-08-20 11:31:02 +02:00
Wim Taymans
2d73f13567
samples-util: add padding to volume array
...
Pad the volume array with a copy of the start. We'll need this later to be able
to write optimized functions.
2009-08-20 11:30:55 +02:00
Wim Taymans
3d008961c0
sample-util: move volume code to separate file
...
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.
2009-08-20 11:29:48 +02:00
Wim Taymans
e71e644eb6
sample-util: move some functions around
...
Move some stuff around before splitting it into a separate file.
2009-08-20 11:29:47 +02:00
Wim Taymans
5b8b6544e2
sample-utils: coding style cleanup
...
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.
2009-08-20 11:29:47 +02:00
Wim Taymans
26839c4b9e
sample-utils: split out functions from case
...
Move the volume functions out of the switch case and use a table indexed by the
sample format to find the volume function.
2009-08-20 11:29:47 +02:00
Xabier Rodriguez Calvar
52e5d4b1d2
Modification of the thread-mainloop doc to ensure that nobody frees the api as it is owned by the loop.
2009-08-20 02:31:08 +02:00
Xabier Rodriguez Calvar
65f86ef7d4
Modification of the mainloop doc to ensure that nobody frees the api as it is owned by the loop.
2009-08-20 02:31:02 +02:00
Xabier Rodriguez Calvar
30ba9030ef
Modification of the glib-mainloop doc to ensure that nobody frees the api as it is owned by the loop.
2009-08-20 02:30:54 +02:00
Lennart Poettering
c5bd72509e
core: check return value of getgrnam_r() instead of errno
...
According to POSIX getgrnam_r() returns the error code as return value,
and not in errno. Honour that.
Pointed out and inspired by a patch from Ted Percival.
2009-08-20 00:20:03 +02:00
raven
d2f50eaa91
Sending translation for Polish
2009-08-19 20:53:19 +00:00
beckerde
9b6add303a
Sending translation for Spanish
2009-08-19 11:13:19 +00:00