Wim Taymans
09feb8a18c
module-rtp: improve ipv5 support
...
Use the IPV6 versions for loop and ttl. Improve debug.
2024-02-16 09:54:09 +01:00
Wim Taymans
49e7e3a0f0
module-rtp-sink: improve source.ip default
...
Use the default source.ip from the same address family as the
destination.ip.
See #3851
2024-02-15 15:31:54 +01:00
Jonas Holmberg
4715fa1775
module-rtp: Add source/destination.ip to props
...
Make it possible to change source.ip in module-rtp-source and
destination.ip in module-rtp-sink.
2024-02-08 09:30:58 +00:00
Wim Taymans
c37f9f9cf0
module-rtp: use sess.latency.msec also for sender
...
Use the sess.latency.msec also for the sender and use it to control the
NODE_LATENCY. Make it a float to be in line with the other time values.
Set is to a default of ptime, which was what it used to be.
This makes it possible to set the ptime to a smaller value than the
sess.latency.msec so that we send out multiple packets per quantum.
This will result in some bursty output for now but with a timer that can
be improved later.
Update the docs a little, mention the new rtp.ptime and rtp.frametime.
2024-01-25 15:49:41 +01:00
Dmitry Sharshakov
1fe6feac56
module-rtp: improve logging priorities
...
Previous state was useless for real debug at the current implementation level
2023-12-20 09:35:22 +00:00
Pauli Virtanen
fdcb02ed75
modules: add Module Name section to the module reference docs
2023-11-20 08:41:13 +00:00
Pauli Virtanen
eca773fc12
modules: strip "PipeWire Module:" from Doxygen page name
...
Make them appear nicer in the output.
2023-11-19 16:39:15 +00:00
Arun Raghavan
5617fa0501
module-rtp-sap/sink: try to bind sockets to an explicit interface
2023-10-24 07:17:21 +00:00
Sebastian Jaeckel
01d6724819
rtp-sink: fix ttl property which is NOT a bool
2023-05-12 14:34:17 +00:00
Wim Taymans
dd21ebf6b8
module-rtp: just log generic sendmsg error debug log
2023-04-19 21:34:39 +02:00
Wim Taymans
e5cf9ba1fd
modules: update docs
2023-04-06 11:49:25 +02:00
Wim Taymans
07e6f44e58
modules: clean up USAGE arguments
...
use () to mark optional arguments to avoid confusion with arrays.
Add some more optional arguments.
2023-03-22 16:35:55 +01:00
Gleb Popov
b9c86f337d
Add IPTOS_DSCP definition for !Linux platforms.
2023-03-15 16:53:41 +00:00
Wim Taymans
c5effbd979
module-rtp: add timer for ck requests
...
Scale RTP timestamps against the clock, allow some jitter.
Make method to query current RTP timestamps.
2023-03-09 13:14:23 +01:00
Wim Taymans
8e5b9da177
module-rtp: fix direct timestamps
...
fix some other properties.
2023-03-09 13:14:23 +01:00
Wim Taymans
3b685581a4
module-rtp: fix compilation
2023-03-09 13:14:23 +01:00
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