summaryrefslogtreecommitdiffstats
path: root/meta-multimedia
Commit message (Collapse)AuthorAgeFilesLines
* pipewire: upgrade 0.3.77 -> 0.3.78Markus Volk2023-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a small bugfix release that is API and ABI compatible with previous 0.3.x releases. - An old regression was fixed with where some nodes would not run. - A regression was fixed where removed events would not be shown in some cases. This would result in duplicate entries in audio clients. - Fix an off-by-one in the vban audio receiver. Tweak the rate adaption a little. - ACP will now set a UCM verb before probing the pro-audio devices. - More bugfixes and improvements. - An old regression was fixed with where some nodes would not run. (#3405) - Suspend was improved a little to avoid races when the session manager would suspend right when a driver was starting. - module-rtp-sap does not use the deprecated inet_aton anymore. - Fix an off-by-one in the vban audio receiver. Tweak the rate adaption a little. (#3380) - ACP will now set a UCM verb before probing the pro-audio devices. (#3407) - The mandatory flag will be set now on the video modifiers. - EVL was updated to Xenomai4 r46 and xbuf creation was improved. - An option was added to force colors in the log even when logging to !tty. - The return type of spa_pod_builder_control() was fixed. - inotify errors are handled better now. (#3439) - A regression was fixed where removed events would not be shown in some cases. (#3414) - Improve compatibility with more devices, avoid reusing the same transport for different media-sink instances to avoid encoder resets. - Improve enumeration of codec profiles for BAP and A2DP. - Ensure we can't iterate ports from a deactivated client. Also make sure the JACK clients with the node.always-process=false always show their ports. (#3416) - A potential crash was fixed in the device provider when stopping. Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openh264: fix installed-vs-shared QA issue with multilibMartin Jansa2023-08-131-1/+1
| | | | | | | | | | | | | | | | * in some cases libdir is /usr/lib64 and then libraries installed in /usr/lib aren't packaged: ERROR: QA Issue: openh264: Files/directories were installed but not shipped in any package: /usr/lib/libopenh264.a /usr/lib/libopenh264.so.2.1.1 /usr/lib/libopenh264.so /usr/lib/libopenh264.so.6 /usr/lib/pkgconfig /usr/lib/pkgconfig/openh264.pc Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install. openh264: 6 installed and not shipped files. [installed-vs-shipped] Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: add support for liblc3Markus Volk2023-08-052-0/+15
| | | | | | | - add liblc3 recipe Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: update 0.3.75 -> 0.3.77Markus Volk2023-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a quick bugfix release that is API and ABI compatible with previous 0.3.x releases. - Fix a bug in ALSA source where the available number of samples was miscaluclated and resulted in xruns in some cases. - A new L permission was added to make it possible to force a link between nodes even when the nodes can't see eachother. - The VBAN module now supports midi send and receive as well. - Many cleanups and small fixes. - Global objects now only show permissions that apply to them. The permissions required to perform various API calls are documented. - A new L permission was added to make it possible to force a link between nodes even when the nodes can't see eachother. - Config files need to end with .conf. - The client.api is added the to global properties of a node. - The VBAN module now supports midi send and receive as well. - Fix module-profiler alignment and make sure we don't overrun our buffers with many nodes. - Protect libcanberra calls with a mutex because it is not thread safe. (#2834) - Support older compilers for spa_clear_ptr(). - Fix a bug in ALSA source where the available number of samples was miscaluclated and resulted in xruns. (#3395) - Don't set inotify on /dev but on the videoX devices directly. Setting inotify on /dev would cause a lot of spurious wakeups and lock contention in the fsnotify subsystem on some benchmarks. - Audioconvert now rate limits the warnings when it runs out of buffers. (#3384) - Some bugs and inconsistencies were fixed in device lookup. - Improve subscribe event emission, detect changes to the sink or the monitor and send the right sink/source event. (#3388) - The libjack.so now has a minor version of 3 and a micro version of the pipewire version. - JACK clients will now see portregistration from other jack clients when they activate/deactivate like real JACK. (#3260) - Use some more autoptr cleanups, fix some leaks. Older versions: This is a quick bugfix release that is API and ABI compatible with previous - LE Audio support is now enabled by default when liblc3 is available now that bluez has support for detecting the hardware features. Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* remove unused AUTHOR variableMichael Opdenacker2023-08-031-1/+0
| | | | | | | | | No longer used in generating packages Also creates a possible confusion with the recipe maintainer name. Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcamera: bump to latest masterVivien Didelot2023-08-021-1/+1
| | | | | | | | Bump libcamera to latest master, as commit a2eadc40a introduces flicker controls for rpi which are required in latest libcamera-apps. Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcamera: update 0.0.5 -> 0.1.0Markus Volk2023-07-231-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libcamera v0.1.0 ABI Compliance: abi-compliance-checker reports 99% binary compatibility and 81.4% source compatibilty between version 0.0.5 and 0.1. - Binary compatibility: 99% - Source compatibility: 81.4% - Total binary compatibility problems: 4, warnings: 2 - Total source compatibility problems: 165, warnings: 7 Now that we have funtional ABI validation, the soname has been updated from libcamera.so.0.0.5 to libcamera.so.0.1. Future releases will now maintain the same soname until an ABI breakage is detected to reduce the repackaging and rebuilding of other components that may use libcamera. The abi-compatibility report can now be generated with the new utility './utils/abi-compat.sh'. Key differences here are due to preventing the installation of internal and private headers in the packaging process, and most of this API compatibility should not be visible to applications with the exception of: - Camera::generateConfiguration ( StreamRoles const& roles ) The StreamRoles type definition has been removed. This is now handled as a Span<StreamRole> to prevent unnecessary allocations and copies. - CameraManager::addCamera ( std::shared_ptr<struct Camera> camera, std::vector<unsigned long>const& devnums ) - CameraManager::get ( dev_t devnum ) - CameraManager::removeCamera ( std::shared_ptr<struct Camera> camera ) These functions of the CameraManager were for use exclusively by the V4L2 adaptation layer, and not intended for use by applications. This has now been reworked to use the new SystemDevices and the redundant functions removed. The ABI/API breakages have been introduced by: 5ca0c9276f28 ("libcamera: CameraManager: Remove ::get(dev_t)") 26a4b83d1b94 ("libcamera: Remove `StreamRoles` alias") 63966ae587d7 ("libcamera: base: Do not install private headers") Core: - libcamera: v4l2_videodevice: Use O_CLOEXEC when exporting DMA buffers - libcamera: ipa_manager: Allow IPA loading in nested subdirs - meson: Fix usage of overwritten pipeline variable - subprojects: Drop leftovers of pybind11 - camera_sensor: ipa: core: Add CFA pattern to IPACameraSensorInfo - libcamera: controls: Define a default lens position behaviour - libcamera: internal: request: convert to pragma once - libcamera: camera_manager: Move private implementation to internal - libcamera: camera_manager: Move {add,remove}Camera to internal - libcamera: properties: Provide a Devices camera property - libcamera: pipeline: Register device numbers with camera - libcamera: camera_sensor: Adjust properties::Rotation - libcamera: meson: Allow PH to change libcamera_deps - libcamera: base: Move thread_annotations to private - libcamera: base: Do not install private headers - utils: ABI Compatibility checker - meson: Use x.y soname versioning - libcamera: camera: Take span of StreamRole instead of vector - libcamera: Remove `StreamRoles` alias - utils: ipu3-capture.sh: Fix the script to work with recent media-ctl versions - Documentation: Add predefined macros from config.h to Doxyfile - utils: checkstyle: Add __repr__ method to CommitFile class - utils: checkstyle: Support running checkers selectively - utils: checkstyle: Don't include commit ID in commit title - utils: checkstyle: Add trailers checker - tests: gstreamer: Test cameras' enumeration from GstDeviceProvider - meson: Fix space around colon issues - libcamera: Add option to configure udev support - libcamera: CameraManager: Remove ::get(dev_t) - tests: gstreamer: Fix compiler error with gcc 8.4.0 ipa: - meson: ipa: Add mapping for pipeline handler to mojom interface file - libcamera: ipa: Remove character restriction on the IPA name - ipa: meson: Allow nested IPA directory structures - ipa: raspberrypi: Introduce IpaBase class - ipa: raspberrypi: agc: Move weights out of AGC - ipa: rkisp1: agc: drop hard-coded analogue gain range - libipa: camera_sensor_helper: Add IMX327 helper - pipeline: rpi: ipa_base: Parse config files after platformRegister() - libcamera: camera_sensor: Add Sony IMX327 sensor properties - ipa: rpi: imx296: Small refinements to the IMX296 mono sensor tuning - ipa: rpi: Handle controls for mono variant sensors - libcamera: controls: Drop reference to IPA in controls documentation - libipa: camera_sensor_helper: Restore alphabetical order - ipa: ipu3: agc: Drop hard-codec analogue gain max - ipa: rkisp1: agc: Restore minimum analogue gain limit - pipeline: ipa: rpi: Return lens controls from ipa->configure() - ipa: rpi: Set lens position to hyperfocal on startup - ipa: rpi: tunings: Add missing short and long exposure profiles - ipa: rpi: agc: Use std::string instead of char arrays - ipa: rpi: agc: Gracefully handle missing agc modes - ipa: rpi: agc: Do not switch to a default if a mode is unavailable - ipa: rpi: imx708: Fix mode switch drop frame count - ipa: rpi: imx296_mono: Disable all colour shading pipeline: - libcamera: pipeline: simple: Add support for ST's DCMIPP - pipeline: meson: Allow nested pipeline handler directory structures - pipeline: ipa: raspberrypi: Refactor and move the Raspberry Pi code - pipeline: raspberrypi: rpi_stream: Set invalid buffer to id == 0 - pipeline: ipa: raspberrypi: Restructure the IPA mojom interface - pipeline: raspberrypi: Make RPi::Stream::name() return const std::string & - pipeline: raspberrypi: Introduce PipelineHandlerBase class - pipeline: raspberrypi: Add stream flags to RPi::Stream - libcamera: rkisp1: Generate config using main path - libcamera: rkisp1: Crop on ISP before downscaling - libcamera: rkisp1: Assign sizes to roles - libcamera: rkisp1: Fix enumeration of RAW formats - pipeline: rpi: Do not return an error from pipeline config file handling - libcamera: pipeline: simple: Support TI CSI-RX - pipeline: rpi: Account for Bayer packing when validating format apps: - apps: qcam: Remove redundant check - v4l2: Move the v4l2 compat layer to libexec/libcamera - android: mm: generic: use GRALLOC_HARDWARE_MODULE_ID - android: mm: Stub libhardware for build tests - py: Fix CameraManager.version property - py: Move ColorSpace and Transform classes to separate files - py: Use exceptions instead of returning error codes - py: unittests.py: Add weakref helpers and use del - py: Move to mainline pybind11 version - py: Fix code formatting - py: unittests.py: Fix type checker warnings - gstreamer: Add enable_auto_focus option to the GStreamer plugin - gstreamer: Drop libcamera_private dependency - apps: Add ipa-verify application - v4l2: v4l2_camera_proxy: Prevent ioctl sign-extensions - v4l2: Use SystemDevices properties to identify cameras Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: update 0.3.73 -> 0.3.75Markus Volk2023-07-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bugfix release that is API and ABI compatible with previous 0.3.x releases. - Link permissions between nodes are now enforced. This avoids potential portal managed screencast nodes to link to the camera even though it was not assigned permissions to do so by the session manager. - Libcamera and v4l2 devices now have properties so that duplicates can be filtered out by the session manager. - A bug with draining was fixed where a buffer would be marked EMPTY and would not play when it contained drained samples. (#3365) - Many fixes and improvements. - Permissions for links between nodes are now enforced. The link will now check that the owner clients of the nodes can see eachother before allowing the link. This avoids screensharing clients to accidentally being linked to the camera nodes by the session manager. A side effect is that patchbay tools will no longer be able to link portal managed screencast nodes to the camera, for this we need a new permission for those patchbay clients. (wireplumber#218) - The stream.rules/filter.rules are now evaluated when connecting the stream/filter so that more properties can be matched. (#3355) - Move some internal events from the context to the nodes to better handle per-node threads in the future. - The thread-loop will now signal when the thread is started. - A timestamp workaround in module-raop was reverted because it does not work in all cases. Instead latency was increased to 1.5 seconds, which also makes the problematic device in question work. (#3247) - The profiler module was reworked a bit to use the new node realtime events. It should now also handle dynamically added and removed drivers. - The module-rt now does the rtkit calls from a separate thread so that it does not block the main thread. This could cause deadlocks during startup in some cases. (#3357) - Atomic operation macros were move from internal pipewire API to public API. - The video-info structure now has a new SPA_VIDEO_FLAG_MODIFIER_FIXATION_REQUIRED flag to instruct the application to fixate the modifiers. This simplifies some logic in applications a lot. - The libcamera and v4l2 nodes now have properties to enumerate the device id they are using. This can be used to match v4l2 devices and libcamera devices and filter out duplicates. - A bug with draining was fixed where a buffer would be marked EMPTY and would not play when it contained drained samples. (#3365) This is a quick bugfix release that is API and ABI compatible with previous - Merge scope based cleanup macros. - Add ratelimit function. Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openh264: version bump 2.1.1 -> 2.3.1Jan Vermaete2023-07-201-2/+3
| | | | | Signed-off-by: Jan Vermaete <jan.vermaete@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: upgrade 0.3.72 -> 0.3.73Markus Volk2023-07-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bugfix release that is API and ABI compatible with previous 0.3.x releases. - Fixes an ALSA resume after suspend error. - Handle and disable seemingly wrong hires timestamps from ALSA. - Filter-chain now has loadable plugin modules. The LV2 and sofa plugins are moved to a separate .so file to make things more modular. - Rate changes in the graph should now be handled more gracefully by loopback and filter-chain. - A regression in the rtp-sap module was fixed where it would in some cases fail to start. - A potential crash in the peaks resampler was fixed. - Many cleanups and other small bug fixes. - Fix a potential segfault when no fallback driver was set in the config. - Improve OPUS detection. - Add ASYNC flag to pw-filter and pw-stream when queue/dequeue is not called from the process function. This ensure we allocate an extra buffer. - Discard pending process callbacks when disconnecting. (#3314) - Cleanups and improvements to the debug environment variable parsing. - The graph rate was tweaked to better handle very low rates such as those requested by pavucontrol when it does the signal monitoring. - An example filter module was added. - Filter-chain and loopback now disable the resamplers if no rate is specified and will always follow the graph rate. - Improve setup of filter-chain. The graph is now created when starting because this ensure the target graph rate is known. - Filter-chain can now link notify ports to control ports in the graph. - Filter-chain now has loadable plugin modules. The LV2 and sofa plugins are moved to a separate .so file. - A regression in the rtp-sap module was fixed where it would in some cases fail to start. - Module-rt now has options to disable rlimits, portal and rtkit. - module-raop-discover now has an options to set the latency. (#3247) - pw-cat now supports overriding all stream properties. - Disable rate negotiation when the resampler is disabled. We will always follow the graph rate. - Set device.icon property for UCM ports as well. - Improve ALSA recover when using hires timestamps. This fixes some problems after resume from suspend. (#3315) - ALSA will now warn and disable hires timestamp when they seem wrong. They can also be disabled manually with a property. - V4l2 will now gracefully handle ENOTTY when enumerating frame sizes and frame rates. (#3325) - A potential crash in the peaks resampler was fixed. (#3320) - A client crash in pavucontrol is avoided by always setting a card name. - The graph rate is now taken correctly when using the FIX flags. (#3317) - An option was added to ignore the FIX flags of a stream. Also the documentation for those options was updated. (#3317) - module-raop-discover now support latency_msec. (#3247) - Remove an assert and issue a warning/recover instead when a buffer is too small. - The device provider does locking when destroying the registry. Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* gupnp-av: Fix build with libxml2-2.11 and newerKhem Raj2023-06-302-1/+47
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* gupnp: backport a fix not to use deprecated xmlReadMemoryMartin Jansa2023-06-282-1/+110
| | | | | | | | | | | | | | | | | | | | | | | | * deprecated since libxml2-2.11 upgraded in oe-core in: https://git.openembedded.org/openembedded-core/commit/?id=24860598ba8557ea3a145f249938ea411f1ef1d8 * fixes: ../gupnp-1.4.1/libgupnp/gupnp-service-info.c: In function 'got_scpd_url': ../gupnp-1.4.1/libgupnp/gupnp-service-info.c:595:17: error: 'xmlRecoverMemory' is deprecated [-Werror=deprecated-declarations] 595 | scpd = xmlRecoverMemory (msg->response_body->data, | ^~~~ In file included from /OE/build/luneos-nanbield/webos-ports/tmp-glibc/work/cortexa8t2hf-neon-webos-linux-gnueabi/gupnp/1.4.1-r0/recipe-sysroot/usr/include/libxml2/libxml/globals.h:18, from /OE/build/luneos-nanbield/webos-ports/tmp-glibc/work/cortexa8t2hf-neon-webos-linux-gnueabi/gupnp/1.4.1-r0/recipe-sysroot/usr/include/libxml2/libxml/threads.h:35, from /OE/build/luneos-nanbield/webos-ports/tmp-glibc/work/cortexa8t2hf-neon-webos-linux-gnueabi/gupnp/1.4.1-r0/recipe-sysroot/usr/include/libxml2/libxml/xmlmemory.h:222, from /OE/build/luneos-nanbield/webos-ports/tmp-glibc/work/cortexa8t2hf-neon-webos-linux-gnueabi/gupnp/1.4.1-r0/recipe-sysroot/usr/include/libxml2/libxml/tree.h:1310, from ../gupnp-1.4.1/libgupnp/gupnp-service-introspection-private.h:12, from ../gupnp-1.4.1/libgupnp/gupnp-service-info.c:26: /OE/build/luneos-nanbield/webos-ports/tmp-glibc/work/cortexa8t2hf-neon-webos-linux-gnueabi/gupnp/1.4.1-r0/recipe-sysroot/usr/include/libxml2/libxml/parser.h:872:17: note: declared here 872 | xmlRecoverMemory (const char *buffer, | ^~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: upgrade 0.3.71 -> 0.3.72Markus Volk2023-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bugfix release that is API and ABI compatible with previous 0.3.x releases. - Fix a critical bug that would refuse to update the samplerate or buffersize in JACK clients. (#3226) - A new module-netjack2-driver and module-netjack2-manager were added that are compatible with NETJACK2. This allows PipeWire to become a NETJACK2 manager or a driver between JACK2 or PipeWire servers. - Support was added for firewire devices with FFADO. This is untested for now and MIDI is not implemented yet. - The node scheduling was optimized some more. External drivers are now as efficient as in-server ones. This should improve performance of various drivers such as bluetooth and JACK based drivers. - Many, many bug fixes and a ton of improvements. - pw-filter can now be used to write sinks and sources. - The node activation for drivers was changed. The driver now does not need to go to the server to start the processing cycle. This makes out-of-server drivers as efficient as in-server drivers. - Don't try to use drivers with 0 priority as fallback drivers. This avoids making the screencast driver a driver for audio. (#3219) - Improve xrun count reporting in pw-top and the profiler. Now each node has their own xrun counter updated when it fails to complete processing during the cycle. - pw-filter now also has support for TRIGGER. - A potential fd leak was found when fds were send to a zombie client. (#1840) - Fix a bug where monitor or capture streams were logged twice in the profiler. (#3278) - Remove stream hooks safely. (#3251) - A bug in serialization of container properties was fixed. This could result in truncated property values. (#3290) - The PIPEWIRE_AUTOCONNECT environment variable now always overrides the autoconnect settings of streams. (#3299) - Node, port and link destroy now avoids some useless work. - Port will now try to renegotiate a new format when idle. (#3266) - The module-sap now is more compatible with AES67. - A new FFADO driver module was added. This is completely untested because of lack of hardware. Please test and report issues. - A new NETJACK2 driver and a NETJACK2 manager module were added. These should be drop in replacements for the JACK2 parts. - The RAOP discover module now tries harder to only list devices once. - The zeroconf discover module now tries harder to only list devices once. - The RAOP sink module now handles latency better and is compatible with some more devices. (#3247, #3282) - The loopback and filter-chain modules now always dequeue the last input buffer to avoid stuttering in some cases. (#3276) - The SPA node factory module can now also export nodes. This is used to export the PTP clock from the AES67 config file. - A bug in module-jack-tunnel was fixed that would cause stuttering and corrupted output in some cases. (#3255) - The resampler is now disabled in module-loopback and filter-chain when the samplerate is set to follow the graph rate. (#2969) - The way the mixer peer is sent to clients was improved. It is now also possible to let a remote node know about mixer port removes, which can avoid memory leaks and some code simplifications. - Monitor ports now report latency correctly. - The ALSA plugin now uses htimestamp to get a more accurate ringbuffer position to estimate the clock skew. - The channelmixer now has min/max-volume settings to limit or fix the volume. - The ALSA plugin can now control the playback and capture rate of USB gadgets. This can avoid resampling and instead use the USB feedback to control the rate. - The ALSA output to multiple devices has been improved, some lockups are avoided when the device ringbuffer is full. - The compress-offload sink has improved negotiation. - Only try to use GSettings when the schema exists. - @DEFAULT_SOURCE@, @DEFAULT_SINK@ and @DEFAULT_MONITOR@ are now correctly handled as targets in playback and capture streams. (#3284) - 2 new quirks are added to disable volume updates on sinks/sources. (#1517) - The virtual-sink and virtual-source modules were added. These are really example modules but actually also work and are useful on PulseAudio so implement them as well. - Fix initial stream volumes. (#3306) - Only register A2DP or BAP when we have codecs. - Include codec into the media.name - Fix a critical bug that would refuse to update the samplerate or buffersize. (#3226) - Improve updates of samplerate/buffersize, delay the updates until the client is activated. (#3297) - Use the new mix-info updates to simplify the mixer setup and peer detection. - Fill default strides instead of 0 on pipewire video buffers. (#3236) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: Add dedicated aes67 package and fix rlimits.d package assignmentCarlos Rafael Giani2023-06-241-2/+7
| | | | | Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: Improve packageconfigsCarlos Rafael Giani2023-06-241-1/+8
| | | | | Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: Disable libmysofa since it is not available in OECarlos Rafael Giani2023-06-241-1/+2
| | | | | Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* xdg-desktop-portal-wlr: Fix build with older mesaKhem Raj2023-06-182-1/+55
| | | | | | | | Some ports e.g. visionfive2 does not yet supported 21.1+ mesa where gbm_bo_create_with_modifiers2 API is available, therefore use gbm_bo_create_with_modifiers API for compatibility Signed-off-by: Khem Raj <raj.khem@gmail.com>
* layers: Move READMEs to markdown formatKhem Raj2023-06-171-0/+0
| | | | | | | The READMEs are often viewed from websites markdown format which is much as readable as text and yet friendlier in browsers. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* schroedinger: Fix building testsKhem Raj2023-06-122-0/+44
| | | | | | | lld finds out this error where _orc_code_orc_deinterleave2_s16 is needed but is not linked into a testcase wavelet_max_gain Signed-off-by: Khem Raj <raj.khem@gmail.com>
* x265: Pass --debug-prefix-map to nasmKhem Raj2023-05-261-0/+4
| | | | | | | | | Ensures absolute source paths are not emitted into nasm assembled objects Fixes WARNING: x265-3.2.1-r0 do_package_qa: QA Issue: File /usr/lib/.debug/libx265.so.179 in package x265-dbg contains reference to TMPDIR [buildpaths] Signed-off-by: Khem Raj <raj.khem@gmail.com>
* vlc: Remove WORKDIR from CONFIGURE_LINE definitionKhem Raj2023-05-251-0/+1
| | | | | | | | | | This is emitted by configure into generated config.h which is used in src/misc/messages.c and flows into binaries Fixes WARNING: vlc-3.0.18-r0 do_package_qa: QA Issue: File /usr/lib/libvlccore.so.9.0.1 in package libvlc contains reference to TMPDIR [buildpaths] Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libsquish: remove unused 0001-makefile-Add-LIBDIR.patchMartin Jansa2023-05-241-36/+0
| | | | | | | | | | | * it was added to meta-multimedia, but not to SRC_URI in: https://git.openembedded.org/meta-openembedded/commit/?id=1c23fd7f8b58636983fd0b233c2043e34d3bc3b3 * and later diferent patch was added to the layer as well as SRC_URI in: https://git.openembedded.org/meta-openembedded/commit/?id=8df60dc8d69ffa506fd923f8db91a2a8aa33343f Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcamera: Simplify pipeline configurationAlexander Stein2023-05-241-3/+1
| | | | | | | | | Default to 'auto' which enables all target architecture pipelines (+UVC). IPAs are also automatically enabled if the corresponding required pipeline is enabled as well. Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* fluidsynth: update 2.2.6 -> 2.3.2Markus Volk2023-05-234-79/+25
| | | | | | | | | | -remove unneeded patch -remove fluidsynth-native as it seems to be unneeded -remove STAGING_LIBDIR from target files -add more packageconfig options Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* aom: Pass nasm flags via toochain.cmakeKhem Raj2023-05-231-3/+6
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* aom: Upgrade to 3.6.1Khem Raj2023-05-232-19/+79
| | | | | | | | | | | | | | | Switch to using nasm instead of yasm on x86 builds for asm optimizations. This is to enable reproducible builds even though yasm is preferred but it encodes FILE directive in ELF to absolute path of asm files and results in buildpath warnings, there is no way to remove it without editing the final binaries. nasm provides --reproducible option to handle it nicely License-Update: Fixes a typo [1] [1] https://aomedia.googlesource.com/aom/+/f97c63026174df67bc08c75fa72bf0ad01ca1a98 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* tvheadend: Upgrade to latest masterKhem Raj2023-05-231-0/+4
| | | | | | | | | | | Fix buildpath errors due to generate build.c file containing compiler options Fixes WARNING: tvheadend-4.3+gitAUTOINC+cc60283368-r0 do_package_qa: QA Issue: File /usr/bin/tvheadend in package tvheadend contains reference to TMPDIR [buildpaths] WARNING: tvheadend-4.3+gitAUTOINC+cc60283368-r0 do_package_qa: QA Issue: File /usr/src/debug/tvheadend/4.3+gitAUTOINC+cc60283368-r0/build.linux/build.c in package tvheadend-src contains reference to TMPDIR [buildpaths] Signed-off-by: Khem Raj <raj.khem@gmail.com>
* oscam: Fix buildpaths in generated sourcesKhem Raj2023-05-231-0/+3
| | | | | | | Fixes QA Issue: File /usr/src/debug/oscam/1.10+11491-r0/config.c in package oscam-src contains reference to TMPDIR [buildpaths] Signed-off-by: Khem Raj <raj.khem@gmail.com>
* oscam: Upgrade to 11718Khem Raj2023-05-231-1/+1
| | | | | | | | The changelog is here [1] [1] https://trac.streamboard.tv/oscam/log/trunk?action=follow_copy&mode=follow_copy&rev=11718&stop_rev=11491&limit=500# Signed-off-by: Khem Raj <raj.khem@gmail.com>
* dav1d: update 1.1.0 -> 1.2.0Markus Volk2023-05-231-1/+1
| | | | | | | | | | | | | | | | | Changes for 1.2.0 'Arctic Peregrine Falcon': ------------------------------------------- 1.2.0 is a small release of dav1d, adding more SIMD and fixes - Improvements on attachments of props and T.35 entries on output pictures - NEON z1/z3 high bit-depth optimizations and improvements for 8bpc - SSSE3 z2/z3 8bpc and SSSE3 z1/z3 high bit-depth optimziations - refmvs.save_tmvs optimizations in SSSE3/AVX2/AVX-512 - AVX-512 optimizations for high bit-depth itx (16x64, 32x64, 64x16, 64x32, 64x64) - AVX2 optimizations for 12bpc for 16x32, 32x16, 32x32 itx Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: update 0.3.70 -> 0.3.71Markus Volk2023-05-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bugfix release that is API and ABI compatible with previous 0.3.x releases. - A new zero-latency jackdbus bridge was added. This works similar to what PulseAudio has to offer and creates a sink/source when jackdbus is started. It is however much more efficient and runs the complete PipeWire graph as a synchronous JACK client with no added latency. - Many performance improvements. Activation of remote nodes is more efficient, fewer eventfds are required on the clients, less callback overhead in performence critical paths and an optimized poll function was added. This was mainly driven by the jackdbus module to get the lowest possible overhead when running the graph. - The JACK notify callback implementation was reworked to emulate better what JACK does, improving compatibility with ardour7 and the JACK stress test. - More work on BAP devices. Device latency is now passed on to applications also for multi-device headsets, and channel allocation is handled better. - Many more improvements and bugfixes. - Remove the hardcoded limit on io_areas. This is used to link nodes together and exchange buffers, it was limited to 2048 but now dynamically scales based on requirements. - Rate and quantum changes are now applied correctly in more cases. (#3159) - Updates to client-node to more efficiently process the driver. - The profiler information was improved to be more accurate. It should now work better for remote drivers. - Some potential memory map errors were fixed in the protocol because in some case with large messages, some fds were closed too soon. - pw-filter now implements the pw_filter_set_active() method. - A potential out-of-buffers case was fixed in capture pw-streams where buffers were not moved to the recycle queue when the node suspended. - Nodes are now always woken up with the eventfd. Previously there were some optimiztions in the server to directly call into the node process function but that optimization is not necessary. Without this optimization it is now possible to run nodes in different threads. - pw-stream trigger is now implemented correctly in all cases. - Remote nodes now use one eventfd less because they get triggered with the node eventfd directly. - Monitor ports are now ignored in latency updates. - A potential race when reporting an error to a client was fixed. (#3192) - Fix a bug where always_process nodes would sometimes IDLE. (#3189) - Optimize peer activation. Nodes are now activated more efficiently and independent of the number of links. It also reduces the number of eventfds and memory in remote clients. - A bug in property serialization was fixed. Values with spaces would only serialize the first part of the value. - Correctly handle the echo-canceler plugin init method fallback. The samplerate was not correctly configured. This is only a regression for people that have external echo-canceler plugins. - RAOP sink now only sets the volume on the remote end when the stream is recording. (#3175) - RAOP discover now tries to deduplicate entries from the same host. - A new zero-latency jackdbus bridge was added. This works similar to what pulseaudio has to offer and creates a sink/source when jackdbus is started. It is however much more efficient and runs the complete PipeWire graph as a synchronous JACK client. - The access module uses a more secure way to check the application executable. - module-combine-stream now has configurable delay and latency for each stream. This can be used to align sinks/sources with different latencies. - A potential crash in module-pulse-tunnel was fixed when shutting down. (#3199) - Module-rt will now clamp the nice value to the min allowed value to avoid errors from rtkit. (#3186) - Fix a bug with the session counters in module-rtp-sap. Also use the right format for L24. Improve the AES67 example config. - Improve some warning and info messages in module-rt. (#3194) - module-rtp-session should now do something when started without arguments. - A potential crash in module-rtp-session was fixed. (#3217) - module-filter-chain has better error reporting when a convolver fails to load. (#3223) - Move some things around to avoid compiler warnings. (#3171) - Increase mixer ports. Reorganize some things and bump mixer input ports from 128 to 512. - Fix a potential crash when a node is scheduled before it completes the setup. - The JACK sink and source SPA plugins have seen some improvements. - Allow the peaks resampler still if we disabled resampling. - Perform more cleanup in audioadapter when in error. - An optimized non-cancellable loop implementation was added. - Callbacks were optimized with a _fast() varsion that doesn't check the version and method. When this check is performed earlier, it can be skipped in performance critical places. - Some of the callbacks and system methods are now using the fast function calls in critical paths. - A potential division by zero was fixed in the ALSA plugins. - Improve rate and quantum when starting audioconvert. - Make it possible to override node.driver in the SPA null-audio-driver. (#3220) - The audio info parameter parsing was refactored and improved. - Fix some races with clients exiting when playing samples. - An option was added to change or disable the dbus name registration. (#2987) - Implement battery reporting using AT+XEVENT. - Disable hardware volume for 3M WorkTunes. - Implement BAP audio locations (channel positions) by using the new bluez properties. - Fix some errors reported by JACK test.cpp. (#2638) - Add jack.show-midi option to show/hide midi ports. - Add jack.max-client-ports option. JACK also has a port limit and so PipeWire needs it as well to make the tests happy. - Call the shutdown callback only when the server stopped, not when there is a random error. (#3070) - Avoid registering the same port name twice. - Call port registration callbacks in activate/deactivate. - Improve jack_port_connected(). - Improve some error reporting. - The JACK headers were updated to a newer version. - JACK callbacks are now managed with an event queue to simulate more what JACK does. This avoids emiting callbacks when a method is blocking for a reply and causing deadlocks. (#3183) - Assign unique names to JACK clients. (#2833) - Fix a potential crash when the thread_utils was used after free. - Aliases are now not filled in by default to improve JACK compatibility. (#3154) - The ALSA plugin will now wait for negotiation to complete or an error before _prepare() completes. This makes more applications deal correctly with the potential errors. - A new document about how scheduling is implemented was added. - Update the pw-cli man page. (#2988) - Document the SPA Pod serialization. - Document the PipeWire native protocol. Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* mpd: Fix build with clang-16Khem Raj2023-05-172-0/+29
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* mpd: fix build error when fmt updatedWang Mingyu2023-05-173-2/+102
| | | | | | | | | backport upstream patch for build error when fmt updated: ix-build-error-when-fmt-updated.patch minor-fixup-for-libfmt10.patch Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcamera: Allow overwriting default pipelines and IPAAlexander Stein2023-05-171-2/+5
| | | | | | | | | By default only uvcvideo, simple and vimc pipelines as well as vimc IPA are built. Add new variables for enabling a custom set of enabled pipelines and IPAs. Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* gerbera: Fix build with fmt 10+Khem Raj2023-05-172-1/+170
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcamera: update 0.0.4 -> 0.0.5Markus Volk2023-05-152-46/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libcamera v0.0.5 Bugfixes: - meson: Ignore -Wredundant-move with gcc-13 and newer - cam: file_sink: Workaround gcc-13 dangling-reference false positive - libcamera: Open files with O_CLOEXEC - meson: Fix git version parsing - libcamera: camera_manager: Stop exponential explosive calls to createPipelineHandlers - py: cam: Fix demosaic overflow issue - libcamera: base: Make the registration of log categories atomic Core: - test: controls: control_info_map: Test default constructor - controls: guard ControlInfoMap against nullptr idmap_ - device_enumerator_udev: Use std::string_view - formats: Add 14-bits Bayer RAW formats - device_enumerator_udev: Remove devnum from dependency map - meson: libcamera: Report IPA signature method - meson: Align handling of build metadata - converter: Check converter validity - Keep using syslog for isolated IPA modules - utils: ipc: Update parser.py - utils: checkstyle.py: Don't run commit title checker on staged commits - framebuffer: Allow inheritance of FrameBuffer - Remove transform from V4L2SubdeviceFormat - libcamera: camera_sensor: Add tryFormat() - camera_sensor: Fix typo in comment - camera_sensor: Demote flip support message to Debug - internal: tracepoints: Use correct include directive - libcamera: camera: Ensure queued requests are invalid ipa: - doc: Clarify IPA acronym in its namespace description - rkisp1: Add tuning files for PinephonePro sensors - rkisp1: Add tuning files for Google DRU "Scarlet" sensors - rkisp1: lsc: Fix integer division error - libipa: Add OV2685 Camera Sensor Helper - libipa: Add OV5647 Camera Sensor Helper - raspberrypi: agc: Add "shadows" constraint mode - raspberrypi: generalise algorithms - raspberrypi: Fix default frame durations calculation - raspberrypi: Ensure shutter speed and gain are clipped in the AGC - raspberrypi: Use the new sensor limits fields in CameraMode - raspberrypi: Add sensor mode limits to CameraMode - raspberrypi: Fix crash under LTO - raspberrypi: imx296: Minor tuning updates - raspberrypi: agc: Fix overflow in Y value calculation - raspberrypi: Better heuristics for calculating Unicam timeout - raspberrypi: Generalise statistics - raspberrypi: Change Unicam timeout handling pipeline: - simple: Validate transform - imx8-isi: Remove mbusCode from formatsMap_ - imx8-isi: Automatically select media bus code - imx8-isi: Split Bayer/YUV config generation - imx8-isi: Break out RAW/YUV format selection - raspberrypi: Iterate over all Unicam instances in match() - raspberrypi: Add a Unicam timeout override config options - raspberrypi: Always use ColorSpace::Raw for raw streams - raspberrypi: Drop unused code - ipu3: Drop unused code apps: - cam: kms_sink: Drop unique_ptr<> from DRM::AtomicRequest - cam Return std::optional<> from StreamKeyValueParser::parseRole() - android: jpeg: Add JEA implementation ABI Compliance: * abi-compliance-checker reports 98.6% ABI and 100% API compatibility with with v0.0.4 Total binary compatibility problems: 1, warnings: 1 Total source compatibility problems: 0, warnings: 0 - First virtual method ~__dt ( ) has been added to this class. 1) The layout of type structure has been shifted by 8 bytes by the added v-table pointer. 2) Size of class has been increased by 8 bytes. affected symbols: 6 (1.4%) FrameBuffer::releaseFence ( ) FrameBuffer::setCookie ( uint64_t cookie ) FrameBuffer::cookie ( ) FrameBuffer::planes ( ) FrameBuffer::request ( ) FrameBuffer::metadata ( ) This ABI breakage was introduced by: 4843bfa ("libcamera: framebuffer: Allow inheritance of FrameBuffer") Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* xdg-desktop-portal-wlr: update 0.6.0 -> 0.7.0Markus Volk2023-05-041-1/+1
| | | | | Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nv-codec-headers: fix installed-vs-shipped with multilibMartin Jansa2023-05-041-1/+1
| | | | | | | | | | | | | | | | | * pass LIBDIR to install ffnvcodec.pc in right directory * fixes: ERROR: QA Issue: nv-codec-headers: Files/directories were installed but not shipped in any package: /usr/lib /usr/lib/pkgconfig /usr/lib/pkgconfig/ffnvcodec.pc Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install. nv-codec-headers: 3 installed and not shipped files. [installed-vs-shipped] when libdir is /usr/lib64 with multilib Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: update 0.3.68 -> 0.3.70Markus Volk2023-04-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a quick bugfix release that is API and ABI compatible with previous 0.3.x releases. - Fix a regression in the scheduler that could keep some nodes IDLE. - Fix a regression in the biquad filters in filter-chain. - Fix a regression and potential crash in the ALSA mixer probing. - Fix a regression in pipewiresrc with timestamps that could cause cheese to record video with wrong timestamps. - Beamforming support was enabled in the echo-canceler. - pulse-tunnel and raop-sink will now proxy local volume changes to the remote end. - More bugfixes and improvements. - Fix a bug in the graph scheduler where some nodes might stay IDLE in some cases (like when connecting the source of the echo-canceler to the sink). - pw-metadata can now be created from the factory with initial values for the metadata. (#3076) - Conditions were added to the pipewire config file to make it possible to configure the access module and the exec sections. - Support was added in pw-stream to intercept and override properties for the adapter. This can be used to implement custom volume control, for example. - pw-metadata can now list all available metadata objects with the -l option. - A new pw-config tool was added to debug configuration file loading and parsing. - The webrtc echo canceler now supports beamforming. You can provide the coordinates of the microphones and let webrtc perform beamforming on the captured samples to improve quality and remove noise. - Fix a regression in the filter-chain with biquad filters. (#3161) and improve error reporting. - The pulse-tunnel will now proxy the volume changes to the remote end. - The RAOP sink will now send volume parameters to control the volume remotely. (#2061) - One ALSA commit was not correctly reverted and might cause crashes. - The ALSA sink and source now calculate the ALSA ringbuffer memory location more correctly wich might improve compatibility with some hardware. - v4l2 now sets the values of the controls in the Props param. - The echo-canceler aec_args are now parsed like they would be under pulseaudio. - More work on synchronizing BAP devices. - The GStreamer source can now renegotiate the format when it changes. - The GStreamer source now uses the BaseSrc clocking code to implement the clock and timing code. This is a quick bugfix release that is API and ABI compatible with previous 0.3.x releases. - Reverted the UCM changes, they seem to cause regressions causing audio to be muted in some cases. - Fix a regression in the scheduler where a driver node might not be marked runnable in some cases, like when echo-cancel is used. (#3145) - Handle links from the driver to itself. This makes the midi bridge work again. (#3153) - ALSA rate matching for sources was fixed. It would previously wait too long for rate matching and then cause drift. This should reduce crackling and stuttering whan capturing in low latency. - Fix the GStreamer clock to make cheese video recording work again. (#3149) - More fixes and improvements. - Fix a regression in the scheduler where a driver node might not be marked runnable in some cases, like when echo-cancel is used. (#3145) - Handle links from the driver to itself. This makes the midi bridge work again. (#3153) - Some man pages were improved. - Fix a potential crash when thread-loop is destroyed before the loop. (#3150) - A new raw biquad filter was added to filter-chain. You can manually set the 6 parameters and you can use this to create custom filters per sample rate. (#3139) - The echo-canceler now supports different channels for the capture and playback streams. - A SB Audigy specific profile set was added to make better use of the controls. (#2934) - More ALSA IRQ based scheduling improvements. - ALSA rate matching for sources was fixed. It would previously wait too long for rate matching and then cause drift. This should reduce crackling and stuttering whan capturing in low latency. - The echo-cancel plugin API has a new method to make it possible to have different channels for capture, source and playback. - Reverted the UCM changes, they seem to cause regressions causing audio to be muted in some cases. - Many more BAP fixes and improvements. Devices are now created as a set and can be combined into one device by the session manager. - Fix the GStreamer clock to make cheese video recording work again. (#3149) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: remove 'inherit gsettings'Markus Volk2023-04-191-2/+1
| | | | | | | - remove duplicated PACKAGECONFIG Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* xdg-desktop-portal-wlr: updateMarkus Volk2023-04-121-1/+1
| | | | | | | | | | | There is not a new version released yet, but this update has lots of fixes and adds features for recent pipewire and hyprland support. But most important ... without the update it will cause a 30 sec. delay to the start of various gtk apps in combination with current xdg-desktop-portal release. Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* dleyna-{server,renderer}: fix dev-so QA issue with multilibMartin Jansa2023-04-102-2/+2
| | | | | | | | | | * the libdir is arch specific, but the subdirectory is always BPN * fixes: lib32-dleyna-server-0.6.0+gitAUTOINC+eb895ae827: non -dev/-dbg/nativesdk- package lib32-dleyna-server contains symlink .so '/usr/lib/dleyna-server/libdleyna-server-1.0.so' [dev-so] lib32-dleyna-renderer-0.6.0: non -dev/-dbg/nativesdk- package lib32-dleyna-renderer contains symlink .so '/usr/lib/dleyna-renderer/libdleyna-renderer-1.0.so' [dev-so] Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* pipewire: update 0.3.67 -> 0.3.68Markus Volk2023-04-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bugfix release that is API and ABI compatible with previous 0.3.x releases. This release contains a huge number of changes, some of which might cause regressions. Please report anything that seems to fail after the upgrade. UCM devices in particular might have changed names, profiles and ports that might require changes in custom scripts. - Symbolic links to the pipewire binary are now used instead of recompiling the same binary multiple times. - Changes to the graph scheduler related to quantum/rate updates and calculation of the node states. Things should start and switch between quantums and rates more smoothly now and especially virtual devices should now only run when required. - A new RTP session module was added. This uses the Apple MIDI protocol to configure low-latency bidirectional MIDI (and with a PipeWire specific extension, also audio) between machines. OPUS encoding was added to the RTP formats. The SAP module was separated from the rtp-sink/source module to make it more usable. - A new runtime debug property was added to all streams and nodes to trigger a save of the raw samples to a wav file. Support for this has also been added to the echo-canceler to debug potential issues. - Module pulse-tunnel has improved rate matching and synchronization support. It should also not drift anymore for capture devices. - The link-factory now ignores by default the link.passive property. This means that tools like pw-link or jack clients and wireplumber can't make passive links anymore. The reason is that there is now much more advanced logic in PipeWire itself to handle passive links based on node and port properties. - The RAOP sink was ported to new OpenSSL functions. Digest passwords are handled correctly now and support for more devices was added. - The ACP code was updated with new PulseAudio UCM code: "Create multiple profiles per verb for conflicting devices". This might change the names of devices, profiles and ports so scripts might need to be updated. - Upmixing is disabled again by default. We now ship config files that distros can install to enable upmixing again. The reason being that PipeWire should not apply fancy DSP processing to audio by default. - Many cleanups and bugfixes, including some crashes and memory corruption bugs. - Various FreeBSD compilation fixes. - Don't crash when calling _connect twice in stream/filter. (#3091) - Links are now installed instead of compiling the pipewire binary multiple times. - There is now a new core event bound_props that augments the bound_id event with the global properties. This can be used to get the global.serial among other global properties. It also makes it possible in the future to let the server allocate unique names or uuids. - Fix a bug where the server could go into an infinite reconfigure loop when the samplerate of a driver would change. - When a samplerate was forced, restore the previous best samplerate when the samplerate is no longer forced. (#2133) - Rework how the states of the nodes in the graph are calculated. A more refined algorithm is now used that only runs nodes that need to run. - Rework how the quantum change is applied to the graph. Drivers are now responsible for using the new updated rate/quantum before starting a new cycle. This avoids starting a cycle with an old quantum first. - pw-stream and pw-filter will now ensure that the Trigger event is called from the main thread. - node.force-rate=0 will now force the node.rate on the graph, forcefully switching the hardware into the new rate if possible. (#3026) - Additional checks were added to the thread-loop to check locking order. - Additional checks were added to pw-stream and pw-filter to check if methods are called from the right thread context. - A new RTP session module was added. This uses the Apple MIDI protocol to configure bidirectional MIDI (or audio) between machines. - SAP support was removed from module-rtp-source and module-rtp-sink and moved to a separate module. This makes it possible to use the RTP modules without SAP support as well. - The echo-cancel module now has support to save the signals to a wav file for debugging purposes. - The RTP modules now have support for the OPUS codec. - The RAOP module was ported to new openssl encryption functions and handles digest passwords correctly now. - module-raop-discover now has match rules to be able to select the streams and set properties. - Module pulse-tunnel has improved rate matching and synchronization support. (#3093) - Fix potential memory corruption and infinite loops because module-pulse-tunnel was unloaded from the wrong thread. - The link-factory now ignores by default the link.passive property. This means that tools like pw-link or jack clients and wireplumber can't make passive links anymore. The reason is that there is now much more advanced logic in PipeWire itself to handle passive links based on node and port properties. - module-echo-cancel will now clear its buffers after a suspend to avoid playing stray samples. - module-raop-sink will now handle 0 timing_port replies. (#3133) - The adapter module now has support for saving the raw audio to a wav file for debugging purposes. - The ACP code was updated with new PulseAudio UCM code: "Create multiple profiles per verb for conflicting devices". This might change the names of devices, profiles and ports so scripts might need to be updated. - Upmixing was disabled again by default. We now ship config files that distros can install to enable upmixing again. (#3081) - audioadapter and audioconvert have seen improvements in the experimental non-DSP/passthrough mode. - Fix a potential race where the dummy drivers could fail to stop a timer and cause endless warnings in the logs. - The ALSA plugin has experimental support for IRQ based scheduling. This should decrease latency for some (mostly USB) drivers. This should bring latency within JACK latency. More work on this will be done before the 1.0 release later this year. - Audioconvert now has support for volume ramping. (#3046) - A new loop method was added the check if a thread is currently running the loop. - channelmix.disable and resample.disable now generate an error when true and channelmixing or resampling is required in the converter. - Fix a crash in some cases when a device was disconnected. - Support async transport state changes. This avoids some lockups when the bluetooth backend is having issues. (#3023) - Align BAP sinks. This improves synchronization between earpieces. - Improve properties in pw-top and pavucontrol. - Improve error handling from pulse-tunnel. - Generate silence correctly for unsigned formats as well. - Review buffer params. The streams should now just work with 1 or 2 buffers. - module-rtp-send and module-rtp-recv now have support for the OPUS codec. - Make sure we don't call any callbacks anymore when deactivating. (#2781) - Sort the device by priority in deviceprovider. (#3072) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* meta-multimedia: Fix missing upstream status in several patchesKhem Raj2023-04-0520-3/+44
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* sox: remove ffmpeg dependencyEnrico Scholz2023-04-051-1/+1
| | | | | | | | | | | | | ffmpeg format handler was removed from sox in 2013 ([1]). Drop it also from DEPENDS. This makes sox generally available without the need to whitelist the commercial ffmpeg license. [1] https://sourceforge.net/p/sox/code/ci/5ae4049727d4f29036ad541bde5863c850aa7755 Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcamera: re-introduce fix for gcc-13Markus Volk2023-04-012-1/+48
| | | | | Signed-off-by: Markus Volk <f_L_K@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nv-codec-headers: add clean target to MakefileMarkus Volk2023-04-012-1/+29
| | | | | | | | | | | next try to fix an error on rebuilds: | NOTE: make clean | ERROR: oe_runmake failed | WARNING: exit code 1 from a shell command. | make: *** No rule to make target 'clean'. Stop. Signed-off-by: Markus Volk <f_L_K@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcamera: update 0.0.1 -> 0.0.4Markus Volk2023-03-252-51/+2
| | | | | Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* packagegroup-meta-multimedia: Remove library only packages from rdepsKhem Raj2023-03-221-32/+2
| | | | | | | | | | Because they get renamed, it is better to ignore them and let a dependency build them Fixes errors like ERROR: packagegroup-meta-multimedia-1.0-r0 do_package_write_ipk: An allarch packagegroup shouldn't depend on packages which are dynamically renamed (gssdp to libgssdp-1.2-0) Signed-off-by: Khem Raj <raj.khem@gmail.com>
* wireplumber: update 0.4.13 -> 0.4.14Markus Volk2023-03-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WirePlumber 0.4.14 ~~~~~~~~~~~~~~~~~~ Additions: - Added support for managing Bluetooth-MIDI, complimenting the parts that were merged in PipeWire recently (!453) - Added a default volume configuration option for streams whose volume has never been saved before; that allows starting new streams at a lower volume than 100% by default, if desired (!480) - Added support for managing link errors and propagating them to the client(s) involved. This allows better error handling on the application side in case a format cannot be negotiated - useful in video streams (see !484, pipewire#2935) - snd_aloop devices are now described as being "Loopback" devices (pipewire#2214) - ALSA nodes in the pro audio profile now get increased graph priority, so that they are more likely to become the driver in the graph - Added support for disabling libcamera nodes & devices with ``node.disabled`` and ``device.disabled``, like it works for ALSA and V4L2 (#418) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>