Wim Taymans
40194833ce
pw-link: add option to print ids
...
Add an option to print the object ids
Improve monitor output
2021-04-08 12:54:53 +02:00
Wim Taymans
a296007ed9
pw-link: implement monitor
2021-04-08 12:08:04 +02:00
Wim Taymans
a57dae918a
link-factory: improve the link factory
...
Make it possible to use object.id, node.name, node.nick,
node.description and object.path to select nodes and object.id,
port.name, port.alias and object.path to select ports when linking.
This makes it possible to use pw-cli creat-link to make nodes
without having to deal with the ids.
2021-04-08 11:06:44 +02:00
Wim Taymans
67a3f28bdf
tools: add new pw-link tool
...
pw-link can be used to list, link and unlink ports.
2021-04-07 18:56:44 +02:00
Wim Taymans
3dfd7f26b9
meson: improve tools build
...
Build the tools and sources from a list.
2021-04-07 18:56:44 +02:00
Wim Taymans
09243d55ae
pulse-server: fix leak in flatpak detection
2021-04-06 11:26:02 +02:00
Wim Taymans
78db493d0d
pulse-server: depend on pipewire.service
...
Make sure we only start after the main pipewire.service is started.
See https://bugzilla.redhat.com/show_bug.cgi?id=1943867
2021-04-06 10:24:25 +02:00
Wim Taymans
bdbd3e3f2e
pulse-server: Make sure we don't send null name and description
...
We can't send a null name or description because that makes clients
crash.
2021-04-05 17:36:38 +02:00
Pauli Virtanen
eb396f1ea8
pipewire: add environment variable for disabling journald logging
...
Logging to journald can be annoying at high debug levels, so add an easy
way to disable it.
2021-04-05 14:36:21 +03:00
Wim Taymans
68804a3082
gst: remove volatile, it causes a warning with newer gcc
...
See #1018
2021-04-05 10:28:54 +02:00
Wim Taymans
7bd6b725dc
Fix some warnings
...
When memfd and systemd are disabled.
See #987
2021-04-04 21:09:39 +02:00
Dmitry Sharshakov
97b01ed9b0
bluez5: add a property to select default profile
2021-04-04 08:43:09 +00:00
Erkki Seppälä
6a10ac36aa
pw-dot: added -9/--90 for outputting using 'splines = ortho'
...
This results in always drawing edges with 90-degree angles instead of
smooth splines. Graphs laid out this way may be look nicer sometimes,
but it is slower to lay out with large graphs.
2021-04-02 12:04:32 +03:00
Erkki Seppälä
71b53f1590
pw-dot: added -L/--lr for outputting the graph using 'rankdir = "LR"'
...
Graphs laid out this way may be look nicer sometimes.
2021-04-02 12:04:32 +03:00
Erkki Seppälä
21a36f3c51
pw-dot: using output - will write the output to stdout
...
This enables single-liners for viewing the graph in applicable shells.
2021-04-02 12:04:32 +03:00
Erkki Seppälä
4a0b7fa9b8
pw-dot: send diagnostic messages to stderr, not stdout
...
This will help when using stdout for other purposes in the
future (e.g. next commit).
2021-04-02 12:04:32 +03:00
Wim Taymans
8cf6da467f
pulse-server: use the name of the default sink
...
When setting a new default sink/source, use the name of the object
instead of the name used for selecting the sink/source. This makes
it possible to use the id to search for the device but still have
the device name in the metadata as is expected.
Fixes #1004
2021-04-02 10:07:39 +02:00
Wim Taymans
90de408e31
loopback: use _raw_build helpers
...
Now that the raw_builder supports wildcard for rate, use it in loopback
and add an option to force resampling as well.
2021-04-01 10:47:23 +02:00
Wim Taymans
7afb3bc1a4
pulse-server: add module properties
2021-04-01 09:35:31 +02:00
Wim Taymans
27e00d1be4
pulse-server: don't fix sample rate
...
Use the builder directly to leave the samplerate undefined so that we
adapt to the graph samplerate instead of forcing resampling.
2021-04-01 09:32:00 +02:00
Wim Taymans
4aa817771a
pulse-server: arguments can be NULL
...
And module-null-sink does not have mandatory arguments.
2021-04-01 09:04:55 +02:00
Wim Taymans
cc7cbaa83b
pulse-server: module-loopback fixes
...
source and sink need not be set and need to be mapped to the target
source/sink to connect to.
node.group needs to be a unique id shared by source/sink to make them
part of the same scheduling group and do clock sync.
Remove some unused properties
2021-04-01 08:24:51 +02:00
Wim Taymans
8383e86f33
pulse-server: module arguments can be NULL
2021-04-01 08:24:22 +02:00
Arun Raghavan
e7b04bca2c
pulse-server: Implement module-loopback
...
Implements all modargs other than rate adjustment and max latency
related ones, which do not make sense in our context.
Fixes: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/543
2021-03-31 18:19:36 -04:00
Wim Taymans
427e8abf0c
impl-node: improve reason string in recalc_graph
...
Don't just report "quantum changed" as the reason for recalculating
the graph but make it depend on what actually happened.
2021-03-31 13:30:03 +02:00
Pauli Virtanen
7b9792ffab
pulse-server: fix brace in wrong place
2021-03-31 11:13:07 +00:00
Wim Taymans
dd6a18d576
pulse-server: handle 0 id as default sink/source as well
...
Also handle 0 id as the default sink/source
See #756
2021-03-30 10:15:36 +02:00
Wim Taymans
efd52d633f
examples: only use memfd_create when defined
...
See #987
2021-03-30 09:59:07 +02:00
Dmitry Sharshakov
e7f2f450ff
bluez5: add parameter to use A2DP source as input
2021-03-30 09:21:12 +02:00
Wim Taymans
51c700a655
media-session: only save routes with the save flag set
...
We only want to save the route properties when they were changed
by a user action.
2021-03-29 15:52:31 +02:00
Wim Taymans
f78be58568
stream: Add node.autoconnect stream.properties
...
If the node.autoconnect property is set in the stream.properties,
ignore the AUTOCONNECT flag value. This makes it possible to
force AUTOCONNECT either way.
See #964
2021-03-29 14:19:34 +02:00
Wim Taymans
ec0b2b8dd7
stream: use PIPEWIRE_AUTOCONNECT env variable
...
Use the PIPEWIRE_AUTOCONNECT environment variable to set the value
of the NODE_AUTOCONNECT property. This way, you can start any
stream based app with PIPEWIRE_AUTOCONNECT=false to disable
the session manager autoconnect.
See #964
2021-03-29 14:05:25 +02:00
Wim Taymans
3878ad921a
pulse-server: handle 0 sink/source name or index as default
...
Some apps use 0 to get some sort of sink/source info. PulseAudio
likely has a source/sink at index 0 but PipeWire certainly does not.
Asking for 0 source/sink is always because of some hardcoded values
in the app and we can return the default source/sink without causing
any problems for other apps.
See #756
2021-03-29 13:50:37 +02:00
Wim Taymans
80ce2c94ac
alsa: add start-delay parameters to sink
...
The start-delay adds extra silence to the buffer before starting the
playback. The idea is to have more time to adapt to the device
startup and set the timer more accurately.
See #983 , #431
2021-03-29 13:20:14 +02:00
Wim Taymans
30659c5f61
media-session: remove double ;;
2021-03-29 11:41:30 +02:00
Wim Taymans
73f50bb964
improve debug
2021-03-29 11:41:06 +02:00
Pauli Virtanen
eb7df98cd6
pulse-server: minor fix
2021-03-27 21:53:49 +02:00
Wim Taymans
c85a04fb49
tools: add some check when parsing the profile info
...
Fail when we can't parse the profile info to avoid using invalid
values.
2021-03-27 20:37:26 +01:00
Wim Taymans
ae22852a9b
remove some useless checks
...
The variable was already dereferenced above and thus can't be NULL
2021-03-27 20:36:43 +01:00
Wim Taymans
d81fc9bcb4
introspect: remove impossible case
2021-03-27 18:37:21 +01:00
Pauli Virtanen
2681b8236b
media-session/pulse-server: more error checks + minor fixes
2021-03-27 19:16:19 +02:00
Wim Taymans
f0a2b6d01f
core: Always include fcntl
...
Fixes #833
2021-03-27 12:51:38 +01:00
Pauli Virtanen
54e06d9df0
bluez5: add additional aac encoder options, and implement optional vbr
2021-03-27 11:47:34 +00:00
Wim Taymans
eaf3b3a3c9
remote-node: remove the mix from the port
...
We add the mix in init and remove it again when clearing.
See #973
2021-03-26 21:14:42 +01:00
Wim Taymans
ea5a830c8a
global: always remove from the global map
...
We add the global to the global map to allocate an id. Remove the
global from the map in _destroy() instead of _unregister() to make
sure we always remove the global from the map, even if the global
was not registered.
See #973
2021-03-26 20:49:57 +01:00
George Kiagiadakis
511cb28e17
properties: clear SPA_DICT_FLAG_SORTED when adding/removing items
...
This allows calling spa_dict_qsort() externally on the dict,
ensuring that lookups will not break when items are added or removed.
2021-03-26 17:00:43 +00:00
Pauli Virtanen
6b5b56bcc7
pulse-server: use transportCodec prop for bluez codec messages
2021-03-26 16:59:07 +00:00
Wim Taymans
e3323f7bca
pulse-server: actually handle clearing of metadata
...
Make sure we also set the metadata back to NULL when the object is
removed.
2021-03-26 16:28:41 +01:00
Wim Taymans
98585e092c
pulse-server: handle metadata remove
...
Also handle the case where metadata is removed. Set the pointer to
the object to NULL. This can happen when the session manager restarts.
2021-03-26 16:04:45 +01:00
Guillaume Desmottes
9690820e63
keys: document PW_KEY_APP_VERSION
2021-03-26 14:22:07 +00:00