Frédéric Danis
06a6e11806
bluez5: Create backend for native HSP support
2020-07-17 18:34:33 +02:00
Wim Taymans
7711c98123
jack: use default sink/source to sort ports
2020-07-17 17:23:43 +02:00
Julian Bouzas
23788ee617
sco-sink: clean up and write data at a constant bitrate
...
Audio data received by HSP/HFP devices need to be sent at a constant
bitrate to achieve smooth playback
2020-07-17 15:13:03 +00:00
Julian Bouzas
551844c0ef
sco-source: initialize read mtu and read chunks of its size
...
The mtu value returned by the kernel seems to be incorrect, we use
the hardcoded value of 48 for now (like bluezalsa)
2020-07-17 15:13:03 +00:00
Wim Taymans
15a4019e45
client: refuse update of pipewire.* keys from client
...
Only the server and modules can update the properties with
pipewire.* keys.
2020-07-17 16:56:37 +02:00
Wim Taymans
07cc07597c
access: always put access in property
...
Improve debug
2020-07-17 16:47:14 +02:00
Wim Taymans
cd7763c814
access: use key to access property
2020-07-17 16:46:26 +02:00
Wim Taymans
119ef5e376
session-manager: move portal check back to pipewire
...
Enable the portal check in pipewire.
Only do permission store queries in the session-manager for portal
managed apps.
2020-07-17 14:14:26 +02:00
Wim Taymans
5731447357
add portal module again
...
This access module now only checks if the connection is comming
from the portal and tags the ACCESS property with portal in that
case. It will no longer do permission store checks, that's for
the session manager.
2020-07-17 14:12:10 +02:00
Wim Taymans
9b00462561
client: also copy ACCESS key to global
2020-07-17 14:09:56 +02:00
Wim Taymans
89b189d190
access: don't check access if already set
...
If we already have an access property, leave the client as is.
2020-07-17 13:23:50 +02:00
Wim Taymans
4d4904187b
client: update busy status after check_access
...
So that we block clients without permissions
2020-07-17 13:22:02 +02:00
Wim Taymans
f2c1ab6069
access: make access property configurable
...
Just set the value of access.force into pipewire.access so that
the session manager can deal with it.
2020-07-17 09:59:49 +02:00
Wim Taymans
33d7b6ea43
Remove old portal module from build
2020-07-16 17:56:21 +02:00
Wim Taymans
a295901329
Move portal module to session manager
2020-07-16 17:54:18 +02:00
Wim Taymans
d720724d48
media-session: add method to iterate objects
2020-07-16 17:48:29 +02:00
Wim Taymans
0e21464da2
media-session: also make objects for other types
2020-07-16 17:48:00 +02:00
Wim Taymans
7d56b78bce
remove some unused fields
2020-07-16 17:47:30 +02:00
Wim Taymans
3eb37320c9
pw-cli: improve permission debug
2020-07-16 17:46:47 +02:00
Wim Taymans
50574b9523
flatpak: don't give write access for flatpaks
2020-07-16 13:34:06 +02:00
Wim Taymans
5f9bb13237
client: use core permission to pause/resume a client
...
Make it so that the permission of the core determines if a client
can continue or not. When the core is readable, the client is
allowed to continue otherwise it is paused.
2020-07-16 13:25:39 +02:00
Wim Taymans
ac97175380
pulse: don't try to do set_param when not writable
2020-07-16 13:25:03 +02:00
Wim Taymans
cbc579825c
media-session: add flatpak module
...
Add a module that gives full access to flatpak apps. Later we should
do something more restrictive.
2020-07-16 12:52:00 +02:00
Wim Taymans
9caccb6125
pw-cli: quit when we quit
2020-07-16 12:49:17 +02:00
Wim Taymans
5afdd507c3
access: document and improve arguments
...
Add option to force flatpak security
When a check is inconclusive, go to the next check instead.
2020-07-16 11:45:44 +02:00
Wim Taymans
7ddc32a113
meson: place full path in the config
2020-07-16 11:44:10 +02:00
Wim Taymans
f306cbde0b
command: pass right arguments to execvp
...
The first argument is the command (exec) and the next is the
actual command we executed.
2020-07-16 11:42:55 +02:00
Wim Taymans
02be602f97
policy-node: route to the default sink/source when found
2020-07-15 15:53:54 +02:00
Wim Taymans
61e2d5cb54
policy-node: track default sink/source and move streams
...
Keep track of the default source and sink and move all streams linked
to the old default to the new default when it changes.
2020-07-15 14:26:16 +02:00
Wim Taymans
b1293d9f6e
policy-node: only track stream peers
...
Only track the peer of streams. We only care about where we linked
this stream to. There is only one target per stream but the device
we link to can have many peer streams.
2020-07-15 14:22:56 +02:00
Wim Taymans
5f2c4c70ec
media-session: expose metadata
2020-07-15 14:21:35 +02:00
Wim Taymans
2d5a404244
media-session: add method to remove links
2020-07-15 14:20:46 +02:00
Wim Taymans
035fb26d71
media-session: keep track of links
...
Also keep track of links when not tracked in the endpoint link.
2020-07-15 14:19:25 +02:00
Wim Taymans
5194c8a92f
media-session: start metadata first
2020-07-15 14:17:00 +02:00
Wim Taymans
583e450efd
example: add more debug
2020-07-15 14:14:23 +02:00
Wim Taymans
77274b3ab0
node: use intermediate pending state
...
Use an intermediate pending state that contains the state currently
in progress and use this to decide if we need to issue start/stop
commands.
Otherwise we might be in the running state, issue a Stop command,
issue a Start command (ignored because already running), then the
Stop completes and the node is stopped.
2020-07-15 14:11:01 +02:00
Wim Taymans
6dcb19bbdf
pipewiresrc: use more accurate timeout
2020-07-14 17:25:13 +02:00
Wim Taymans
a6d221f18a
thread_loop: add more accurate timed_wait
...
Add get_time() to calculate a timespec timeout value.
Add timed_wait_full() to wait for a timespec
2020-07-14 17:13:59 +02:00
Wim Taymans
36511a5d8e
gst: measure keepalive-time in milliseconds
...
And round up to the next integer for now.
2020-07-14 14:29:45 +02:00
Wim Taymans
9b4b7d1a2c
evl: add include for spa_strerror
...
See #244
2020-07-14 14:19:26 +02:00
Wim Taymans
0344e09905
gst: add some more debug
2020-07-14 14:15:55 +02:00
Wim Taymans
993aa89030
gst: add keepalive-time property
...
Add a property to periodically send the last buffer to keep the
stream alive. Useful for sparse streams that need to keep the
encoder busy every once and a while.
2020-07-14 13:54:21 +02:00
Wim Taymans
f28ca843a6
format: fix typo
2020-07-14 10:21:35 +02:00
Wim Taymans
70652d1a37
gst: share the core between connections
...
Make all sources in the same process with the same fd share the
connection to the server. This makes it possible to set the same
fd on multiple sources/sinks and have them all use the same
connection, like when capturing multiple monitors from screencast
with the portal.
Fixes #241
2020-07-13 18:38:19 +02:00
Julian Bouzas
ba96eecba0
sco-source: clean up and support different buffer sizes
2020-07-13 12:05:01 -04:00
Julian Bouzas
f743fff694
sco-source: add RateMatch IO
2020-07-13 12:04:56 -04:00
Wim Taymans
a459c1f226
acp: sync with master
2020-07-13 14:39:27 +02:00
Wim Taymans
be7ff66d0b
examples: clean up proxy
2020-07-13 13:12:20 +02:00
Wim Taymans
c173b23ac4
gst: use object_path to hide providers
...
Don't use the core info to manage the hiden providers, that info
can't be put there anymore because the session manager manages
the devices now.
Look at the object path instead and hide those with well known
prefixes.
2020-07-13 12:31:16 +02:00
Wim Taymans
8e9bbaf3dc
pipewiresrc: add option to resend last buffer on EOS
...
Add an option to resend the last buffer on EOS with an updated
timestamp. This can be used to make sure encoders fill up the
gap between last buffer and EOS, like with sparse streams from
screen capture.
2020-07-13 12:11:34 +02:00