1255 Commits

Author SHA1 Message Date
Khem Raj 7b4333942b mpd: fix build against fmt 12.2.0
Since fmt 12.2.0, <fmt/core.h> is a shim that only includes <fmt/base.h>,
which does not declare fmt::format(). Building mpd 0.24.9 against it
fails with:

  src/net/ToString.cxx:80:16: error: no member named 'format' in namespace 'fmt'
  src/lib/avahi/Publisher.cxx:37:9: error: no member named 'format' in namespace 'fmt'

Add a patch that includes <fmt/format.h> directly in the files that
call fmt::format(). This mirrors the upstream fix (MPD commits
88d5b5248d71 and 109c26258b9d), extended to the files present in the
0.24.9 release that call fmt::format() but were not covered by those
commits.

Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-07-12 17:39:44 -07:00
Khem Raj f4da51499d librav1e: fix nasm-native dependency override for x86-64
The DEPENDS append used the raw TARGET_ARCH value "x86_64" as an
override:

  DEPENDS:append:x86_64 = " nasm-native"

but OVERRIDES is built from TRANSLATED_TARGET_ARCH, which replaces "_"
with "-", so the effective override token is "x86-64". The "x86_64"
form never matches and nasm-native is never pulled in, so do_compile
fails on x86-64 with:

  error: Unable to run nasm: No such file or directory (os error 2)

Use the correct "x86-64" token (matching the INHIBIT_PACKAGE_DEBUG_SPLIT
line right below it) and also add the "x86" variant for 32-bit x86
targets, mirroring dav1d.

Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-07-12 17:39:44 -07:00
Khem Raj f45c615323 gerbera: fix build against fmt 12.2.0
fmt 12.2.0 turns <fmt/core.h> into a shim that only pulls in
<fmt/base.h>, which no longer declares fmt::format() and no longer drags
in <cstring> transitively. gerbera 3.0.0 relied on both, so do_compile
fails first with:

  src/exceptions.cc:37:31: error: no member named 'format' in namespace 'fmt'

and, once that is addressed, with a second wave of:

  src/util/thread_runner.h:194:68: error: no member named 'strerror' in namespace 'std'
  src/content/inotify/mt_inotify.cc:163:13: error: no member named 'memcpy' in namespace 'std'
  src/util/url_utils.cc:144:24: error: no member named 'strchr' in namespace 'std'

Add two backport patches:

* 0001 switches the central headers exceptions.h and search_handler.h
  from <fmt/core.h> to <fmt/format.h> (upstream commit 9507706136fd).
* 0002 adds an explicit #include <cstring> to every translation unit
  that uses std::strerror/std::memcpy/std::strchr (based on upstream
  commit 7caa9ae9ebf5, extended to cover all affected files in this
  release).

Neither fix is in any released gerbera tag (both are master-only), so a
version bump would not help; backporting is the least invasive option.

Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-07-12 17:39:43 -07:00
Alex Kiernan 0207553f41 pjproject: Add recipe
SIP/RTP/NAT-traversal stack plus SWIG-generated pjsua2 Python bindings.

AI-Generated: Claude Sonnet 5 (claude.ai/code)
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-07-11 08:24:44 -07:00
Markus Volk 6dbf718454 pipewire: update 1.6.7 -> 1.6.8
PipeWire 1.6.8 (2026-07-09)

This is a bugfix release that is API and ABI compatible with the previous
1.6.x releases.

Highlights
  - Fix a data race in JACK that could cause lost MIDI events in ardour.
  - Fix some unbounded memory allocations.
  - Various small fixes.

PipeWire
  - Avoid some graph recalcs, which fixes a bug when suspending a node
    while it is active.

Modules
  - Do Content-Length and allocation check in RAOP to avoid OOM errors.
  - Fix a potential memory leak in the error path of client-node. (#5348)

SPA
  - Fix filter-graph dynamic graph updates.
  - Avoid 100% when unplugging a card.
  - Fix filter-graph volumes when the filter is loaded inside a node with
    hardware volume. (#5344)
  - Add normalize and latency options to the SOFA filter. (#5322)

Bluetooth
  - Fix a potential leak when transport fails to start.

Pulse-server
  - Avoid stack exhaustion via unbounded alloca.

JACK
  - Fix a data race in jack_port_get_buffer() when called from concurrent
    threads, like in ardour. (#5324)

GStreamer
  - Skip invalid crop metadata.
  - Avoid crash because metadata listener was registered twice.

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-07-10 09:05:06 -07:00
Leon Anavi 17afdec9d8 libheif: Upgrade 1.21.2 -> 1.23.1
Upgrade to release 1.23.1.

New features:
- FFmpeg decoder plugin gains AV1, VVC, JPEG, and JPEG 2000/HTJ2K
  decoding
- SVT-AV1 encoder: new tune=iq and ms-ssim tune parameters
- C++ API: added getters/setters for the CLLI and MDCV HDR metadata
  boxes
- Sequence decoder now scales the alpha auxiliary track to the main
  image size

Bug fixes:
- Fixed pixi box writing for multi-channel images
- Corrected the placement of the TAI clock_type field into the top
  2 bits
- Empty/unset plugin directory is no longer scanned

Security fixes:
- CVE-TBD (GHSA-jc8f-p23p-5hjg) Integer underflow in Fraction
  constructor via double clap transform application
- CVE-TBD (GHSA-73p7-m7gg-w2jv) Out-of-bounds read in uncompressed
  unci tile range slicing
= CVE-TBD (GHSA-xpw3-9rhw-482x) Heap out of bounds write in libheif
  uncompressed encoder when writing images with mismatched
  auxiliary alpha dimensions
- CVE-TBD (GHSA-9ww4-9v47-m7pj) Reachable assertion in
  HeifContext::get_track() aborts on a valid-but-empty HEIF
  sequence file
- (GHSA-46rp-pcq2-rpmr) Heap out-of-bounds write in the
  uncompressed encoder for RRGGBB images with interleaved bit-depth
  lower or equal to 8

Remove CVE-2026-3949.patch because the fix has been included in
the source code for this release of libheif.

This work was sponsored by GOVCERT.LU.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-07-07 11:22:41 -07:00
Ross Burton 4182694dbb librav1e: make nasm dependency x86-specific
nasm is an x86 assembler, so only depend on it (and work around the
build paths errors) on x86-64 (the assembler fastpaths are explicitly
64-bit only).

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-07-07 00:29:02 -07:00
Harsh Rai 88409f1cde pipewire: add MP3 compressed offload support
Add a PipeWire Pulse virtual sink and forwarder for compressed offload, enabling MP3 compressed Pulse streams to be routed to a PAL compressed sink.

Signed-off-by: Harsh Rai <harsh.rai@oss.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-07-07 00:29:01 -07:00
Khem Raj f2ecf28404 libcamera: fix malformed -Wno-error=array-bounds flag
Drop the stray trailing '=' that produced an invalid compiler option.

Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-28 00:59:24 -07:00
Khem Raj 9082b0af3b aravis: upgrade 0.8.31 -> 0.8.36
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-28 00:59:08 -07:00
Khem Raj 581c2869af gupnp-av: upgrade 0.14.4 -> 0.14.5
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-28 00:59:08 -07:00
Khem Raj 690ec4e462 libopenmpt: upgrade 0.8.4 -> 0.8.7
License-Update: copyright year updated 2025 -> 2026

Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-28 00:59:08 -07:00
Markus Volk 070da51be8 librtmp: add a patch to fix build with nettle-4
This was taken from Archlinux:
https://gitlab.archlinux.org/archlinux/packaging/packages/rtmpdump/-/blob/main/nettle-4.patch

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-25 19:05:26 -07:00
Markus Volk ce604315bc pipewire: update 1.6.6 -> 1.6.7
PipeWire 1.6.7 (2026-06-18)

This is a bugfix release that is API and ABI compatible with the previous
1.6.x releases.

Highlights
  - Fix a race issue where some ports would stay silent after a rate change.
  - Fix sync regressions between ALSA cards in some cases.
  - Small fixes and improvements.

PipeWire
  - Fix a scheduler regression where some driver nodes would not run
    correctly and cause sync issues. (#5210)
  - Fix a race issue with suspend on samplerate changes. It can cause ports
    to be silent. (#3547)

Modules
  - There are some locking issues in the RT portal, for now reduce the
    DBus timeout to something more sane. Also disable portal RT for
    pipewire and the pulse server. These are not usually run in a sandbox
    and can go directly to RTKit.
  - Fix potential incorrect delay in combine-stream.

SPA
  - Fix a regression in ALSA period_size calculations. For non-power-of-2
    periods, it would in some cases round down a a power-of-2, causing a
    mismatch between requested and configured period_size. (#5302)
  - Fix a potential segfault when removing a card because of bad ALSA api
    usage. (#5255)
  - Emit a route param update when card properties change. Otherwise, jack
    port updates are not always reflected correctly.

Misc
  - Make sure we don't deal with uninitialized spa_dict.

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-25 08:42:03 -07:00
Markus Volk fd1e70986d wireplumber: update 0.5.14 -> 0.5.15
WirePlumber 0.5.15
Additions & Enhancements:

Added new WpPermissionManager API that centralizes access control for clients, with support for attaching permission managers to clients from Lua scripts; the client access scripts have been completely refactored to use the new API with a select-access event and a priority fallback mechanism: configuration, flatpak, snap, portal, and default (!797, !822, !825)
Added new WpStateMetadata class that mirrors the persistent state into a PipeWire metadata object, allowing users to clear or change saved device profiles at runtime using pw-metadata (!818)
Added set_param(), enum_params_sync() and params-changed signal to WpSpaDevice, and an event signal for SPA device events, allowing monitors to directly interact with SPA devices and react to profile changes without going through the global WpDevice object (!835, !842)
Added list subcommand to wpctl for displaying PipeWire objects in a script-friendly format, with bash completions (!805, !823)
Added reset command to wpctl to reset the state of WirePlumber and PipeWire to installation defaults (!848, !849)
Enhanced wpctl to connect to the manager socket when available, giving the tool unrestricted access to the PipeWire graph (!814)
Added new bluetooth.profile-preference setting to find-preferred-profile for selecting quality or latency A2DP profiles (!819)
Added a cache for camera permission checks in the portal access module to avoid frequent D-Bus calls; also added a 3-second timeout and fixed the Set create parameter in portal-permissionstore (!820, !821)
Fixes:

Fixed wpctl set-volume by PID to apply the same volume level to all matching nodes (#944; !829)
Fixed portal clients to be un-gated immediately after permission setup, preventing them from remaining blocked (#941; !826)
Fixed ALSA monitor to set the device profile to Off and restore it when a node enters an error state, forcing a close/reopen of the device to recover from broken ALSA device states (!837)
Fixed voice call profile selection to not skip profiles with unknown availability (!834)
Fixed memory leak in Lua scripting by only holding a strong reference of the Lua state when a script is activated, preventing leaked proxy warning messages on core disconnect (!844)
Fixed state-stream to only use the media.role key when its value is Notification when forming the stream state lookup key (!845)
Fixed pw-obj-mixin to apply the active filter when enumerating cached params and to deduplicate subscribed param IDs (!839, !840)
Fixed m-lua-scripting to validate Bool values in Pod.Choice.Enum (!841)
Fixed shutdown sequence to properly deactivate all objects and plugins before teardown (#881; !833)
Fixed Bluetooth to not set bluez5.autoswitch-routes on BT devices (!811)
Fixed null pointer dereference in permission-manager (!812)
Fixed module destructor ordering to call the parent destructor before finalizing internal state (!813)
Fixed nil value when logging in state-profile (!815)
Fixed gobject-introspection issue on spa-pod to correctly generate Python bindings (!828)
Updated translations: Chinese, Serbian, Serbian Latin

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-25 08:42:03 -07:00
Colin McAllister 96c8c6ef11 gstd: Upgrade to 0.16.0 release
See change notes [1]

Removed exec_prefix from paths passed to rmdir because prefix is no
longer used for runstatedir and logstatedir (See meson chagnes in
commit b2ca22b).

Upgraded libsoup-2.4 dependency to libsoup 3.

[1] https://github.com/RidgeRun/gstd-1.x/releases/tag/v0.16.0

Signed-off-by: Colin Pinnell McAllister <colinmca242@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-20 23:41:40 -07:00
Markus Volk 3ed5f30f04 libdvdcss: switch to meson buildsystem
autotools buildsystem has been removed:
do_configure: no configure script found

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-20 23:41:34 -07:00
Markus Volk 58036eb4d1 libdvdnav: switch to meson buildsystem
autotools buildsystem has been removed:
do_configure: no configure script found

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-20 23:41:34 -07:00
Markus Volk 10668d7977 libdvdread: switch to meson buildsystem
autotools buildsystem has been removed:
do_configure: no configure script found

move recipe to meta-multimedia

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-20 23:41:33 -07:00
Khem Raj 8a26ea844f libdvdcss: upgrade 1.4.3 -> 1.5.0
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-12 07:29:03 -07:00
Khem Raj b028c7c754 libdvdnav: upgrade 6.1.1 -> 7.0.0
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-12 07:29:03 -07:00
Khem Raj f79aaeb828 webrtc-audio-processing: drop obsolete 0.3.1 recipe
The 0.3.x series is long superseded. We already ships the
maintained webrtc-audio-processing-1 (1.3) and webrtc-audio-processing-2
(2.1) recipes, and pipewire uses webrtc-audio-processing-2. Nothing
depends on the bare 0.3.1 recipe. Drop it.

Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-08 16:35:51 -07:00
Markus Volk d712bc991a pipewire: update 1.6.5 -> 1.6.6
- ncurses is not a required dependency -> make it a PACKAGECONFIG

PipeWire 1.6.6 (2026-05-26)

This is a bugfix release that is API and ABI compatible with the previous
1.6.x releases.

Highlights
  - Fix a bug in the server code that could leave snap clients without
    sound. (#5270)
  - Relax LADSPA path loading again, absolute paths are only blocked in
    unsafe cases.
  - Fix a volume restore issue in filter-graph when using custom volume
    controls.
  - Small fixes and improvements.

PipeWire
  - Fix the meta permission check on metadata.
  - Make sure we don't accept too many fds.
  - Fix potential race with buffer allocation and Suspend. (#3547)

SPA
  - Relax LADSPA path loading. Absolute paths are allowed when loading
    modules from a config file. They are now only blocked when loading
    the pulse ladspa modules and filter-chains in nodes because those
    can load ladspa plugins in other processes. (#5222)
  - Fix a regression in the dither noise that was silent when no input
    was available. (#5260)
  - Fix volume initialization in filter-graph. (#5192)

Pulse-server
  - Fix a bug in the server code that could leave snap clients without
    sound. (#5270)
  - Be more careful with the stream suspend messages and only send them
    when the stream is monitoring. (#5273)
  - Fix monitor mode in pavucontrol.

Tools
  - Fix midifile SysEx writing in pw-cat and ensure the header is written
    correctly on close.
  - Make sure pw-cat does not try to convert Midi to UMP.

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-07 18:21:48 -07:00
Markus Volk cb417db7ab libcamera: add workaround to fix build with gcc 16
libcamera fails if using gcc16 with -Werror=array-bounds=

Ignore this issue for now until it is properly fixed

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-06-07 18:21:32 -07:00
Markus Volk babcd87414 pipewire: update 1.6.3 -> 1.6.5
PipeWire 1.6.5 (2026-05-13)

This is a bugfix release that is API and ABI compatible with the previous
1.6.x releases.

Highlights
  - Fix muted output in some cases.
  - Removed the pipe filter in filter-graph.
  - More fixes and improvements.

PipeWire
  - Fix an issue in pw-filter where it could end up in a loop where buffers
    are stuck on a port and the port becomes silent. (#5249)

Modules
  - Improve ROC receiver start/stop, fixes memory leaks. (#5250)
  - Remove the pipe filter from filter-graph, it's broken by design and a
    security nightmare.
  - Fix the midi buffer size in jack-tunnel.

SPA
  - Rate limit out-of-buffers errors. (#5249)
  - Partially revert the line-out mute patch, it seems to break things and leave
    audio muted when plugging-unplugging jacks.  (#5246)
  - Improve renegotiation in audioconvert when the graph rate changes and the
    resampler was disabled. (#4933).
  - Fix potential crash in alsa when logging.

Pulse-server
  - A whole bunch of extra security checks and hardening fixes.

Older versions:

PipeWire 1.6.4 (2026-04-22)

This is a bugfix release that is API and ABI compatible with the previous
1.6.x releases.

Highlights
  - Small improvements and seqfault fixes.
  - Try to not emit ports that JACK doesn't understand. Fixes glitches in
    ardour and other JACK apps.

PipeWire
  - Refuse to load plugins and crash when pw_init() was not called. (!2784)

SPA
  - Fix LADSPA plugin loading, support LADSPA_PATH ending with /
  - Fix segfault in alsa-seq when removing devices in some cases. (#5221)
  - Allow negative gain in mixer. (#5228)
  - Improve alsa-seq port names, add : between client and port. (#5229)
  - ACP: don’t override user-selected port on availability changes.

Bluetooth
  - Backport some important fixes and minor improvements.

JACK
  - Ignore non DSP ports to avoid emitting extra callbacks.

GStreamer
  - Fix crop metadata.

Tools
  - Fix WAVEX saving in pw-cat. (#5233)

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-16 08:34:42 -07:00
Jose Quaresma 8b2c487173 libcamera: 0.7.0 -> 0.7.1
- Added PACKAGECONFIG for all available options, most of them introduced
in this version. This will make the package's outcome more deterministic.

This release brings 142 commits with the largest developments in the core of
libcamera components. Perhaps the most obvious is that we now use C++20 for the
project. The Configuration file handling has had a substantial rework with
updates to the yaml_parser.

The RKISP1 IPA has now added a new Hue control which brought with it a rework
of how we manage fixed point arithmetic with the Quantized class. I hope this
makes it easier to convey types with hardware operations.

The SoftISP has the ability to perform CPU debaying with multiple threads which
helps throughput on platforms such as the Arduino Uno Q.

The Mali-C55 pipeline handler now has full support for the RZG2LCRU and inline
handling which enables camera support on the Renesas RZ/V2H and RZ/V2NP
platforms.

And of interest in the apps components, the gstreamer plugin now has the
ability to select and configure the sensor mode configuration properties.
Finally a new script "libcamera-bug-report" is available to be packaged which
will help users identify issues when reporting bugs.

More on https://github.com/libcamera-org/libcamera/releases/tag/v0.7.1

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-12 01:07:01 -07:00
Jose Quaresma 41ba8f83a4 libcamera: 0.6.0 -> 0.7.0
- Drop merged pacth 0001-libcamera-Do-not-assume-libc-with-clang.patch.
- The v4l2 option "true" is deprecated and we should use "enabled".
- There is a new option "rpi-awb-nn", disabled for now, which requires
TensorFlow Lite.
- The GPU acceleration in the software ISP "SoftISP" for delivering
better performance and it becomes enabled when we have OpenGL.

This release brings 158 commits with substantial development on the SoftISP
components. This brings in GPU acceleration, allowing us to get higher
throughput for cameras using this pipeline. Further development to improve the
image quality is ongoing now that we can perform more processing in realtime.

The simple pipeline handler now supports exposing the Raw streams directly
allowing us to enable the SoftISP by default without removing access to the
camera formats.

Kernel headers have been updated to v6.18, supporting the new V4L2 ISP kernel
interface which allows us to continue improvements to hardware ISP pipelines as
we add new features.

Logging has been improved to better detect when to enable or disable color
output and can be controlled through the environment variable
LIBCAMERA_LOG_COLOR.

A new control is added for LensShadingCorrectionEnable to allow runtime control
over the LSC components where supported.

The gstreamer pipeline now has raw support added to the libcamerasrc
stream-role property allowing raw streams to be configured and accessed.

An exciting new AWB algorithm using Neural Networks, has been added to the
Raspberry Pi IPA following extensive development and training performed by the
Raspberry Pi Camera Team.

And finally, the Documentation now includes a support matrix which will help
identify the current support and enablement for platforms and sensors.

More on https://github.com/libcamera-org/libcamera/releases/tag/v0.7.0

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-12 01:07:01 -07:00
Jose Quaresma a797983156 libcamera: change python config
The python3 can be removed from PACKAGECONFIG depends because
the python3native is already inherited.
Also rename the pycamera to python as this is more generic
and can be used to enable everything related to python.

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-12 01:07:00 -07:00
Jose Quaresma a9eece0195 libcamera: add new package for lc-compliance
lc-compliance is a libcamera compliance testing tool designed to ensure
that cameras and their drivers function correctly within the software stack,
acting as a functional system test to validate real-world use cases.
This tool helps detect regressions and verifies that the libcamera API
is being used correctly.

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-12 01:07:00 -07:00
Jose Quaresma 5206553c8f libcamera: add configs pipelines for testing
vimc:
Is a driver that emulates complex video hardware, and is
useful for testing libcamera without needing access to a physical
camera. We would like to add support to the libcamera vimc
pipeline handler for multiple simultaneous streams, to ease
testing of such mechanism. This also requires adding multistream
support to the vimc driver in the Linux kernel.

virtual:
Is a specialized handler designed to create software-based,
virtual camera devices. It allows for testing, debugging, and
simulating camera pipelines without needing physical hardware,
often producing test patterns (e.g., all green frames) via qcam.
This enables developers to emulate camera sensors and
Image Signal Processors (ISPs) within the libcamera

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-12 01:07:00 -07:00
Jose Quaresma d5d6c6a064 libyuv: add recipe
The libyuv is an open source project that includes YUV scaling
and conversion functionality.

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-12 01:07:00 -07:00
Markus Volk 91e9560ad0 libavif: add PACKAGECONFIG for rav1e codec
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-12 01:07:00 -07:00
Markus Volk 90d7303e3e librav1e: add recipe
This adds a recipe for the rav1e c-library and pkgconfig files

- dont create dbg package to avoid buildpath issues

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-12 01:06:59 -07:00
Markus Volk fd70b478f3 svt-av1: add recipe
This adds a recipe for the svt-av1 encoder/decoder

- dont create dbg package to avoid buildpath issues

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-05-12 01:06:59 -07:00
Markus Volk cc814c9fd1 wireplumber: update 0.5.13 -> 0.5.14
WirePlumber 0.5.14
~~~~~~~~~~~~~~~~~~

Additions & Enhancements:

  - Added per-device default volume configuration via the
    ``device.routes.default-{source,sink}-volume`` property, allowing device-specific volume
    defaults (e.g. a comfortable default for internal speakers or no attenuation for HDMI) (!772)

  - Added Lua 5.5 support; the bundled Lua subproject wrap has also been updated to 5.5.0
    (!775, !788)

  - Enhanced libcamera monitor to load camera nodes locally within the WirePlumber
    process instead of the PipeWire daemon, eliminating race conditions that could occur
    during initial enumeration and hotplug events (!790)

  - Enhanced Bluetooth loopback nodes to always be created when a device supports both
    A2DP and HSP/HFP profiles, simplifying the logic and making the BT profile autoswitch
    setting take effect immediately without requiring device reconnection (!782)

  - Enhanced Bluetooth loopback nodes to use ``target.object`` property instead of smart
    filters, fixing issues that prevented users from setting them as default nodes and
    also allowing smart filters to be used with them (#898; !792)

  - Enhanced Bluetooth profile autoswitch logic with further robustness improvements,
    including better headset profile detection using profile name patterns and resolving
    race conditions by running profile switching after ``device/apply-profile`` in a
    dedicated event hook (#926, #923; !776, !777, !808)

  - Enhanced wpctl ``set-default`` command to accept virtual nodes (e.g.
    ``Audio/Source/Virtual``) in addition to regular device nodes (#896; !787)

  - Improved stream linking to make the full graph rescan optional when linkable items
    change, saving CPU on low-end systems and reducing audio startup latency when
    connecting multiple streams in quick succession (!800)

  - Allowed installation of systemd service units without libsystemd being present,
    useful for distributions like Alpine Linux that allow systemd service subpackages
    (!793)

  - Allowed the ``mincore`` syscall in the WirePlumber systemd sandbox, required for
    Mesa/EGL (e.g. for the libcamera GPUISP pipeline)

  - Allowed passing ``WIREPLUMBER_CONFIG_DIR`` via the ``wp-uninstalled`` script,
    useful for passing additional configuration paths in an uninstalled environment (!801)

Fixes:

  - Removed Bluetooth sink loopback node, which was causing issues with KDE and GNOME (!794)

  - Fixed default audio source selection to never automatically use ``Audio/Sink`` nodes
    as the default source unless explicitly selected by the user (#886; !781)

  - Fixed crash in ``state-stream`` when the Format parameter has a Choice for the
    number of channels (#903; !795)

  - Fixed BAP Bluetooth device set channel properties, where ``audio.position`` was
    incorrectly serialized as a pointer address instead of the channel array (!786)

  - Fixed memory leaks in ``wp_interest_event_hook_get_matching_event_types`` and in
    the Lua ``LocalModule()`` implementation (!784, !810)

  - Fixed HFP HF stream media class being incorrectly assigned due to
    ``api.bluez5.internal=true`` being set on HFP HF streams (!809)

  - Fixed Lua 5.4 compatibility in ``state-stream`` script

  - Updated translations: Bulgarian, Georgian, Kazakh, Swedish

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-20 10:44:41 -07:00
Markus Volk be77fde6f6 pipewire: update 1.6.2 -> 1.6.3
- remove backport patch

PipeWire 1.6.3 (2026-04-09)

Highlights
  - Fix some RAOP compatibility regressions.
  - Fix segfault in the mixer in some cases.
  - Most nodes now produce and consume MIDI1 again and avoid
    conversions to and from UMP.
  - Various small fixes and improvements.

PipeWire
  - Fix regression with sample rate changes. (#5207)
  - Fix a potential integer overflow in the memory mapping.

Modules
  - Align RTP timestamps to make RAOP work on more devices. (#5167)
  - Avoid crashes in RTP streams because of concurrent event
    emmission.
  - Avoid invalid fd usage in native-protocol with special crafted
    messages.
  - Fix properties and params enumeration in filter-chain (#5202).

SPA
  - Fix compilation with -Werror=discarded-qualifiers
  - Avoid OOB read in mix matrix. (#5176)
  - Avoid loading plugins from absolute paths that are not in the
    search path.
  - Avoid MIDI conversions to and from UMP. (#5183)

Bluetooth
  - Backport some fixes and avoid some crashes.

JACK
  - Make sure timebase callback is never called with 0 frames.
  - Increase the notify queue to avoid losing notifications.

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-20 07:35:39 -07:00
Markus Volk ae92a2993c libdvdcss: use https for fetching code
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-18 13:47:19 -07:00
Markus Volk b50fbdd66b libdvdnav: use https for fetching code
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-18 13:47:19 -07:00
Khem Raj c1765cd254 streamripper: disable C23 support to fix configure check
Set ac_cv_prog_cc_c23=no to prevent autoconf from detecting C23
compiler support, avoiding potential build failures as the package
is not yet fully ported to support C23 standard.

Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-16 16:30:37 -07:00
Scott Murray a38bcc23f7 mpd: Fix systemd user unit installation
systemd_system_unitdir was accidentally used as the destination for
the user systemd unit, which means it overwrites the system unit.
Correct it to systemd_user_unitdir to fix starting with the system
unit.

Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-16 16:30:37 -07:00
Jörg Sommer 750982ed27 fswebcam: Add RRECOMMENDS ttf-dejavu-sans
Add a recommendation for a sans serif font to print text on images. But
fswebcam works fine without a font to save only plain images.

Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-16 13:08:19 -07:00
Markus Volk 95eab24c06 libavif: use system libxml2 for building apps
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-04 08:44:08 -07:00
Markus Volk 659cdaf182 libavif: enable libyuv support
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-04 08:44:08 -07:00
Markus Volk 1d277a568d libavif: add PACKAGECONFIG for apps
- This allows to build avifdec,avifenc and avifgainmaputil

Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-04 08:44:08 -07:00
Markus Volk e2caf97fb4 libavif: add gdk-pixbuf support for av1 image format
This commit adds a PACKAGECONFIG to build the av1 gdk-pixbuf-loader/thumbnailer
and enables it by default.

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-04 08:44:08 -07:00
Markus Volk 6206971292 libavif: update 1.3.0 -> 1.4.1
- add missing dependencies
- add PACKAGECONFIG for aom,svt-av1

1.4.1 - 2026-03-20
Changed since 1.4.0

    Fix build with CMake 3.22
    Update aom.cmd/LocalAom.cmake: v3.13.2
    Update libxml2.cmd/LocalLibXml2.cmake: v2.15.2
    Update libyuv.cmd/LocalLibyuv.cmake: 6067afde5 (1922)
    Support long path names in Windows
    Fix cicp management and memory leaks in avifgainmaputil #3102.

Removed since 1.4.0

    Remove experimental status for the following options of avifenc: --progressive, --layered and --scaling-mode, and the extraLayerCount option of avifEncoder.

1.4.0 - 2026-03-04
Added since 1.3.0

    Allow avifenc to read png or jpeg files through stdin using --stdin-format.
    Support some Sample Transform schemes as defined in the version 1.2 of the AVIF specification.
    Add an optional argument to the --depth flag of avifenc used to enable a bit depth extension scheme in the encoded file.
    Add support for converting jpeg files with Apple style gain maps.
    Add support for PNG cICP chunk when decoding PNG files. If a PNG file contains a cICP chunk and other color information chunks, such as iCCP (ICC profile), the other chunks are ignored as per the PNG Specification Third Edition Section 4.3.
    Support reading Sample-Transform-based 16-bit AVIF files when avifDecoder::imageContentToDecode & AVIF_IMAGE_CONTENT_SAMPLE_TRANSFORMS is not zero.
    Support Sample Transform derived image items with grid input image items.
    Add --sato flag to avifdec to enable Sample Transforms support at decoding.
    Add --grid option to avifgainmaputil.
    Apply clean aperture crop, rotation and mirror when decoding to PNG or JPEG. Remove orientation information from Exif if present.
    Add avif::RGBImageCleanup to the C++ API.

Changed since 1.3.0

    Set avifDecoder::image->depth to the same value after avifDecoderParse() as after avifDecoderNextImage() when the file to decode contains a 'sato' derived image item.
    avifdec only enables Sample Transform decoding when --depth is set to 16.
    Update dav1d.cmd/dav1d_android.sh/LocalDav1d.cmake: 1.5.3
    Update googletest.cmd/LocalGTest.cmake: v1.17.0
    Update libgav1.cmd: v0.20.0
    Update libjpeg.cmd/LocalJpeg.cmake: 3.1.3
    Update libyuv.cmd/LocalLibyuv.cmake: deeb764bb (1922)
    Update libsharpyuv.cmd/LocalLibsharpyuv.cmake: v1.6.0
    Update libxml2.cmd/LocalLibXml2.cmake: v2.15.1
    Update aom.cmd/LocalAom.cmake: v3.13.1
    Update LocalAvm.cmake: research-v13.0.0
    Update rav1e.cmd/LocalRav1e.cmake: cargo-c v0.10.20, corrosion v0.6.1, rav1e v0.8.1
    Update svt.cmd/svt.sh/LocalSvt.cmake: v4.0.1
    Update zlibpng.cmd/LocalZlibpng.cmake: libpng 1.6.55, zlib 1.3.2
    Fix grayscale conversion when changing the bit depth.
    Bump cmake_minimum_required from 3.13 to 3.22
    Associate transformative properties with alpha auxiliary image items.
    Always forward the CICP color primaries, transfer characteristics, and matrix coefficients to the AV1 encoder, which writes them in the Sequence Header OBU, for compatibility with libraries that wrongly ignore the colr box.
    Use a "quality to quantizer (QP)" mapping formula designed for AOM_TUNE_IQ.
    Set tuning before applying the user-provided specific aom codec options.
    Use AOM_TUNE_PSNR by default when encoding alpha with libaom because AOM_TUNE_SSIM causes ringing for alpha.
    Use AOM_TUNE_IQ by default when encoding still non-RGB color samples with libaom v3.13.0 or later.
    Converting an image containing a gain map using avifenc with the --grid flag now also splits the gain map into a grid.
    In avifenc, set Exif orientation to 1 (no transformation) when converting JPEGs to AVIF.
    Use all-intra encoding for a layered image if the total number of layers is 2 and the quality of the first layer is very low (q <= 10).

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-03 14:33:04 -07:00
Michal Sieron 87c5669a28 pipewire: Convert confusing appends to override syntax
While in this case `RRECOMMENDS:class-target +=` wouldn't result in any
unwanted override, there is no guarantee there won't be a change, which
would be hidden by this override. To avoid any surprises in the future
let's use `:append:class-target =` syntax here.

Signed-off-by: Michal Sieron <michalwsieron@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-04-01 13:16:37 -07:00
Ankur Tyagi 3e196afff4 libde265: upgrade 1.0.17 -> 1.0.18
https://github.com/strukturag/libde265/releases/tag/v1.0.18

Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-03-26 07:43:34 -07:00
Ankur Tyagi ceb2c899fd mpd: upgrade 0.24.6 -> 0.24.9
https://github.com/MusicPlayerDaemon/MPD/blob/v0.24.9/NEWS

Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-03-26 07:43:34 -07:00
Markus Volk a874710f1a fluidsynth: update 2.4.8 -> 2.5.3
- update dependency: libsdl2 -> libsdl3
- fetch code for gcem and signalsmith-audio-basics at do_fetch
- update license file checksum [https://github.com/FluidSynth/fluidsynth/commit/db42fa333baf1cb7c60556ab75ad1e592c850f68]

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-03-21 14:23:46 -07:00