Wim Taymans
02295c5e2b
alsa: call prepare again but ignore EBUSY
...
Not calling _prepare can cause problems on my card. So call it
again but ignore -EBUSY.
2021-01-15 18:42:35 +01:00
Wim Taymans
b4e3d546e0
alsa: fill frames with silence when underrun
...
Keep track of how many samples we need to produce. If we don't have
enough samples in the ringbuffer, fill the rest with silence.
See #564
2021-01-15 18:34:38 +01:00
Wim Taymans
6b0abd2057
channelmix: Improve unknown channel layout handling
...
Clamp position to valid range. so that AUX becomes UNKNOWN.
If we have one mono source channel and unknown destination, copy it
to all destination channels.
If we have one mono destination channel and unknown source layout,
average all channels.
Otherwise, pair source and dest channels.
See #538
2021-01-15 17:51:07 +01:00
Wim Taymans
376436fc2c
alsa: remove snd_pcm_prepare() call, it is not needed
...
set_hw_params already called _prepare for us and calling it twice
might cause trouble in some drivers.
See #580
2021-01-15 16:12:42 +01:00
Wim Taymans
482f96a644
alsa: add option to disable mmap access mode
2021-01-15 15:44:22 +01:00
Wim Taymans
2ff4615e53
alsa: prefer planar formats
...
They are easier to convert
2021-01-15 15:18:39 +01:00
Wim Taymans
5817b66a20
alsa-plugin: only parse props when updated
...
Check if the properties got update before we try to parse them.
If they are not updated, they might be empty and we would lose
our previously parse values.
Fixes default volume in alsa-mixer.
2021-01-15 10:29:32 +01:00
Wim Taymans
d7ff7d098b
audioadapter: don't emit xrun when drained
2021-01-15 09:46:17 +01:00
Wim Taymans
5a7f4a619a
pw-dump: also dump properties
2021-01-15 09:45:56 +01:00
Wim Taymans
ae263eeffc
pw-dump: only dump changed metadata entries
2021-01-14 21:14:16 +01:00
Wim Taymans
688b3c5ed4
pw-dump: only output [] when something changed
2021-01-14 20:17:22 +01:00
Wim Taymans
a97d4c44b4
pw-metadata: remove is when key == NULL
2021-01-14 20:11:43 +01:00
Wim Taymans
13cef576c9
pw-dump: dump metadata contents
...
Fix some leaks
2021-01-14 20:11:15 +01:00
Wim Taymans
792c01aede
pw-dump: trigger change in metadata
...
so that it is displayed
2021-01-14 19:22:40 +01:00
Wim Taymans
b118a84a60
module-metadata: set factory id in properties
2021-01-14 19:22:18 +01:00
Wim Taymans
a8faad9f17
fmt: support f32p -> s24s conversion
...
As used by MAudio Fasttrack Pro
See rhbz#916017
2021-01-14 17:58:54 +01:00
Wim Taymans
be107317f5
Silence some dbus errors
...
Log info when a service is not running and disable it.
2021-01-14 17:11:42 +01:00
Wim Taymans
7347b5ef05
alsa: add api.alsa.headroom setting
...
Can be used to tweak the extra distance kept between the hardware
and software pointers when reading and writing.
See #289
2021-01-14 17:10:05 +01:00
Wim Taymans
abe73c9146
meson: use global b_pie to build PIE executables
2021-01-14 16:29:32 +01:00
Wim Taymans
a6433b0839
pw-dump: mark new objects without proxy as changed
...
So that they are actually printed.
2021-01-14 15:39:02 +01:00
Frédéric Danis
1b10bee6f8
bluez5: Fix double free in backend-native
...
This occurs when exiting `pipewire-media-session` with a headset connected.
Fixes !395
2021-01-14 15:16:31 +01:00
Wim Taymans
a1cb786ee7
impl-module: turn an error into debug
...
The error is usually reported or ignored by the caller.
2021-01-14 15:08:14 +01:00
Wim Taymans
3162465f6f
portal: error->warn when the portal pid is unknown
2021-01-14 15:07:42 +01:00
Wim Taymans
7eac9874f0
daemon: add nofail option to the modules section
...
Use nofail on rtkit when it's not available.
2021-01-14 15:06:24 +01:00
Wim Taymans
b8583799ff
spa-monitor: fix the support array
2021-01-14 15:01:12 +01:00
Wim Taymans
51cc5c328f
pw-uninstalled: set config dir
2021-01-14 13:28:23 +01:00
Wim Taymans
de851018c1
media-session: fall back to card_name for description
...
Also try to use the alsa.card_name property for the description if
there is nothing else.
Fixes #524
2021-01-13 19:49:24 +01:00
Wim Taymans
c9354c238f
Add -fPIE to installed executables
...
Fixes #570
2021-01-13 19:40:37 +01:00
Frédéric Danis
514836eebe
bluez5: Create spa_bt_transport when codec has been negotiated
...
This waits for codec negotiation completion, i.e. on `SLC` completion if
codec negotiation is not supported or on `AT+BCS` reception if codec
negotiation is supported, before creating the `spa_bt_transport`
2021-01-13 17:35:57 +01:00
Wim Taymans
fee0c2679c
daemon: install new config files
...
See #207
2021-01-13 14:50:52 +01:00
Wim Taymans
c771bc9b5a
media-session: move bluetooth properties to bluez config
2021-01-13 11:42:08 +01:00
Sebastian Apel
8ac5a89583
bluez5: Added mSBC support in bluze5 backend native, including check to make sure the computer's bluetooth adapter
...
supports the transport modes required for mSBC
2021-01-13 11:20:22 +01:00
Wim Taymans
8aec26f5bd
v4l2-monitor: make nicer names
2021-01-12 21:51:10 +01:00
Wim Taymans
fac80e76d2
media-session: add conf file for v4l2 and bluez as well
2021-01-12 20:42:58 +01:00
Wim Taymans
4cba8fc7e9
pulse-server: implement set_sample_rate
2021-01-12 13:14:05 +01:00
Frédéric Danis
7bd86df6df
bluez5: Add simple HFP AG support to backend-native
2021-01-12 11:21:55 +01:00
Frédéric Danis
677f122f1d
bluez5: Split RFComm from spa_bt_transport
...
RFComm channel should not be part of the spa_bt_transport as this one may
change during HFP connection.
2021-01-12 11:21:55 +01:00
Frédéric Danis
00cce32514
bluez5: Rename backend-hsp-native to backend-native
2021-01-12 11:21:55 +01:00
Wim Taymans
219248d43e
connection: guard against NULL
2021-01-12 10:13:02 +01:00
Pauli Virtanen
84ebce147a
module-protocol-native: add test for reentering
2021-01-12 10:13:02 +01:00
Pauli Virtanen
23f010541f
module-protocol-native: make demarshaling safe vs. reentering
...
The message structures returned by pw_protocol_native_connection_get_next
point to data that is contained in the buffer of the connection.
The data was invalidated when pw_protocol_native_connection_get_next was
called the next time, which made the connection loop non-reentrant, in
cases where it was re-entered from demarshal callbacks.
Fix this by allocating new buffers when reentering and stashing the old
buffers onto a stack. The returned message structure is also stored on
the stack to make lifetimes to match.
2021-01-12 10:13:02 +01:00
Nicolai Syvertsen
09a690b123
spa-acp-tool: fix set-volume vol argument parse
2021-01-11 22:26:30 +01:00
Wim Taymans
5f66650f7c
daemon: don't pass (null) as argument
2021-01-11 20:40:26 +01:00
Wim Taymans
b3f8a4b99b
acp: update pcm proplist for UCM as well
...
Update the properties we get from the pcm handle right before we
close the handle.
Also set properties on the UCM devices.
See #524
2021-01-11 15:39:48 +01:00
Wim Taymans
24c7f45118
alsa-monitor: also try card_name as description
...
See #524
2021-01-11 15:23:59 +01:00
Wim Taymans
9862560f55
impl-core: avoid destroying the core object
...
Avoid destroying id 0 and return some errors.
See #560
2021-01-11 13:19:07 +01:00
Wim Taymans
6a9552a4ac
acp; fall back to default when profile-set is not accessible
2021-01-11 13:05:11 +01:00
Wim Taymans
ac861a86c0
acp: make it possible to pass properties to test tool
...
So you can do:
spa-acp-tool -c 1 -p 'device.profile-set=behringer-umc202.conf'
2021-01-11 11:44:13 +01:00
Wim Taymans
878240e30a
pw-dump: add simple monitor option (-m)
2021-01-11 10:24:39 +01:00
Wim Taymans
dea4836203
alsa-pcm: always start device
...
Also start device after writing silence.
Fixes #558
2021-01-11 07:11:09 +01:00