Commit graph

4212 commits

Author SHA1 Message Date
Wim Taymans
4a8afe389c policy-node: boost priority on default device
When we find a default device, boost the priority so that it
remains the target device even when a device with higher priority
is scanned later.

Fixes issue where default device was not selected because a higher
priority device was encountered after it.
2020-07-27 10:16:17 +02:00
Frédéric Danis
3e56161ee2 bluez5: backend-ofono: Fix ofono blocking signals
Filter callback should return DBUS_HANDLER_RESULT_HANDLED only when signals
was handled, otherwise it prevents signals to be seen by other objects.

Also fix a Typo.
2020-07-24 15:49:28 +00:00
Frédéric Danis
4fb56ee69b bluez5: Share DBus connection between all backends 2020-07-24 15:49:28 +00:00
Wim Taymans
34fc7ff529 media-session: link unknown and mono streams to something 2020-07-24 17:39:29 +02:00
Wim Taymans
3586f918c5 main: make the default remote if nothing is specified 2020-07-24 17:23:00 +02:00
Wim Taymans
37f43aba35 alsa: add mixer plugin
Add plugin to manage the volume of default source and sink
2020-07-24 17:13:51 +02:00
Wim Taymans
b517a2a6ec alsa: use server name to connect 2020-07-23 20:43:08 +02:00
Wim Taymans
6530c694c9 protocol: debug server we connect to 2020-07-23 20:12:25 +02:00
Wim Taymans
63dbf7b7b7 context: connect to given server 2020-07-23 20:12:10 +02:00
Wim Taymans
141238d88b core: always use explicitly configured properties first
First use the configured properties, then use the env variables.
Make the daemon use the env variable by default.

This makes it possible to start servers with PIPEWIRE_CORE env variable
names but still override with the command option.

Makes it possible to make apps connect to PIPEWIRE_REMOTE env by
default and allows you to override with the command option.
2020-07-23 13:40:02 +02:00
Wim Taymans
bb20e0646c jack: parse varargs and use server name
Parse the varargs and use the server name as the remote
2020-07-23 13:18:14 +02:00
Wim Taymans
266e1301d2 use id to store default sink/source
This is easier to handle in general and we should not use the name
as a unique id. If the session manager wants to save things, it can
use whatever fields it wants from the object to create a unique
persistent name.
2020-07-23 11:59:13 +02:00
Frédéric Danis
db0c224b06 bluez5: Make native and ofono backends optional 2020-07-22 18:59:58 +02:00
Frédéric Danis
ebdaac160c bluez5: backend-ofono: Fix SCO nodes not created on oFono's CardAdded
oFono's CardAdded signal from can occur after BlueZ's ServicesResolved
signal. In this case the device is created without SCO nodes.
This is fixed by not enforcing device creation on ServicesResolved signal.
2020-07-22 18:59:58 +02:00
Frédéric Danis
18da8fd21f bluez5: backend-ofono: Add spa_bt_transport support 2020-07-22 18:59:58 +02:00
Frédéric Danis
9b6dd9461e bluez5: Create backend skeleton for HFP support using oFono 2020-07-22 18:59:58 +02:00
Wim Taymans
82dab3ab4e context: avoid compiler warning 2020-07-22 18:53:18 +02:00
Wim Taymans
f20aa405cb pw-cat: fallback to default channel map in record
If not otherwise specified, use the default channelmap when recording.
2020-07-22 17:26:14 +02:00
Wim Taymans
193b9afdff media-session: always prefer a port match
First find a port match and then increase the score when the port
was unconnected.
2020-07-22 17:24:58 +02:00
Wim Taymans
201d762b2a policy-node: refactor configure_node 2020-07-22 16:53:02 +02:00
Wim Taymans
59e69d8329 impl-port: unlink as part of destroy 2020-07-22 16:49:29 +02:00
Wim Taymans
553337df60 remote-node: handle remove port 2020-07-22 16:20:43 +02:00
Wim Taymans
03c2185efe media-session: rework linking nodes
Rework how nodes are linked. score each port pair and link the
highest score taking into account the type, direction, channels,
and number of linked ports.
2020-07-22 15:05:45 +02:00
Wim Taymans
5f9a8a82ab media-session: improve find_object
Make it possible to search for a type
2020-07-22 14:14:02 +02:00
Wim Taymans
f6753eefc3 media-session: keep more info about ports
Parse the DSP type and the channel and keep it around
2020-07-22 11:27:23 +02:00
Wim Taymans
0ca4a5621c port: copy AUDIO_CHANNEL key as well 2020-07-22 11:26:47 +02:00
Wim Taymans
022705d813 pw-cat: fix leak in channel parsing 2020-07-22 11:26:06 +02:00
Wim Taymans
2bb1d88fbe keys: let env variables overwrite the keys 2020-07-22 11:25:19 +02:00
Wim Taymans
2955182e4e use spa_debug_type_short_name() when we can 2020-07-22 11:22:11 +02:00
Wim Taymans
cc0727e62f pulse: remove useless leaked property 2020-07-21 17:39:08 +02:00
Wim Taymans
ca066fbf3b jack: use PIPEWIRE_PROPS env to add properties to jack nodes 2020-07-21 16:50:45 +02:00
Wim Taymans
d4d80c16c1 jack: handle NULL keys 2020-07-21 16:47:58 +02:00
Wim Taymans
875236631f acp: don't ignore return value 2020-07-21 15:42:04 +02:00
Wim Taymans
8b291ada27 jack: increase client name size 2020-07-21 15:41:52 +02:00
Wim Taymans
0b3e9edaa2 0.3.7 2020-07-21 12:06:39 +02:00
Wim Taymans
3fe5e146c2 thread-loop: fix comment 2020-07-21 11:02:11 +02:00
Wim Taymans
32ccd24469 node: improve error message 2020-07-21 11:02:01 +02:00
Julian Bouzas
03bc36a502 resample-native: substract num of skipped samples after processing input
Takes into account the number of skipped samples when deciding whether
we should copy the remaining samples in the history or not.

