Carlos Rafael Giani
955c9ae837
module-rtp: Get the current stream time in a reusable manner
...
That way, redundant pw_stream_get_nsec() and clock_gettime()
calls can be avoided.
2025-10-27 22:40:22 +01:00
Wim Taymans
f453b1545d
audio: don't use SPA_AUDIO_MAX_CHANNELS in some places
...
When we know the max size of the array, just use this instead of the
SPA_AUDIO_MAX_CHANNELS constant.
2025-10-20 18:31:17 +02:00
Carlos Rafael Giani
c9a8b8629f
module-rtp: Limit actual max buffer size to an integer multiple of stride
...
Opus and MIDI code get TODOs added, since it is currently unclear how to
implement that fix for them.
2025-08-05 17:54:56 +00:00
Wim Taymans
42b779974c
module-rtp: don't leak opus codec and ptp_sender
...
Add a deinit() function and use it to free the opus codec we created in
init().
Also free the ptp_sender when it was created.
2025-07-24 13:16:15 +02:00
Carlos Rafael Giani
2bcc8589fa
module-rtp: Fix and improve direct timestamp mode and documentation
...
Direct timestamp mode was incorrectly using over/underrun detection logic
and fill level tracking logic that is actually meant for the other mode
(referred to from now on as "constant latency mode"). Over/underruns are
tracked implicitly in the direct timestamp mode, and the absolute fill
level is not relevant in that mode, since the latency is not needed to
be constant then.
Also improve log lines and the RTP module documentation to define these
buffer modes clearly and explain their differences and use cases.
Opus and MIDI code get TODOs added, since their direct timestamp mode
implementations still may be incorrect. Fixing those will be done in
a separate commit.
2025-07-24 07:28:53 +00:00
Wim Taymans
47ee9ef10a
module-rtp: set the EMPTY flag on empty buffers
...
And make sure other flags are reset.
2025-07-03 20:57:19 +02:00
Wim Taymans
722776cf65
Remove some hardcoded channel number values
...
Mostly related to the number of channels.
2025-04-04 15:46:03 +02:00
Wim Taymans
cfc8d414a9
module-rtp: fix SSRC warnings
...
Fix indentation and also suppress the SSRC warning for other formats
than audio.
2025-02-17 10:21:17 +01:00
Wim Taymans
e1fc3de595
modules: use pw_stream_set_rate() some more
2024-11-22 09:55:36 +01:00
Wim Taymans
804df3389a
modules: use pw_stream_set_rate() when we can
2024-11-22 09:49:27 +01:00
Wim Taymans
1ae4374ccf
Fix compilation with -Werror=float-conversion
...
Better make the conversions explicit so that we don't get any surprises.
Fixes #4065
2024-06-18 12:17:56 +02:00
Wim Taymans
9a5609de2b
modules: move some spa_debug_mem to the log
...
Instead of dumping to stderr, write it to the log file.
2024-01-11 17:49:50 +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
Wim Taymans
126e03ec73
rtp: add option to ignore SSRC
...
This is useful when there is a fixed receiver and the sender can be
restarted.
2023-07-06 12:55:28 +02:00
Wim Taymans
51a970f5b7
module-rtp: fix writing of audio samples
...
Always write samples according to the current write position, only use
the graph timestamp to align.
2023-03-13 15:14:41 +01:00
Wim Taymans
59d5d93878
module-rtp: fix compilation without opus
2023-03-12 19:04:14 +01:00
Wim Taymans
345582dd15
module-rtp: add opus encoding
2023-03-12 18:40:36 +01:00