Wim Taymans
004d3d900a
pulse-server: improve debug
2023-05-24 18:01:19 +02:00
Wim Taymans
894eeae03c
impl-node: add id and name to pw_node_target
...
Make a copy of the node name into a statically allocated array. This is
for debugging purposes only but might crash if we do a name change while
the data thread is reading it.
Make it possible to do reposition on the client side by copying the id
to the target. The client side does not have a node in the target so we
can't deref it.
2023-05-24 14:05:03 +02:00
Bennett Hardwick
4843928370
Fix jackdbus-detect module name in comment
2023-05-24 11:44:09 +00:00
Sebastian Jaeckel
dfeacaafdd
rtp-sap: use correct property key to get channel names
2023-05-24 08:32:42 +00:00
Sebastian Jaeckel
39d6e40abd
rtp-sap,AES67: reorder sdp records to be compatible with Dante/AES67 devices
...
A software called `Dante Controller` is needed to configure Dante
devices (which also support AES67). This software is picky about the
order in which SDP records are received and parsed.
Changing the order or adding new records in between leads to faulty
display of our stream within `Dante Controller` (missing channel display
etc.) and the user is then unable to connect any Dante device to the
AES67 stream.
2023-05-24 08:32:42 +00:00
Sebastian Jaeckel
31ffa09c16
rtp-sap: use the ptime from the stream in the announcement and omit the decimal ms if they are 0
2023-05-24 08:32:42 +00:00
Sebastian Jaeckel
d08439316b
rtp/stream: calculate and format the ptime property as float
2023-05-24 08:32:42 +00:00
Wim Taymans
b74f2e19a7
impl-node: remove duplicated fields
...
Move all of the info to trigger a node into the target so that
we can copy it around easily.
2023-05-23 16:46:30 +02:00
Wim Taymans
b8fe832188
impl-node: run the remote driver node logic remotely
...
Don't signal the pipewire daemon to run the driver. We can transfer the
complete driver state to the client and run everything there.
2023-05-22 17:10:01 +02:00
Wim Taymans
a46076b207
Revert "impl-node: run the remote driver node logic remotely"
...
This reverts commit 2f67a6a5b4 .
This needs more work and makes easyeffects fail
2023-05-22 14:54:38 +02:00
Wim Taymans
79d1278b2e
fix -UFASTPATH compilation
2023-05-22 11:30:38 +02:00
Wim Taymans
7ffe64f7af
client-node: make old driver nodes work
...
Bump the client-node version because we use the writefd differently now.
Support driver nodes using the old version somewhat. The stats will be
wrong but then again, we don't have any flatpak driver nodes that could
use an older version.
2023-05-22 11:03:20 +02:00
Wim Taymans
0135a1fc05
client-node: signal graph complete
...
Use the writefd for waking up the server when the graph completed. Make
this emit the complete event so that the profiler can capture the
data.
2023-05-22 10:30:01 +02:00
Wim Taymans
2f67a6a5b4
impl-node: run the remote driver node logic remotely
...
Don't signal the pipewire daemon to run the driver. We can transfer the
complete driver state to the client and run everything there.
2023-05-22 10:29:13 +02:00
Wim Taymans
c5e1515b7a
context: add method to add/remove context listener
2023-05-21 15:45:45 +02:00
Pauli Virtanen
38860630a5
pulse-server: module-gsettings: check schemas exist before starting
...
Check the required GSettings schemas exist before trying to use them, as
g_settings_new aborts if they are missing. Instead, make it just log
errors.
2023-05-21 10:18:56 +00:00
Wim Taymans
7da1094819
remote-node: update some internal state
...
This is not really used yet but when we get an activation record from
the server we can update the node stet some more.
2023-05-19 15:25:40 +02:00
Wim Taymans
05f5e416e2
filter-chain: include unistd for getcwd
2023-05-17 12:19:57 +02:00
Wim Taymans
782d5af050
pulse-server: add server.dbus-name option
...
Add an option to set the name for the dbus service. Setting an
empty name will skip dbus registration.
See #2987
2023-05-17 12:16:16 +02:00
Wim Taymans
135647f193
module-filter-chain: do better error reporting
...
When we find no valid sample file to read, go through all files and
report why they fail to load. Also display the current working directory
so that we can see where file are loaded from.
See #3223
2023-05-17 11:01:26 +02:00
Wim Taymans
ca17672871
module-filter-chain: give better error when load fails
...
See #3223
2023-05-16 22:33:52 +02:00
Wim Taymans
a0304c6691
module-rtp: sync session unlink with data thread
...
See #3217
2023-05-15 12:47:37 +02:00
Wim Taymans
a15517851e
module-rtp: fix sess.media usage
2023-05-15 12:34:56 +02:00
Wim Taymans
d3896d290e
module-rtp: set default sess.media in properties
...
Set a default sess.media in properties because we will use it later.
2023-05-15 12:23:28 +02:00
Wim Taymans
9035b97b62
module-rt: improve messages
...
Move some warnings to info.
Only show 1 warning with all the info why module-rt can't provide
realtime scheduling.
Fixes #3194
2023-05-15 09:31:33 +02:00
Wim Taymans
4c48c7e7b9
module-roc-source: make sure we don't overflow target_latency
...
See #2641
2023-05-12 16:51:49 +02:00
Wim Taymans
bd28637233
module-rtp-sap: ttl is uint32_t
2023-05-12 16:37:25 +02:00
Sebastian Jaeckel
01d6724819
rtp-sink: fix ttl property which is NOT a bool
2023-05-12 14:34:17 +00:00
Wim Taymans
741037f1ae
impl-node: move signalfd into pw_node_target
...
We don't need an extra signal_func, we can write to the signalfd
directly.
2023-05-12 13:02:47 +02:00
Wim Taymans
e3d715dfdf
module-raop: only send volume when recording
...
See #3210
2023-05-12 10:48:40 +02:00
Wim Taymans
7b0c019a2b
pulse-server: include rate/format for tunnel
2023-05-12 10:11:17 +02:00
Wim Taymans
7eeb9a63f8
pulse-server: remove / when no target object
2023-05-12 10:11:01 +02:00
Wim Taymans
150e7031ae
pulse-server: improve channel formatting
2023-05-12 10:09:42 +02:00
Barnabás Pőcze
2ba9881b4d
pulse-server: pending-sample: handle client disconnection correctly
...
Previously, a client disconnecting while a sample was playing could
lead to issues. For example, if a client disconnected before the
"ready" signal of the sample-play arrives, `operation_new_cb()`
would be called and that would try to use the client's pw_manager,
however, that has previously been destroyed in `client_disconnect()`.
If the client disconnected after the "ready" signal but before the reply
has been sent, then `sample_play_ready_reply()` would never be called
since operations are completed via the client's pw_manager which
would already be destroyed at that point.
Fix this by installing a listener on the client, and properly
cancelling the operation and making sure that the pending_sample
is correctly destroyed.
2023-05-10 18:57:20 +00:00
Barnabás Pőcze
bd510bf602
pulse-server: pending-sample: add on_ prefix to event handlers
2023-05-10 18:57:20 +00:00
Barnabás Pőcze
0395424461
pulse-server: add operation_free_by_tag()
2023-05-10 18:57:20 +00:00
Barnabás Pőcze
dd5f0e6bea
pulse-server: pending-sample: only start operation if not replied already
2023-05-10 18:57:20 +00:00
Barnabás Pőcze
c25b6c973e
pulse-server: pending-sample: factor out freeing logic
2023-05-10 18:57:20 +00:00
Barnabás Pőcze
cc702dac69
pulse-server: pending-sample: only send reply once
2023-05-10 18:57:20 +00:00
Barnabás Pőcze
edad053911
pulse-server: pending-sample: set replied flag on error
...
Set the `pending_sample::replied` flag when an error reply
is sent to the client.
2023-05-10 18:57:20 +00:00
Barnabás Pőcze
dd7c47bb3d
pulse-server: pending-sample: rename ready to replied
...
Rename `pending_sample::ready` to `pending_sample::replied` because
it is set when a reply is sent, not when the ready signal comes.
2023-05-10 18:57:20 +00:00
Barnabás Pőcze
e37da42632
pulse-server: move sample playing into pending-sample.c
2023-05-10 18:57:20 +00:00
Sebastian Jaeckel
3ec0e1499f
rtp-sap: use correct audio format string for L24 mime
2023-05-10 17:40:30 +00:00
Sebastian Jaeckel
44feba4bb4
rtp-sap: decrement session counter when a session is freed
2023-05-10 17:40:30 +00:00
Wim Taymans
4353f9eb75
module-jack: make stream ports physical
...
Just like the ports we connect to.
2023-05-10 18:00:44 +02:00
Dmitry Sharshakov
249cf9bfbe
chore: fix warnings shown by Clang 16
...
These might have existed earlier, but fixing anyway
2023-05-09 08:31:56 +00:00
Wim Taymans
67df9d2251
module-jack: add midi support.
...
Move streams in separate struct, refactor and reuse some code.
Add midi ports and convert to/from pw and jack midi.
2023-05-08 17:06:17 +02:00
Wim Taymans
d2cd65b6e2
module-jack: add volume control
2023-05-08 11:34:00 +02:00
Wim Taymans
685ada05f0
module-jack: also search in PREFIX
2023-05-08 10:45:53 +02:00
Wim Taymans
43e2978255
module-pipe: reword docs from the perspective of the module
2023-05-07 20:53:04 +02:00