Fixes dropping audio issue when resampling from high frequencies
such as 48KHz to low requencies such as 8KHz.
2020-07-20 15:25:02 -04:00
Wim Taymans
7bd7476426 media-session: use ACP alsa devices by default 2020-07-20 17:34:28 +02:00
Wim Taymans
13492fd282 jack: include application name in client name 2020-07-20 16:54:38 +02:00
Wim Taymans
2909786eb2 stream: put target string in node.target 2020-07-20 16:27:50 +02:00
Wim Taymans
ee2c1f3882 jack: enforce unique port names as well 2020-07-20 16:27:26 +02:00
Wim Taymans
8c4b594b50 policy-node: don't move to the current target 2020-07-20 14:46:44 +02:00
Wim Taymans
7915bf5778 policy-node: implement move node
Move nodes to a new target when the metadata changes.
2020-07-20 14:40:50 +02:00
Wim Taymans
ff876bf58e introspect: set metadata type as well 2020-07-20 14:40:34 +02:00
Wim Taymans
5d0a1c4838 stream: remove wrong warning 2020-07-20 13:27:25 +02:00
Wim Taymans
62f7da880a pulse: clean up introspection
Make sure we always first update the registry.
Call callbacks with the right return value and set the context
error on errors correctly.
Remove some old code.
2020-07-20 13:13:22 +02:00
Wim Taymans
246ad5fb37 introspect: set target node as property
Use the metadata to tag streams with the desired target node.
2020-07-20 11:26:32 +02:00
Wim Taymans
dab0644d76 port: debug param changes some more 2020-07-20 10:28:34 +02:00
Frédéric Danis
2d91e62a19 bluez5: Workaround incorrect SCO MTU
It seems that some BT adapters don't return correct SCO MTU, see
https://marc.info/?t=148586768600002&r=1&w=2
Do not try to autodetect the MTU and use a fix MTU size of 48 bytes.
2020-07-17 19:36:33 +02:00