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
Marijn Suijten
990903ac8e
Makefile.in: PIPEWIRE_MODULE_DIR should point to src/modules
...
The root of the build directory does not contain modules, these reside
in src/modules/.
2020-12-14 11:32:26 +01:00
Wim Taymans
c6f94def08
null-sink: fix null sink scheduling
...
The null sink pulls in data and provides data after it got the
data in _process.
See #472 #442
2020-12-14 10:21:13 +01:00
Wim Taymans
0f528dc73c
splitter: place destination address in tmp array
...
We then remap the tmp array to the destination array.
Fixes #477
2020-12-14 09:49:44 +01:00
Wim Taymans
c1bdc58d31
a2dp: prefer aptx_hd over aptx
2020-12-11 20:04:57 +01:00
Wim Taymans
7763154239
a2dp: increase temp buffer
...
ldac frames are larger and need more space.
See #449
2020-12-11 19:23:30 +01:00
Wim Taymans
00295b64b5
pulse-server: don't write too small buffers
...
Fixes #399
2020-12-11 18:09:21 +01:00
Wim Taymans
d71259a02c
alsa: handle batch devices
...
For batch devices that are not usb devices, lower the period and
add an extra period of heardoom to avoid xruns.
See !330
2020-12-11 17:38:27 +01:00
Wim Taymans
6bc8ab18dc
bluez5: aptx wants S24 input sample format
2020-12-11 15:13:59 +01:00
Wim Taymans
8b52e44836
bluez5: support other ldac bit depth
...
Make the format_info const in codec_init, we just need to read the
final negotiated format in some cases.
Add some more ldac bit depths we support.
2020-12-11 13:30:11 +01:00
Wim Taymans
bcf6c0986e
pulse-server: read in chunks of minreq from the ringbuffer
...
Don't read too large chunks from the ringbuffer but in minreq
increments. This is more what pulseaudio does.
Fixes #463
2020-12-11 12:45:01 +01:00
Wim Taymans
d3db703f77
pulse-server: improve some debug
2020-12-11 12:39:46 +01:00
Wim Taymans
4ef0ef464e
pulse-server: warn for unsupported seek flags
2020-12-11 10:39:15 +01:00
Wim Taymans
8cb1db5a61
alsa-udev: add property to emit ACP devices
2020-12-11 10:10:20 +01:00
Wim Taymans
bec950440b
alsa-monitor: add wildcard to disable hardware-mixers
2020-12-11 10:10:05 +01:00
Haochen Tong
7dd69651b8
test-audioconvert: fix test failure after 7d73f0b8
2020-12-10 14:30:28 +01:00
Wim Taymans
760a63d340
metadata: clear item before remove
...
Otherwise the item is overwritten with the next entry and we should
not clear it.
2020-12-09 21:18:58 +01:00
Wim Taymans
0237821b38
a2dp: reorder codecs a little
...
Move higher quality codecs first.
2020-12-09 20:56:29 +01:00
Wim Taymans
2b507cbe79
jack: use the node activation position after connecting
...
Until we get assigned to a driver, use our own activation position
to report samplerate and buffer size.
2020-12-09 20:48:59 +01:00
Wim Taymans
7768a87a0b
alsa: make it possible to fix format
2020-12-09 20:33:57 +01:00
Wim Taymans
7d73f0b8d0
audioconvert: use some defines for the max ports
2020-12-09 20:32:44 +01:00
Wim Taymans
606d48a3e8
adapter: remove unused defines
2020-12-09 20:32:05 +01:00
Wim Taymans
e1b8f24d17
a2dp: improve LDAC
...
When we update the quality, get the new num_blocks.
Set the channel positions correctly.
2020-12-09 20:29:22 +01:00
Wim Taymans
34a9b1dc1a
a2dp: set channel map
2020-12-09 18:08:24 +01:00
Wim Taymans
29fe356fdf
a2dp: copy aptx config in configure
2020-12-09 18:00:42 +01:00
Frédéric Danis
8bc711ce4d
bluez5: backend-ofono: Add mSBC support
...
oFono tries to use the best codec when setting up the audio connection, so
the codec to use is known during call to `acquire` function, after the
transport has been created.
To get the codec before creating the transport, an audio connection is
set-up and discarded during `ofono_audio_card_found()`. It should return
the best codec available, which should not change during the time the
remote is connected.
mSBC can be enabled by passing "bluez5.msbc-support=true" parameter to
pipewire-media-session.
mSBC is automatically selected if remote device supports it.
2020-12-09 16:28:30 +00:00
Wim Taymans
bd4663b3cc
v4l2: log open/close as info
2020-12-09 17:24:54 +01:00
Wim Taymans
4e7be858e4
node: Add ParamBegin/End
...
Use these commands to mark the begin and end of a series of Param
enumerations and configuration, like when doing format negotiation. The
idea is that the device can remain open while we do this.
Use this in adapter when negotiating a format.
2020-12-09 17:10:52 +01:00
Wim Taymans
ccfe439786
Cache node, port and device params
...
So that we don't need to keep asking when it didn't change.
Fixes #455
2020-12-09 17:07:34 +01:00
Wim Taymans
ec77979890
alsa-pcm: default to max channels
...
When nothing else is specified, suggest the max number of channels
for a device.
See #467
2020-12-09 12:10:13 +01:00
Wim Taymans
d776a0917d
alsa: refactor dll code
2020-12-09 12:09:40 +01:00
Wim Taymans
5469ac19ab
pulse-server: map node.description to device.description
...
Makes Teamspeak work
Fixes #462
2020-12-08 12:20:47 +01:00
Wim Taymans
5a94bfc6cd
pulse-server: add some more supported channel_map values
2020-12-07 21:52:09 +01:00
Wim Taymans
157d6de607
pulse-server: convert channel_map channels
...
channel_map contains pulseaudio channel names, convert them to
pipewire channel ids and then into pipewire channel names for the
null sink.
2020-12-07 20:29:22 +01:00
Andres Freund
1e89e7559b
Fix paths used in 'make run'.
...
In particular ACP_PATHS_DIR, ACP_PROFILES_DIR ended up pointing to the
build directory, despite only existing in the source directory.
I also adjusted PIPEWIRE_CONFIG_DIR to be explicit about referencing
the build directory, given that the other environment variables are
doing so.
Fixes : #448
2020-12-07 15:46:21 +01:00
Wim Taymans
78e7a45e6e
audioconvert: remap channels
...
We also need to remap channels for the splitter and merger.
Remember the port-config format and its channel layout. Internally,
we use a canonical channel layout which is simply all channels sorted
by id. Remap the channels accordingly.
Fixes #445
2020-12-07 14:21:21 +01:00
Wim Taymans
2d8a7809f1
audioconvert: set port-config flags
2020-12-07 14:20:56 +01:00
Wim Taymans
6566f52a7e
a2dp-sink: don't accept more data when we need to flush
...
See #449
2020-12-06 15:56:04 +01:00
Wim Taymans
d2ff341263
a2dp: use right struct for ldac
...
Fixes #449
2020-12-06 13:03:05 +01:00
Wim Taymans
136fc028a5
prefer S24 over S16 formats
...
Prefer the higher quality over performance.
Fixes #457
2020-12-06 10:37:40 +01:00
Wim Taymans
316a96d501
improve debug
2020-12-06 09:32:12 +01:00
Wim Taymans
6d494c120f
bluez5: improve debug
2020-12-05 20:56:56 +01:00
Wim Taymans
7996b44036
a2dp: fail if no ldac samplerate was found
2020-12-05 20:16:25 +01:00
Kamil Sołtysik
0a8a854721
Fix codec names in comments
2020-12-05 19:23:27 +01:00
Wim Taymans
203679f27e
pulse-server: support lookup of monitor names
...
Support setting a monitor as default source.
2020-12-05 19:16:04 +01:00
Wim Taymans
cfe43cbea7
pulse-server: handle NULL as default sink/source
...
Fixes #444
2020-12-05 13:30:02 +01:00
Wim Taymans
8c4145291e
pulse-server: name and id can't be both set in volume/mute
2020-12-05 13:27:42 +01:00
Wim Taymans
0fba936b06
pulse-server: use defines for default sink/source
2020-12-05 13:26:59 +01:00
Wim Taymans
c3c1a1184c
a2dp: use unsigned for sizes
2020-12-05 08:30:14 +01:00