Wim Taymans
8e3ae33550
pulse: enable rtkit on the client
2020-08-05 17:37:17 +02:00
Wim Taymans
eeeca7ecd2
stream: set the right NODE_NAME
2020-08-05 13:43:56 +02:00
Wim Taymans
469dff0153
use global_update_keys
...
First set the properties in the object itself and then copy them
over to the global. This ensure that the global properties are
also in the object and makes code a bit cleaner.
It also make it possible to use the global id to make the property
values unique, if we want to later .
2020-08-05 12:55:33 +02:00
Wim Taymans
f79c347667
global: add method to update global keys
2020-08-05 12:29:19 +02:00
Wim Taymans
3abd46b619
jack: Use out node name from the server
...
Get the node name from the global info when we see it.
Check if the name changed and set the right result flag for the app.
2020-08-05 12:26:59 +02:00
Wim Taymans
cebd67e88b
properties: use the _for_each iterator
2020-08-05 12:26:26 +02:00
Wim Taymans
9290137931
pulse: handle NULL pw_stream
...
The pipewire stream might have been destroyed when the pulse stream
is freed.
2020-08-04 18:20:20 +02:00
Wim Taymans
377b3f9d42
pulse: always load the registry
...
Always get the registry, even if we're not using the introspect API
we still need it to keep track of the linked devices.
2020-08-04 18:16:02 +02:00
Wim Taymans
653465a1b1
pulse: handle device_name of NULL as error
2020-08-04 18:15:19 +02:00
Wim Taymans
979fec288e
stream: let the operation emit the TERMINATED state
...
When we disconnect, let the operation emit the TERMINATED state
because some apps expect this state to be emited asynchronously.
Makes GStreamer pulsesink work.
Fixes #210
2020-08-04 18:13:37 +02:00
Wim Taymans
94c23b7ed1
pulse: handle memory user_data of NULL
2020-08-04 18:11:58 +02:00
Wim Taymans
35376fc415
pulse: improve debug
2020-08-04 18:07:20 +02:00
Wim Taymans
9edb0c1206
pulse: actually remember the default source
2020-08-04 17:21:15 +02:00
Wim Taymans
db12f47505
0.3.9
2020-08-04 14:30:27 +02:00
Wim Taymans
ab999f00ae
link: don't connect to port destroy signal
...
Now that _port_destroy will first destroy all the links, there is no
need to listen for the destroy signal anymore in the link.
2020-08-04 14:13:44 +02:00
Wim Taymans
5bf6acad06
alsa: use PIPEWIRE_REMOTE env variable
2020-08-04 14:13:07 +02:00
Wim Taymans
64067bafe3
media-session: remove listener
2020-08-04 13:46:22 +02:00
Wim Taymans
77bd687bac
acp: fix size of array
2020-08-04 12:05:56 +02:00
Wim Taymans
007c50df56
stream: clear user data on flush
...
Or else we might add the memory to the free list again when
we free the buffers. Fixes audacity using the pulseaudio backend
in portaudio.
2020-08-03 21:53:51 +02:00
Wim Taymans
66816580bc
alsa: improve configuration of NICK
2020-08-03 18:16:53 +02:00
Wim Taymans
9943733b8c
acp: pass all properties when creating a card
...
They might contain other info like prefered card name etc.
2020-08-03 18:15:04 +02:00
Wim Taymans
d76b509995
jack: prefer nick for node name
...
The nick is shorter and nicer for jack applications. We have the
full description in the port alias 2.
2020-08-03 18:13:31 +02:00
Wim Taymans
d57da19f26
client-device: first set implementation, then register
...
Setting the implementation updates the properties so that we
have more info when creating the global.
2020-08-03 18:11:12 +02:00
Wim Taymans
7f7a8ccc88
acp: use some existing keys and add some new ones
2020-08-03 17:08:46 +02:00
Wim Taymans
79937676a4
alsa: add profile description in node description
2020-08-03 16:28:09 +02:00
Wim Taymans
a655e8f6df
alsa-util: fix check for digit
...
Fix the check for a digit by checking if the value is between the
*character* '0' (not *value* 0) and '9'.
2020-08-03 10:10:04 +02:00
Wim Taymans
2d76a00e20
stream: fix printf modifier
2020-08-03 09:56:37 +02:00
Wim Taymans
505f4c14b6
Makefile: set mixer and profile paths
2020-08-03 08:14:32 +02:00
Wim Taymans
2116b4d10a
uninstalled: add some comments to variables
2020-08-02 20:18:03 +02:00
Wim Taymans
edb3968c5c
docs: some small fixes and updates
2020-08-02 20:14:04 +02:00
Gleb Popov
be19e45ee1
Workaround subtle problem with FreeBSD CI.
2020-08-02 20:13:54 +02:00
Wim Taymans
407ea74513
don't use qsort_r, it's not implemented everywhere
...
Fixes #260
2020-08-02 12:50:56 +02:00
Wim Taymans
0b12cc96cc
pulse: remove metadata store
...
We don't actually need to store all the metadata, we just need to
track the default sink and source property and store the value.
2020-07-31 15:47:14 +02:00
Wim Taymans
f2cc0e6723
media-session: add some debug for enum-param
2020-07-31 15:21:39 +02:00
Wim Taymans
5bdd65e066
device: pass original seq in async reply
...
When we get an async reply from the implementer, use the original
seq from the caller in the reply.
Fixes !287
2020-07-31 15:19:45 +02:00
Wim Taymans
5e51cbe48e
media-session: improve param enumeration
...
Don't use subscribe, enum is more manageable.
Use user data field to check for changes.
Only enumerate readable params.
Enum all node params.
2020-07-31 13:59:25 +02:00
Wim Taymans
f231392093
pulse: improve param enumeration
...
Use user data field in param to check for changes and only
perform a clear+enum when it changed.
2020-07-31 13:57:19 +02:00
Wim Taymans
47ce374636
pulse: refactor param enumeration
2020-07-31 13:33:28 +02:00
Julian Bouzas
c388df1cf3
bluez5: include profile classes when doing enum profile
2020-07-31 10:53:51 +00:00
Wim Taymans
6f2e274b15
protocol: add a few more options for XDG_RUNTIME_DIR
...
PIPEWIRE_CORE can be used to specify a server name.
PIPEWIRE_REMOTE can be used to specify what server name to
connect to.
Either use the absolute path of the name to create and connect
to a server, or use a relative path. For a relative path, the
server name will be completed by prefixing the following paths
in order:
PIPEWIRE_RUNTIME_DIR environment variable,
XDG_RUNTIME_DIR environment variable,
HOME environment variable,
USERPROFILE environment variable,
home directory as stored in the password database.
Fixes #259
2020-07-31 12:46:58 +02:00
Wim Taymans
5f40bc6d4e
gst: support VideoCrop meta
...
Convert the VideoCrop metadata to GStreamer metadata.
2020-07-31 11:44:46 +02:00
Wim Taymans
6fd373ac83
examples: add support for YUV data
2020-07-31 11:44:20 +02:00
Wim Taymans
a5f85deabe
pulse: also use PIPEWIRE_LATENCY as a fallback
2020-07-30 18:23:23 +02:00
Wim Taymans
df76501d39
impl-node: update driver stats as well
...
If we have an underrun but are managed by another driver, also update
the driver stats.
2020-07-30 18:22:33 +02:00
Wim Taymans
aee95e76bb
pulse: use the right sample spec
2020-07-30 18:22:03 +02:00
Wim Taymans
c7d7dd91f8
permission: add M permission
...
The M permission is needed to set metadata on an object.
2020-07-30 16:35:14 +02:00
Wim Taymans
91d4806611
permission: add some helpers
...
Add PW_PERM_ALL as a shortcut for all permissions
Add PW_PERMISSION_FORMAT and PW_PERMISSION_ARGS to nicely format
permissions.
2020-07-30 16:26:29 +02:00
Wim Taymans
f5e78196c4
pulse: check that we have access to change metadata
2020-07-30 16:23:13 +02:00
Wim Taymans
8db9a2741b
metadata: only allow setting metadata on objects we can see
...
Allow a client to only set metadata on objects that it has
read access to.
2020-07-30 15:30:13 +02:00
Wim Taymans
bd8b239621
client: add function to check permissions of a client
2020-07-30 15:16:30 +02:00