LADI
/
spa
1
Fork 0
Commit Graph

10357 Commits

Author SHA1 Message Date
Wim Taymans 1c18e8aa69 handle some error cases 2023-03-16 12:28:29 +01:00
Wim Taymans c88f841a58 audioconvert: fix passthrough PortConfig enum 2023-03-16 11:59:07 +01:00
Wim Taymans 2ce722e740 pulse-server: handle NULL args in load-module 2023-03-16 11:53:59 +01:00
Wim Taymans 79b6dab5f9 modules: avoid some leaks in error paths 2023-03-16 11:44:56 +01:00
Wim Taymans 1985eb3549 module-combine-stream: make sure str is != NULL 2023-03-16 11:44:28 +01:00
Wim Taymans 026c55c0ce module-rtp: don't deref io_position when NULL 2023-03-16 11:26:20 +01:00
Wim Taymans a3875c38ac modules-raop-sink: improve error handling 2023-03-16 11:22:35 +01:00
Wim Taymans b4ef9fa333 pulse-tunnel: improve rate matching
Add the current fill level to the last known latency measurement right
before de do the rate matching. This improves accuracy of the matching.
2023-03-16 11:20:31 +01:00
Wim Taymans b757638000 module-pulse-tunnel: fix rate correction sign for capture
The capture delay calculation had the wrong sign, making the resampler
go in the wrong direction and causing pitch changes.

Fixes #3093
2023-03-16 09:48:47 +01:00
Wim Taymans 106836f7d6 module-raop: add audio rate in SDP 2023-03-15 18:32:12 +01:00
Wim Taymans d13099b9ff docs: add rtp-sap and rtp-session modules to docs 2023-03-15 18:01:15 +01:00
Gleb Popov 2a02479877 Fix rtp modules build on FreeBSD. 2023-03-15 16:53:41 +00:00
Gleb Popov 1217dee35d Fix module-zeroconf-publish.c build on FreeBSD. 2023-03-15 16:53:41 +00:00
Gleb Popov a83d3b0249 Fix node-driver.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
Gleb Popov 01096bf669 Disable alsa plugin on !Linux platforms.
It now includes Linux-specific headers.
2023-03-15 16:53:41 +00:00
Gleb Popov 8cd5d720bf Remove CirrusCI-based FreeBSD CI.
It doesn't seems to be used by anyone, so don't waste Cirrus resources.
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
Pauli Virtanen 1664df2c85 bluez5: guard against processing when errored or not started
Add some guards against doing processing when there has been an error or
the node is not started. Set error status to IO.  Continue driving on IO
errors.
2023-03-11 11:11:08 +00: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
Viktar Vauchkevich fe1b9c2d49 po: Update Belarusian translation 2023-03-11 10:33:23 +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 9dcfcd7099 ci: add job that builds with ASan and UBSan 2023-03-10 00:00:53 +01:00
Barnabás Pőcze defd9be03c ci: use meson to compile 2023-03-10 00:00:53 +01:00
Barnabás Pőcze 7b5ac42699 ci: use meson to install build artifacts 2023-03-10 00:00:53 +01:00
Barnabás Pőcze 6021cea49c ci: use meson to run tests 2023-03-10 00:00:53 +01:00
Barnabás Pőcze b382d2eba8 ci: do not omit "setup" from the meson command
meson prints the following warning:

  WARNING: Running the setup command as `meson [options]` instead
           of `meson setup [options]` is ambiguous and deprecated.
2023-03-10 00:00:52 +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 1276c946fd fix compilation 2023-03-09 17:27:57 +01:00