Draft: videoconvert: Add vulkan converter
This work was done as a GSOC 2023 Project to implement a way to convert videoformats in case client capabilities don't overlap.
The goal of the MR is creating a videoconvert plugin leveraging vulkans vkCmdBlitImage
implemented as a spa_node
based filter in !1644 (merged).
Currently it requires manual configuration via PIPEWIRE_REMOTE=pipewire-1 pw-cli set-param <node-id> PortConfig "{"direction": 0, "mode": 2}"
.
Producers are run in passtrough
mode, while clients should run in passtrough
if formats are compatible or convert
mode if convertion is required.
Instructions:
- Build the branch and enter the build directory with
ninja -C <builddir> pw-uninstalled
- Start the
video-src
example and get the id if the node - Start the sink with
PIPEWIRE_NODE=<src-id> video-play
- Set the mode of the converter with
pw-cli set-param <sink-id> PortConfig "{"direction": 0, "mode": 2}"
- Inspect the configuration with
pw-dump
Based on: