Wim Taymans
416bb2466d
log: move field around to plug hole in structure
2019-02-07 12:28:16 +01:00
Wim Taymans
569cbb48a9
use SPA_EXPORT to export symbols
2019-02-06 13:24:41 +01:00
Wim Taymans
a563050797
spa: don't use constructor attribute to register factories
2019-02-06 12:14:25 +01:00
Wim Taymans
1baef2625c
alsa: fix chmaps leak
2019-01-29 12:10:15 +01:00
Wim Taymans
e04560955d
audioconvert: clean up nodes
2019-01-29 11:46:26 +01:00
Wim Taymans
30ecf66561
fmtconvert: check bounds on chunk offset/size
2019-01-25 13:32:35 +01:00
Wim Taymans
58f3146b60
v4l2: pass pointers to the fraction and rectangle
2019-01-25 13:32:35 +01:00
Wim Taymans
577852863c
fmt: remove debug assert
2019-01-25 09:40:14 +01:00
Wim Taymans
13bf70a8dd
mem: align memory to requested alignment
...
Improve the allocators to always align the buffer memory to the
requested alignment
Use aligned read and writes for sse functions and check alignment,
optionally falling back to unaligned path.
Add more tests and benchmark cases
Check and warn for misaligned memory in plugins.
2019-01-24 18:28:52 +01:00
Wim Taymans
dd66469570
audioconvert: add format conversion benchmark
2019-01-24 09:49:19 +01:00
Wim Taymans
6f586602af
audioconvert: add unit test for format conversion
...
Add unit test for fmt conversion and fix some bugs
Add empty fmt-ops benchmark
2019-01-23 15:59:54 +01:00
Wim Taymans
351fb9ce29
pod: improve parser and builder
...
Remove the spa_pod_iter helpers
Remove builder/parser vararg recurse option, you have to
manually recurse into structures when needed. This simplifies
things a lot.
Pass spa_pod_frames to builder and parser explicitly, we don't
have to keep an internal stack anymore.
The parser is now almost a mirror image of the builder.
Make the parser safer when iterating over objects, add functions
to check and get pod contents in a safe way.
Make the builder return errno style results on errors
Improve performance of object properties when they are stored and
retrieved in the same order.
Add many more tests for the builder and parser
Add some benchmarks
2019-01-22 17:38:23 +01:00
Wim Taymans
b2bf69cc42
param: add some docs
...
Rename profile id to index because it better describes the property
2019-01-18 13:37:41 +01:00
Wim Taymans
5376832676
builder: control_header -> control
2019-01-17 17:11:58 +01:00
Wim Taymans
fa2d877925
audiotestsrc: use macros for parser
2019-01-16 17:42:44 +01:00
Wim Taymans
e4bde73552
alsa: use min_latency when no position is given
2019-01-16 17:38:28 +01:00
Wim Taymans
dad153ce28
alsa: mark properties are optional
2019-01-16 12:55:50 +01:00
Wim Taymans
80cfda89c1
pod: improve the vararg pod builder and parser
...
Automatically parse and build key/value when in objects without having
to prefix the key with ":"
Automatically build control/value when in sequence without the "."
prefix.
Remove the builder with key/pod, taking a reference to the stack built
temporary pods is not allowed in c++. We can use the varargs version
with the same convenient syntax.
Remove the parser "*" option, it is unused.
Improve spa_pod_builder_add_* and spa_pod_parser_get_* and make them
look similar.
2019-01-16 11:05:12 +01:00
Wim Taymans
3dc6820e9e
Don't use __ in defines or declarations, it's reserved
...
SPA_TYPE -> SPA_TYPE_INFO for type info strings
improve includes
Fixes #115
2019-01-14 13:00:00 +01:00
Wim Taymans
62672f4d23
v4l2: set buffer id correctly
2019-01-10 10:20:08 +01:00
Wim Taymans
1ed27a8f2b
add _GNU_SOURCE as compiler flag
2019-01-08 17:36:58 +01:00
Wim Taymans
b0f4be5fbc
fix more compile errors
...
Avoid void * arithmetic
Do explicit casts to target type to make c++ happy
2019-01-08 11:53:36 +01:00
Wim Taymans
3fa2ad33e4
fix warnings
2019-01-08 09:30:40 +01:00
Wim Taymans
7f0d5a1c10
fix compilation
2019-01-07 18:21:01 +01:00
Wim Taymans
b95584c312
plugins: fix warnings
2019-01-07 18:14:04 +01:00
Wim Taymans
5b7ddb0105
buffer: remove buffer id
...
The buffer id is not needed/used, we use the index of the buffer in the
buffer array when configuring the port.
2019-01-07 17:57:03 +01:00
Wim Taymans
e918f9f77c
fix sign confusion
2019-01-07 15:52:42 +01:00
Wim Taymans
7cd55c2c6b
fix switch fallthrough cases
2019-01-07 15:11:34 +01:00
Wim Taymans
9573b24e52
cpu: add force cpu flags
...
Use PIPEWIRE_CPU to force cpu flags.
2019-01-07 15:02:18 +01:00
Wim Taymans
2c4bffec74
fmt-ops: small optimizations
2019-01-07 13:49:52 +01:00
Wim Taymans
2a252abf50
fmt-ops: small optimization
2019-01-03 11:36:44 +01:00
Wim Taymans
0e91276a03
fmt-ops: SSE functions were really SSE2
...
The SSE functions used integer operations and were really SSE2 so
rename.
Optimize some more.
2018-12-20 16:11:25 +01:00
Wim Taymans
d2bcbdf9cf
resample: fix unrolled counter
2018-12-20 12:01:45 +01:00
Wim Taymans
0984096089
free() can handle NULL just fine so skip the check
...
Fixes #117
2018-12-19 17:47:25 +01:00
Wim Taymans
b6db6e2130
channelmix: add quad and 3.1 to mono optimisation
2018-12-19 16:49:29 +01:00
Wim Taymans
00d1488c07
channelmix: handle mono like Front Center
2018-12-19 16:49:00 +01:00
Wim Taymans
0a4ef3d2c0
resample: add SSE peaks resampler
2018-12-19 16:47:20 +01:00
Tanu Kaskinen
e7a8c29063
bluez5: remove an unused variable
...
This gets rid of a compiler warning.
2018-12-18 13:54:17 +00:00
Wim Taymans
7104df1b21
cpu: detect MMXEXT as well
2018-12-17 13:37:27 +01:00
Wim Taymans
4dfe1011a6
audioconvert: use cpu detection interface
2018-12-17 13:26:54 +01:00
Wim Taymans
9ca9fda253
cpu: add cpu support implementation
2018-12-17 13:25:27 +01:00
Wim Taymans
5025aa97e6
audioconvert: fix x86 feature defines
2018-12-17 10:20:18 +01:00
Wim Taymans
52368091e3
v4l2: actually pass the device path to the node
2018-12-17 10:16:06 +01:00
Wim Taymans
a331779a28
resample-peaks: fix peaks resampler
...
Keep separate variable to check if we searched a complete chunk.
2018-12-13 16:23:02 +01:00
Wim Taymans
08a63ded5d
audioconvert: pass samples to convert functions
...
Pass the number of samples to convert functions instead of number of
bytes because it is much more useful.
2018-12-13 12:02:47 +01:00
Wim Taymans
2fd8f0906f
alsa: set stride to frame size
2018-12-12 15:13:36 +01:00
Wim Taymans
4606d46621
channelmix: add more MONO mappings
...
Also just warn when we can't assign a channel
2018-12-11 16:53:53 +01:00
Wim Taymans
02585c6ca9
merger: add monitor ports
...
Add an option to enable monitor ports. Use this in the audio dsp
to expose monitor ports on the audio dsp nodes.
2018-12-11 16:35:40 +01:00
Wim Taymans
c42b108ac8
resample: small optimization
2018-12-10 12:58:10 +01:00
Wim Taymans
74c71e9bad
resample: only free resampler when implemented
2018-12-05 16:05:40 +01:00