Mauricio Collares
d466cffe23
Revert "port a2dp-source.c changes to sco-source.c"
...
This reverts commit 3ad39d83a1 .
2020-12-22 22:05:23 -03:00
Wim Taymans
a8937413e6
acp: add options to disable profile and port switching
...
See #498
2020-12-22 13:08:14 +01:00
Wim Taymans
948255f801
result: don't use undefined shift
...
Use a different way to generate the upper bits of the ASYNC mask
instead of undefined shift as warned by sanitizer
Add some unit test for this
See #497
2020-12-21 21:08:56 +01:00
Wim Taymans
08ba6097a1
loop: align buffer and invoke_items to 8 bytes
...
To avoid unaligned access messages from sanitizer
See #497
2020-12-21 20:46:13 +01:00
Wim Taymans
461e3db741
tests: fix some leaks
...
See #497
2020-12-21 20:07:02 +01:00
Wim Taymans
32c015d01e
tests: free resample after usage
...
See #497
2020-12-21 19:52:35 +01:00
Wim Taymans
3c7699980f
tests: make arrays a bit larger
...
See #479
2020-12-21 19:38:53 +01:00
Wim Taymans
16cf174fbc
audiomixer: fix array sizes
2020-12-21 19:34:55 +01:00
Mauricio Collares
a30b7518f3
adapt msbc decoding to a MTU of 48
2020-12-21 10:18:24 +00:00
Mauricio Collares
3ad39d83a1
port a2dp-source.c changes to sco-source.c
2020-12-21 10:18:24 +00:00
Pauli Virtanen
32e861fcf5
ofono: fix wrong name for bluez5.msbc-force-mtu
2020-12-21 06:14:12 +02:00
Pauli Virtanen
f1d9b2317c
sco-sink: adjust data flush timeout for msbc according to packet size
...
Instead of using a hardcoded value for the minimum delay between writes,
select it according to the mtu/packet size that is currently used.
This is necessary for correct playback with lower mtu values.
2020-12-21 04:16:11 +02:00
Pauli Virtanen
4144427655
ofono/hsphfpd: force write_mtu=24 for mSBC codec
...
Kernel should provide the correct mtu/packet size to use for SCO socket
I/O, but it does not currently appear to (as of linux 5.9), see
https://lore.kernel.org/linux-bluetooth/20201210003528.3pmaxvubiwegxmhl@pali/T/
When using mSBC, instead of using the (incorrect) kernel-provided value,
hardcode mtu to 24, corresponding to ALT1 mode. BT-UART adapters should
not require specific mtu, and it appears most BT-USB adapters only
support ALT1, see
https://lore.kernel.org/linux-bluetooth/20201210012003.133000-1-tpiepho@gmail.com/
This code needs to be revised when the issue is sorted out on the kernel
side.
Add setting bluez5.msbc-force-mtu for easier debugging in special cases.
Leave read_mtu as the detected value --- it does not seem to affect
whether BT-USB can record, but Raspberry Pi BT-UART fails to record if a
different value is used.
2020-12-21 04:16:11 +02:00
Huang-Huang Bao
b3bbc62870
a2dp: correct ldac config table
...
Signed-off-by: Huang-Huang Bao <eh5@sokka.cn>
2020-12-20 22:34:51 +08:00
Wim Taymans
2d89ad8533
profiler: add xrun_count and latency to profiler
2020-12-20 12:32:54 +01:00
Walter Lozano
9f766dd708
alsa: add warning in case of partial read/write
...
Currently alsa_read and alsa_write assumes that all the frames committed
using snd_pcm_mmap_commit are read or written, which is probably true.
However, as it could be some corner cases add a warning to notice this
fact.
Signed-off-by: Walter Lozano <walter.lozano@collabora.com>
2020-12-20 00:23:52 -03:00
Huang-Huang Bao
4621792354
a2dp: add missing function abr_process in a2dp_codec_aptx
...
Signed-off-by: Huang-Huang Bao <eh5@sokka.cn>
2020-12-20 04:53:21 +08:00
Huang-Huang Bao
9653d748a3
a2dp: fix a2dp encoding under sampling rate of 88200, 96000
...
Signed-off-by: Huang-Huang Bao <eh5@sokka.cn>
2020-12-19 20:25:49 +08:00
Huang-Huang Bao
16f5058af9
a2dp: add ldac ABR support
...
Signed-off-by: Huang-Huang Bao <eh5@sokka.cn>
2020-12-19 19:17:15 +08:00
Wim Taymans
a25f1a6a1d
acp: pass channelmap around
...
so that we can use it as a default in channelmix
2020-12-18 17:18:53 +01:00
Wim Taymans
c3973fd9ec
pod: add a HINT_DICT flag
...
We can use this to mark the ROUTE_info property and hopefully improve
the debugging output later.
2020-12-18 16:40:35 +01:00
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
94ec34d138
alsa: rename seq-source -> seq-bridge
2020-12-18 11:28:31 +01:00
Wim Taymans
938e2b1451
v4l2: profiles params are not implement yet
2020-12-17 16:13:19 +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
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
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
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
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
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
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