Gleb Popov
1217dee35d
Fix module-zeroconf-publish.c build on FreeBSD.
2023-03-15 16:53:41 +00:00
Gleb Popov
b9c86f337d
Add IPTOS_DSCP definition for !Linux platforms.
2023-03-15 16:53:41 +00:00
Gleb Popov
91250f8012
Fix rt-module.c build on FreeBSD.
2023-03-15 16:53:41 +00:00
Gleb Popov
a83d3e56c6
Move ENODATA definition into the utils.h header for more visibility.
2023-03-15 16:53:41 +00:00
Wim Taymans
114e678243
module-raop: fix compilation
2023-03-15 17:50:49 +01:00
Wim Taymans
8167e1b9be
module-raop: add match rules for discover
...
Useful for selecting only ip4 streams or for setting up the password.
2023-03-15 17:23:41 +01:00
Wim Taymans
9e56fae236
module-raop: use newer openssl API when we can
2023-03-15 15:57:26 +01:00
Wim Taymans
deda8a10d1
module-raop: fix memory leak
...
Don't leak the pending messages.
2023-03-15 15:56:45 +01:00
Wim Taymans
af9d8072a3
module-raop: remove unused include
2023-03-15 12:50:27 +01:00
Wim Taymans
9a4a4fe9c4
module-raop: Use new openssl methods
...
Fix Digest, we need to use the method to generate a new Digest for each
request.
Use newer openssl methods instead of deprecated ones. The RSA sign still
need to be ported.
2023-03-15 10:29:35 +01:00
Wim Taymans
98222ab2ae
module-raop: improve properties
...
Try to make a better NODE_NAME and NODE_DESCRIPTION using the
hostname and ip version.
2023-03-14 10:34:45 +01: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
6230154677
module-rtp: include config.h to get HAVE_OPUS
2023-03-13 12:50:32 +01:00
Wim Taymans
d2f7d5efe7
module-rtp: add opus to mDNS
2023-03-13 12:48:13 +01:00
Wim Taymans
bc6c19ccdf
pulse-tunnel: translate pulse error to spa error
...
Pulseaudio has its own error enumeration, convert them to spa errors so
that we report the right errors.
2023-03-13 12:26:20 +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
Wim Taymans
bcc052f5f1
module-rtp: move stream init to specific media types
...
Move the stream function setup to a stream specific method.
Keep a separate stream format, that can be different later from the
rtp format once we add encoding.
Rename some methods to make them more unique.
2023-03-12 18:40:36 +01:00
Barnabás Pőcze
35829468f8
meson.build: remove explicit install_dir
...
Executables are installed in the bindir by default. And
furthermore if the directory is explicitly specified, then
the target won't be considered when setting up $PATH in the devenv.
Fixes 1ef43a5255
2023-03-12 10:37:37 +01:00
Robert Mader
8fff69353b
gst: deviceprodiver: Sort devices by session priority
...
Applications using the device provider typically list devices in the
order they were added. In order to ensure that apps pick nodes like cameras
with the highest priority by default, sort devices accordingly.
This unfortunately does not not have an effect on nodes added later,
e.g. on hotplug.
Closes https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3072
2023-03-11 10:55:07 +01:00
Barnabás Pőcze
1ef43a5255
meson.build: install symbolic links instead of compiling multiple times
...
Currently, among others, the `pipewire-pulse` executable is an
exact copy of the `pipewire` executable. Use meson's
`install_symlink()` to avoid the need for compiling the same thing
multiple times. Also use `custom_target()` so that the aliases
are available in an uninstalled environment.
Do the same for `pw-cat`. The benefit is that all aliases
of `pw-cat` are now available in an uninstalled environment.
This commit increasese the minimum meson version to 0.61.1
as that is needed for `install_symlink()`.
The reason for using 0.61.1 instead of 0.61.0 is the following bug:
https://github.com/mesonbuild/meson/issues/9820
2023-03-10 19:50:29 +01:00
Wim Taymans
f3230ca2e6
module-rtp: fix sender latency
...
The sender should ask for a latency that matches the packet size, not
the playout latency, that is for the receiver only.
2023-03-10 17:29:43 +01:00
Wim Taymans
7c9ce63795
impl-link: use spa_aprintf when we can
2023-03-10 12:31:35 +01:00
Wim Taymans
2429674970
Merge branch 'master' into 'fix_san_build'
...
# Conflicts:
# src/modules/module-rtp/apple-midi.h
2023-03-10 10:10:25 +00:00
Wim Taymans
f841a0d3f1
module-rtp: send journal feedback
...
Parse the journal and send feedback.
Handle the NO and RS commands.
2023-03-10 10:47:03 +01:00
Barnabás Pőcze
82e30d46a9
pipewire: module-rtp: fix compilation with UBSan
...
The type of `0xffff` is `int`, and UBSan does not like
when that value is shifted left by 16 bits, which causes
e.g.
case APPLE_MIDI_CMD_IN:
to not compile with the following error:
error: case label does not reduce to an integer constant
One could use `0xffffu` to force the type to be `unsigned int`,
or simply use `0xffff0000` which has no shifts. This patch
does the latter.
2023-03-10 00:00:51 +01:00
Barnabás Pőcze
57cd5611d1
pipewire: module-rtp: add missing include
...
Include `stdint.h` in `apple-midi.h` to make it self-contained.
2023-03-10 00:00:32 +01:00
Wim Taymans
670bf8fe8f
echo-cancel: add wav debug file support
2023-03-09 16:31:30 +01:00
Wim Taymans
7b13f6d26b
module-rtp: data and ctrl socket have different initiator
2023-03-09 13:14:23 +01: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
25f4e38781
module-rtp: keep track who initiated the session
2023-03-09 13:14:22 +01:00
Wim Taymans
3b33098cd7
module-rtp: improve session setup
2023-03-09 13:14:22 +01:00
Wim Taymans
0885899b7a
module-rtp: fix docs
2023-03-09 13:14:22 +01:00
Wim Taymans
9c45bb9c8d
module-rtp: use default source.ip
2023-03-09 13:14:22 +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
9e67d6781d
module-rtp: fix loading of source
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
e8119cb087
docs: improve docs
2023-03-09 13:14:22 +01:00
Wim Taymans
3208677ec3
pipewire-pulse: port module-rtp-send
...
In addition to loading the rtp-sink module, we now also need to load the
SAP module to announce this stream with SAP.
2023-03-09 13:14:22 +01:00
Wim Taymans
77b7c3d180
pipewire-pulse: port module-rtp-recv
...
Use the new module-rtp-sap to listen and create RTP streams from
SAP.
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
eca9bbf73b
module-rtp-sap: handle session timeout
...
Handle module unload
2023-03-09 13:14:22 +01:00
Wim Taymans
de6f04a1ac
module-rtp-sap: add default rules
2023-03-09 13:14:22 +01:00
Wim Taymans
104ecad44d
module-rtp: fix SAP multicast send/recv
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