- 23 Sep, 2021 10 commits
-
-
Wim Taymans authored
Fixes #1642
-
-
Wim Taymans authored
Add a pulse.latency option to override the default 100ms latency.
-
Wim Taymans authored
20ms is too small and might be a typo from the pulseaudio 200ms default latency.
-
Wim Taymans authored
-
Wim Taymans authored
Fixes #1637
-
Peter Hutterer authored
No point spamming the journal here.
-
Peter Hutterer authored
-
Peter Hutterer authored
This ensures the log messages show up with the right module name prefix
-
Peter Hutterer authored
-
- 22 Sep, 2021 9 commits
-
-
P V authored
BlueZ 6 is planning to make most of libbluetooth private. In particular, the direct hci access is planned to be removed. This is currently used for determining adapter msbc support. Instead of using libbluetooth API, try to determine msbc support by a connect() attempt, which the kernel should reject when not supported.
-
Wim Taymans authored
Fixes #1638
-
George Kiagiadakis authored
Coverity scans the source code for static analysis, but its parser has a couple of flaws... The most common one is the failure to parse deprecation macros in enum definitions, like: ``` G_PARAM_PRIVATE GLIB_DEPRECATED_ENUMERATOR_IN_2_26 = G_PARAM_STATIC_NAME, ^ SD_JOURNAL_SYSTEM_ONLY _sd_deprecated_ = SD_JOURNAL_SYSTEM /* old name */ ^ ``` but also recent gcc built-in macros, like: ``` #if __has_builtin(__builtin_is_constant_evaluated) ^ #if _GLIBCXX_HAS_BUILTIN(__has_unique_object_representations) ^ ``` The solution is to replace the code with regular expressions at an earlier stage. This can be configured directly in coverity with cov-configure
-
Wim Taymans authored
-
media-session is past the point of being a mere example, let's promote it out of the subdirectory. pw-reserve is moved to tools/
-
Peter Hutterer authored
When building with -Dexamples=disabled, the whole src/examples is skipped, so we never declare that variable. Fixes #1551
-
Peter Hutterer authored
Missing from some tests, superfluous in the other test because it was already called in the test_log_levels() helper function
-
Peter Hutterer authored
We can only log for a level below our current one if we are two above NONE. And by the same instance, we don't expect NONE messages to show up.
-
Peter Hutterer authored
False positive, we abort in the cases where this isn't initialized. Fixes e1672f97
-
- 21 Sep, 2021 21 commits
-
-
Anders Jonsson authored
-
Wim Taymans authored
Fixes #1486
-
Wim Taymans authored
As long as we are inactive, don't update our internal buffer_size or sample rate. This way, when we become active, we will emit the right callback with the right value instead of doing nothing. Fixes crashes in Carla.
-
Wim Taymans authored
Boolean switches can also be true with 'y', 'yes', 't' and 'on'
-
Javier Martinez Canillas authored
The requests_ vector contains the requests created for a camera on start() but the vector elements are not removed on camera stop(). This leads to a segfault, when these requests that are no longer valid are queued again. Also move the streamName_ map clear to LibCamera::stop() where it should be, since its elements are added in the LibCamera::start() function.
-
Javier Martinez Canillas authored
The camera is connected in the spa_libcamera_stream_on() function but the disconnect happen in LibCamera::stop(). It makes more sense to have this two operations separated as it's done for the connection and start, since the camera then can be stopped/started without needing to do a reconnect. Move the camera disconnect to spa_libcamera_stream_off() for the reason mentioned above but also to make the code more consistent and symmetric.
-
Javier Martinez Canillas authored
The libcamera application developer guide mentions that buffers allocated by the FrameBufferAllocator must be explicitly freed before deleting it.
-
Javier Martinez Canillas authored
Camera is currently stopped and started in the spa_libcamera_set_format() function, but this leads to a segfault due attempting to access a buffers field of an already freed libcamera::FrameBufferAllocator instance. The FrameBufferAllocator instance is freed in LibCamera::stop(), that is called by spa_libcamera_stream_off() as handler of the node commands SPA_NODE_COMMAND_Pause and SPA_NODE_COMMAND_Suspend. Since the camera was already stopped, there's no need to attempt to stop it again. In fact, the camera shouldn't be stopped/started at all in the spa_libcamera_set_format() function but instead only as an action of the SPA_NODE_COMMAND_{Pause,Suspend} and SPA_NODE_COMMAND_Start commands. And same for the stop that's done in the LibCamera::close() function, it shouldn't be needed because the camera is already stopped before closing. Fixes #1513
-
Javier Martinez Canillas authored
There is no need to set and validate the configuration when the camera is started, since this was already made when the camera was opened. The configuration only needs to be set again if the port format changes due a SPA_PARAM_Format parameter.
-
Javier Martinez Canillas authored
The libcamera wrapper provides a set of C functions that wraps libcamera's C++ interface. But there isn't a function to call LibCamera::set_config().
-
Wim Taymans authored
Don't use the audio.channels and audio.rate settings influence the passthrough formats. See #93
-
Wim Taymans authored
This reverts commit f22dd9d7. Obsolete now that pw_init and factory loading/unloading has been made thread safe.
-
Wim Taymans authored
-
Wim Taymans authored
-
Wim Taymans authored
-
Wim Taymans authored
The handle might want to unload plugins and we thus need to release the lock.
-
Wim Taymans authored
-
Wim Taymans authored
-
Wim Taymans authored
Simplify channel layout management a little. Use the bitorder and interleaving to read and format the DSD in the buffer.
-
Wim Taymans authored
-
Wim Taymans authored
And make alsa report the interleaving.
-