Wim Taymans
10531d99eb
fmt: fix conversion
2018-10-31 10:40:06 +00:00
Wim Taymans
63363d09dd
fmt: small fix to s16 conversion
2018-10-31 09:38:31 +00:00
Wim Taymans
093c675995
a2dp: don't faile set_io
2018-10-30 16:29:39 +00:00
Wim Taymans
ef7a111611
fmt: fix and enable f32 -> s16 conversion
2018-10-30 08:37:07 +00:00
Wim Taymans
4432db4fa7
fmt-ops: fix conversion
2018-10-29 18:38:14 +00:00
Wim Taymans
ae9843aca2
disable s16 sse until fixed
2018-10-29 14:07:19 +00:00
Wim Taymans
9f61ef96ff
fmt-ops: add f32 -> s16 see optimisations
2018-10-29 09:21:33 +00:00
Wim Taymans
9a969ac756
v4l2: we set clock and position on the node now
2018-10-27 10:11:27 +01:00
Wim Taymans
2206deb3e8
alsa: implement set_io and handle position io
...
Use position io for deciding the size of the output buffers in
alsasrc
2018-10-24 10:27:57 +02:00
Wim Taymans
66de372e9a
add node set_io function
...
Also allow setting io areas on nodes. We need this to set the
graph clock and period size on the nodes.
2018-10-23 12:31:41 +02:00
Wim Taymans
d2570142fa
resample: don't output 0 buffers
2018-10-22 11:32:53 +02:00
Wim Taymans
f2e03077a8
audioconvert: add volume and mute property
...
Expose volume and mute property in channelmix and use this
in audioconvert.
2018-10-18 15:04:40 +02:00
Wim Taymans
79e976e5d7
audioconvert: small cleanups
2018-10-18 12:47:46 +02:00
Wim Taymans
6590d3a258
alsa: sanitize channel map
...
Remove unknown channels
Remove duplicate channels
Fill unknown channels with default channels
2018-10-17 12:44:05 +02:00
Wim Taymans
d27674722a
improve debug and error handling
2018-10-17 10:02:44 +02:00
Wim Taymans
6c7d2d0e1e
alsa-utils: enumerate channels using channel map
...
When there is a channelmap, return format descriptions for each layout
otherwise return a range.
2018-10-16 18:10:43 +02:00
Wim Taymans
aa5bc5846f
v4l2: fix preoperty get
2018-10-16 16:49:41 +02:00
Wim Taymans
6e6e87223f
channelmix: improve mute/volume handling
...
Don't try to merge the mute/volume into the matrix but pass the volume
as a separate parameter.
2018-10-15 17:57:23 +02:00
Wim Taymans
456c01afbc
meson: enable more options by default
...
Update submodules to latest version
2018-10-10 17:16:01 +02:00
Tapasweni Pathak
8d71d2dab8
pipewire: add enable/disable to meson for spa plugins
2018-10-10 16:01:28 +02:00
Wim Taymans
805240258b
Improve channel positions
...
Sort the channel positions as the suggested format
Use the session node channel positions as the target profile
2018-10-09 20:11:01 +02:00
Wim Taymans
754782f302
add some more debug
2018-10-09 15:17:31 +02:00
Wim Taymans
822b033fb1
channelmix: fix copy multiple channels
2018-10-08 18:19:15 +02:00
Wim Taymans
f06c1723a8
fmtconvert: also return inio status
2018-10-08 17:47:52 +02:00
Wim Taymans
e1ec1bad23
spa: add profile param
...
Make a profile param that can be used to configure a node with a
certain profile.
Use the profile to configure the ports on splitter and merger and
get rid of the dynamic ports.
Use the profile to configure the client-node and audio-dsp.
Don't try to link more ports than available between client-node and
dsp.
2018-10-08 11:45:52 +02:00
Wim Taymans
a95cd608e7
a2dp: improve negotiation
2018-10-05 11:10:36 +02:00
Wim Taymans
4764d69e26
merger/splitter: only dynamic ports are dsp ports
2018-10-05 10:26:30 +02:00
Wim Taymans
8de1d03feb
audioconvert: use splitter/merger
...
Remove the split/merge functionality from fmtconvert.
Make audioconvert use the splitter/merger.
Let client-stream decide what mode to configure audioconvert in.
2018-10-04 16:03:14 +02:00
Wim Taymans
4401e479c6
small cleanups
2018-10-02 17:37:38 +02:00
Wim Taymans
0f69a7b767
node: remove and add node from graph in idle/running
...
Add the node and all links to the graph when going to running and
remove them again when idle.
2018-10-02 05:10:55 +02:00
Wim Taymans
ec88101004
v4l2: move log to instance
2018-10-01 10:55:35 +02:00
Wim Taymans
940c8645d3
remove property flags
...
Remove the property flags, we will add info about properties
with the param interface.
2018-09-28 17:44:14 +02:00
Wim Taymans
7a0a150337
logger: add support for logging to file
2018-09-26 10:48:01 +02:00
Wim Taymans
39240fb9c0
use _list_consume to destroy objects
2018-09-25 13:05:13 +02:00
Wim Taymans
ec1d7b8df7
alsa: deal with less frequent hw pointer updates
2018-09-24 13:37:10 +02:00
Wim Taymans
0aca605bfb
alsa: init variable correctly
...
We need to initialize the frames variable correctly before calling mmap.
Also initialize the now timer when starting.
2018-09-24 10:36:53 +02:00
Wim Taymans
1ebb3850e9
alsa: remove useless debug
2018-09-20 10:11:22 +02:00
Wim Taymans
4fd72eaee0
channelmix: debug matrix
2018-09-18 17:23:05 +02:00
Wim Taymans
64c38e3a6f
channelmix: construct matrix and use coefficients
2018-09-18 17:06:47 +02:00
Wim Taymans
61cc453cbe
channelmix: mix some LFE as well
2018-09-18 12:32:46 +02:00
Wim Taymans
75a22eedb0
fmt: fix conversion > 4 channels
2018-09-17 17:15:47 +02:00
Wim Taymans
20cbbd2cc9
explicitly allow mono and stereo with unknown layouts
2018-09-17 17:15:22 +02:00
Wim Taymans
ca2d35ca30
alsa: fix monitor strings
2018-09-17 17:15:05 +02:00
Wim Taymans
78b7da608f
channelmix: more improvements
...
work with the default channel layout
remap to default channel layout in fmconvert
Pass channel positions in resample format
2018-09-17 09:41:41 +02:00
Wim Taymans
fcd90b25d3
More work on multichannel
...
Reorder channels to a more common default order.
Only add channel layout when channels > 1
Don't try to link to a session that is still starting
Small sse fixes.
2018-09-14 15:23:12 +02:00
Wim Taymans
5196f7f053
audio: remove layout from audio
...
Make special format types for planar and interleaved instead of
having a field.
Add enum for audio channel positions
Add some default audio channel layouts
Place the channel layout in the audio format when possible
alsa: place audio channel positions in format
Add sse optimized channel mixing for some common cases
Remove name from port info, it's not mandatory and in the properties
Add direction to port info
2018-09-13 17:03:56 +02:00
Wim Taymans
fb3379e587
Pass channelmask around and use it to name ports
...
Use the channel name in the port names of the dsp
2018-09-11 18:09:45 +02:00
Wim Taymans
cc842cbdc8
Type changes
...
Only allow properties inside objects, this makes it easier to
iterate the object, which is needed for efficiently processing
control streams.
Add a choice type to mark variable properties.
SPA_TYPE_Enum -> SPA_TYPE_Id to avoid confusion with choice enum
Make it easier to allocate and initialize properties on the stack
Make more efficient methods to make objects.
2018-09-05 16:41:07 +02:00
Wim Taymans
699bed4a1f
channelmix: improve control parsing
2018-08-31 09:17:21 +02:00
Wim Taymans
0bce72d898
stream: reimplement volume changes with notify stream
...
Implement volume changes with a notify stream.
Do volume changes in the channel mixer with control streams.
2018-08-30 12:02:39 +02:00