Wim Taymans
933743581b
module-rtp: fix rtp.media property
...
Use sess.media for the media type (audio/midi) because rtp.media is used
in the SDP to describe the media (midi and audio are both are audio).
2023-03-09 13:14:22 +01:00
Wim Taymans
be09198249
module-rtp: port source and sink to new stream
2023-03-09 13:14:22 +01:00
Wim Taymans
9a6fa2e6a1
module-rtp: use new random functions
2023-03-09 13:14:22 +01:00
Wim Taymans
56d2e1e880
module-rtp: improve SSRC, seq and timestamp randomness
2023-03-09 13:14:22 +01:00
Wim Taymans
a015edb934
module-rtp: fix some memory leaks
2023-03-09 13:14:22 +01:00
Wim Taymans
e010559ffe
module-rtp: don't autoconnect midi
...
Don't unload module for inactive source, we should signal the owner
of the module with a property update instead.
2023-03-09 13:14:22 +01:00
Wim Taymans
a48822c38a
module-rtp: make source from module
...
Add match rules to SAP to decide when to announce and create RTP
streams.
Use SAP to load an RTP source.
Remove SAP code from RTP source.
2023-03-09 13:14:22 +01:00
Wim Taymans
cb1e5661dc
move SAP in separate module
...
The idea is to have the rtp-source and rtp-sink be separate modules that
can be loaded a static ip/port as well.
The SAP module would then expose existing rtp-sinks or additionally load
rtp-sources based on SAP messages.
This makes things a bit more flexible when we also want to expose the
rtp-sink using zeroconf, for example.
2023-03-09 13:14:22 +01:00
Wim Taymans
7a923bc204
module-rtp-sink: use sess.media for media type
...
media.type is already taken.
2023-03-05 19:12:14 +01:00
Robert Rosengren
57a89e5723
module-rtp: Add configurable DSCP support
...
Add configurable DSCP support with the net.dscp option. Applying only on
RTP, not on SAP discovery.
2023-03-03 15:13:37 +00:00
Wim Taymans
fbd068977c
module-rtp: Add rtp-midi support
...
Add rtp-midi support with the media.type = midi option
2023-02-16 16:47:29 +01:00
Barnabás Pőcze
934ab3036e
treewide: use SPDX tags to specify copyright information
...
SPDX tags make the licensing information easy to understand and clear,
and they are machine parseable.
See https://spdx.dev for more information.
2023-02-16 10:54:48 +00:00
Wim Taymans
aa3b776f6f
module-rtp: resync after paused state
...
After the paused state, resync to the new clock time.
2023-02-15 11:06:01 +01:00
Wim Taymans
7e2dab876a
module-rtp-sink: handle buffer offset and size correctly
2023-02-02 16:08:40 +01:00
Wim Taymans
aed394cf89
module-rtp: use timestamps as ringbuffer index
...
Use the timestamps directly as the ringbuffer index. We can save some
conversions to bytes and there is a direct mapping to RTP timestamp,
clock position and ringbuffer index.
Simplify the source a little. Remove the buffering state, we always
start with read and write pointers separted by the target buffering.
2023-02-02 15:54:53 +01:00
Wim Taymans
b50fa83325
module-rtp-sink: improve sync
...
Always write to index of the clock, not just for the first packet.
This ensure the timestamp on the packet always matches the time it was
processed in the graph.
2023-02-01 20:06:19 +01:00
Wim Taymans
1a5de467db
module-rtp: support direct clock timestamps
...
Always use the timestamp of the graph clock for RTP packets. Add an
option to apply a random or fixed offset.
Add a ts-refclk option on the sender to specify a reference clock to
use for timestamping. This will activate the direct timestamp mode and
signal this in the SDP.
Parse ts-refclk and ts-offset from the SDP. Make it possible to match
them in rules. Add option to activate the direct-timestamp, where the
rate matching is disabled and the timestamps are used directly for
writing and reading from the ringbuffer using the graph clock.
This makes it possible to set a PTP clock on sink and source and avoid
rate matching by using a shared clock.
2023-02-01 18:31:33 +01:00
Wim Taymans
8d4f7df9d6
module-rtp-sink: use min-ptime and max-ptime
...
Use the MTU, min-ptime and max-ptime to calculate the packet size to
send.
2023-01-25 17:08:10 +01:00
Wim Taymans
80a6880f33
module-rtp-sink: add tool and ptime attributes
2023-01-25 16:22:18 +01:00
Dmitry Sharshakov
4bf1c2946e
module-rtp-sink: fix net.loop
...
Avoid uninitialized variable use
2023-01-25 10:39:24 +01:00
Wim Taymans
164e343dbf
remove pipewire/private.h includes when possible
...
In many places this is not needed.
Expose pw_impl_node_set_param() for adapter.
2023-01-20 16:08:38 +01:00
Wim Taymans
f472fd736d
fix includes
...
Only include debug we need. We usually only need the debug types.
2023-01-18 13:12:16 +01:00
Wim Taymans
9bf6fa05d1
module-rtp-sink: silence some messages
2022-12-08 12:10:22 +01:00
Gleb Popov
525e7aa734
FreeBSD build fixes.
2022-11-14 21:03:22 +03:00
Gleb Popov
018058ea35
Fix copy-paste typo in the warning message.
2022-11-14 20:58:14 +03:00
Wim Taymans
3e9b4657cb
modules: add since tag
2022-10-13 13:16:33 +02:00
Wim Taymans
9dd1c78f50
module-rtp: for multicast we need to add the TTL
2022-10-07 16:40:04 +02:00
Wim Taymans
c06f936a88
module-rtp: improve properties
2022-10-07 16:12:22 +02:00
Wim Taymans
37f57dc09f
module-rtp: add some more properties
2022-10-07 15:57:12 +02:00
Wim Taymans
f87654eb17
module-rtp: use MTU to set the latency
2022-10-07 12:59:29 +02:00
Wim Taymans
7fd16b8a77
module-rtp: set higher priotity on sender socket
2022-10-07 12:59:29 +02:00
Wim Taymans
4a41a03f5c
module-rtp: fix L24 sample size
2022-10-06 16:16:49 +02:00
Wim Taymans
dfb6206207
module-rtp: support more formats
2022-10-06 16:04:15 +02:00
Wim Taymans
2edfea8b5b
module-rtp: add pulse-server modules
2022-10-06 13:18:35 +02:00
Wim Taymans
be1159eb66
module-rtp: make sender work
...
Small cleanups
2022-10-06 11:41:01 +02:00
Wim Taymans
84c666db20
module-rtp: construct and send SAP
2022-10-05 21:42:36 +02:00
Wim Taymans
3e57570e9a
module-rtp: add beginnings of rtp-sink
2022-10-05 21:42:36 +02:00