Wim Taymans
9fb1b02352
acp: when we have a device with no port, go to the next device
...
Fixes an issue where a device have no ports and then it would
stop enumerating the ports of the other devices.
2020-12-18 16:28:56 +01:00
Wim Taymans
67d10ad3c7
alsa-acp: collect channelmap from volume update
...
It's not used yet but would ideally need to be used to remap the
volumes.
2020-12-18 16:22:00 +01:00
Wim Taymans
b05dcacc99
alsa-acp: add channel map with soft volume
2020-12-18 16:21:18 +01:00
Wim Taymans
bcceff4ab0
module-access: update with checks for fuse like upstream xdp
2020-12-18 15:48:13 +01:00
Wim Taymans
55c5e48578
alsa: set offset to 0 for playback streams
2020-12-18 15:32:27 +01:00
Wim Taymans
5ea1fd3e7d
impl-link: fix dependencies for feedback links
...
A feedback link is scheduled as a dependency from input to output
node. Make sure we also notify the client of this dependency.
Fixes #404
2020-12-18 13:10:08 +01:00
Wim Taymans
2bd5dac306
media-session: create seq-bridge after we have permissions
...
See #423
2020-12-18 12:04:49 +01:00
Wim Taymans
94ec34d138
alsa: rename seq-source -> seq-bridge
2020-12-18 11:28:31 +01:00
Wim Taymans
d2a5f5c1ae
pulse-server: also cleanup sample when error
...
Remove the separate error event and merge with the done event with
error code. This then also marks the sample as done when in error
so that it gets cleaned up properly.
Fixes #486
2020-12-18 09:50:12 +01:00
Wim Taymans
1a690a0cbb
pulse-server: limit writes to ringbuffer
...
We can't write more to the ringbuffer than its maxsize. Some clients
send more than the negotiated maxsize and cause a crash if we don't
clamp.
See #440
2020-12-17 19:39:12 +01:00
Wim Taymans
e0580fedc1
pulse-server: handle seek flags and offset
...
Fixes #485
2020-12-17 16:49:17 +01:00
Wim Taymans
938e2b1451
v4l2: profiles params are not implement yet
2020-12-17 16:13:19 +01:00
Wim Taymans
b812dbcbf6
impl: always copy the id in param_info
...
Or else we will not have the right id when the flags are 0
2020-12-17 16:11:30 +01:00
Wim Taymans
f8c96167f9
impl: Only return -ENOENT when param does not exist
...
We checked above if the param exited and returned -ENOENT if not.
When we can't find any parameter, simply return 0.
2020-12-17 15:56:22 +01:00
Wim Taymans
91b0d3bb39
Remove pipewire-libpulse
...
We use the original pulseaudio client library and the replacement
server pipewire-pulse.
2020-12-17 15:44:49 +01:00
Huang-Huang Bao
161c05d737
a2dp: fix aptx hd codec negotiation
...
Signed-off-by: Huang-Huang Bao <eh5@sokka.cn>
2020-12-17 14:17:37 +00:00
Wim Taymans
724d2581f0
pw-dump: add final \n at the end
2020-12-17 15:10:43 +01:00
Wim Taymans
cdb6c94c8e
acp: undo upstream change that breaks duplex mode
2020-12-17 13:05:37 +01:00
Wim Taymans
92f4831c9f
bluez5: handle NULL profile, don't run the filter on it
2020-12-17 12:25:38 +01:00
Wim Taymans
d968ab56a5
a2dp: report PARAM_IO, as advertized
2020-12-17 12:25:12 +01:00
Wim Taymans
6e6cd0d684
acp: add new files as well
2020-12-17 12:07:31 +01:00
Wim Taymans
d6530bc0cd
acp: sync with pulseaudio
2020-12-17 12:04:18 +01:00
Wim Taymans
90bdab8414
bluez5: improve param enumeration
...
Return -EIO when we can't enumerate the params
Don't check for end-of-params in a2dp-sink, we do that in the codec.
2020-12-17 11:43:53 +01:00
Wim Taymans
e8dcd7f5f9
acp: sync
...
Remove >2 channel support until upstream
Fix availability groups
2020-12-17 11:03:31 +01:00
Wim Taymans
22c793aa87
v4l2: add inotify support
...
Wait with inotify until we can access the device node before emiting
the new device.
Clean up alsa-udev and make it more like v4l2-udev
2020-12-17 10:43:57 +01:00
Wim Taymans
69da2ec601
alsa: refactor some helpers to add/remove a card
2020-12-17 09:36:19 +01:00
Wim Taymans
9b414b0a9e
a2dp: fix a warning
2020-12-16 19:50:14 +01:00
Huang-Huang Bao
30755c4a44
bluez5: fix ldac stuttering
...
Signed-off-by: Huang-Huang Bao <eh5@sokka.cn>
2020-12-17 02:29:04 +08:00
Wim Taymans
1636e08368
alsa: first rough attempt at inotify support
...
Wait until the device is accessible before exposing it.
2020-12-16 19:18:32 +01:00
Wim Taymans
05e06f16ba
audioconvert: improve channel remap some more
...
See #461
2020-12-16 12:53:11 +01:00
Wim Taymans
3803055403
audioconvert: remap channels only once
...
for planar formats, we should not remap twice or we undo the
remapping.
See #461
2020-12-16 09:53:29 +01:00
Wim Taymans
0e9ba69d3a
pw-dump: simplify the state handling
...
Fixes first \n
2020-12-15 18:12:21 +01:00
Wim Taymans
13cb51efbd
spa: fix array type info
...
Descend into the type info of the array. Fixes names of channels
in position array.
2020-12-15 16:06:10 +01:00
Wim Taymans
e7dffd64eb
0.3.18
2020-12-15 12:45:21 +01:00
Marijn Suijten
44882f5ab3
acp: Probe and set up HW volume for cards detected through UCM
...
The codepath `pa_alsa_ucm_add_ports` -> `probe_volumes` ->
`pa_alsa_path_probe` was never called leading to no HW volume being set
up when loading a card through UCM. PulseAudio calls this from
`card_set_profile` -> `pa_alsa_{sink,source}_new`.
2020-12-15 09:36:52 +00:00
Marijn Suijten
d636cadbb8
acp: alsa-ucm: Print iterated path name instead of current path
...
data->path (current path for selected profile) is not set yet here
resulting in segfaults. We are not interested in printing that anyway
but instead care about the iterated `path` from data->paths.
2020-12-15 09:36:52 +00:00
Wim Taymans
5e99ff52e7
pw-dump: handle NULL in link format
2020-12-15 10:17:47 +01:00
Wim Taymans
0e910a9d03
audioconvert: correctly remap in fmtconvert
...
Only remap channels on the planar buffers.
See #472
2020-12-15 09:47:37 +01:00
Wim Taymans
cc31412ef3
pw-dump: handle 0 size string
2020-12-14 17:15:49 +01:00
Wim Taymans
69ea147a29
pw-dump: add optional object id
2020-12-14 16:57:09 +01:00
Wim Taymans
5e33352d5d
pw-dump: escape keys and strings
...
Use the json escape function to escape keys and strings.
Make most put functions accept an optional key
Use flags helper for permissions as well
2020-12-14 16:46:23 +01:00
Wim Taymans
8f85e74b5d
pw-dump: add colors on tty
2020-12-14 16:19:56 +01:00
Wim Taymans
3ac2bc0ad2
pod: descend in array type if possible
2020-12-14 16:18:57 +01:00
Wim Taymans
7c5cb5a281
param: the position property is an array of channelpositions
2020-12-14 16:18:12 +01:00
Wim Taymans
dd28937ccb
pw-dump: refactor change_mask code
2020-12-14 15:42:54 +01:00
Wim Taymans
88fe2c4fb4
tools: add pw-dump tool
...
Dumps the complete object tree as json so that it can be processed
with tools like jq
2020-12-14 15:22:16 +01:00
Wim Taymans
c61502f57c
acp: rename fields
...
pulseaudio -> pipewire
PULSE_* -> ACP_*
Hopefully this does not interfere with pulseaudio anymore.
See #436
2020-12-14 15:01:05 +01:00
Wim Taymans
1934b0adb9
bluez5: add codec name to node
2020-12-14 13:29:12 +01:00
Wim Taymans
7f6339e307
bluez5: Don't deref the transport to get the fd
...
Use the configured fd in the source for reading and writing because
the transport might be disconnected and cleared from the main thread
at any time.
2020-12-14 13:17:48 +01:00
Marijn Suijten
580bdcd5bf
Makefile.in: Point PIPEWIRE_CONFIG_DIR to source directory
...
Config files read from this variable - currently only media-session.d -
do not get copied to the build directory but are only ever copied during
install. In order to have media-session.d/with-pulseaudio detected when
`make run`'ing from the build directory PIPEWIRE_CONFIG_DIR must point
to the source directory containing these files.
2020-12-14 11:32:31 +01:00