Tile swap lays tiles cut from the photographs over the canvas as Tiles does, in a grid, in bricks or scattered, and swaps each one for another cut at a moment of its own, so the mosaic keeps changing piece by piece. The layout stays put for the whole clip; what a tile shows depends only on the tile and how many times it has swapped, counted round the clip, so it holds still between swaps and the clip loops without a jump. On the command line it is -e tileswap with --tileswap-rate and the rest. VideoEffect learns a second kind: an effect that answers needsSources() writes compose() instead of animate(), and the base then takes no crop, only the one seed, so it sees the photographs when it leads the chain and the stage before it otherwise. Transforms render exactly as before. The tile cutting and painting move out of tiles.cpp into tile_plan.hpp for both effects to share; Tiles renders byte for byte as before. Version 0.8.0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
32 lines
994 B
Bash
32 lines
994 B
Bash
# Builds the release tagged v$pkgver from the repository this file sits in,
|
|
# so pkgver must follow the project() line of CMakeLists.txt (the version core
|
|
# test checks it). From this folder: makepkg -si
|
|
pkgname=effector
|
|
pkgver=0.8.0
|
|
pkgrel=1
|
|
pkgdesc='Image effects app: a GTK4 interface and a headless CLI over pluggable effects'
|
|
arch=('x86_64' 'aarch64')
|
|
url='https://git.plan9.uber.space/hans/effector'
|
|
license=('GPL-3.0-or-later')
|
|
depends=('gtkmm-4.0' 'gdk-pixbuf2' 'pango' 'cairo' 'glib2' 'glibc' 'gcc-libs')
|
|
optdepends=('ffmpeg: write video projects')
|
|
makedepends=('cmake' 'ninja' 'git')
|
|
checkdepends=('xorg-server-xvfb')
|
|
source=("$pkgname::git+file://${startdir%/packaging/arch}#tag=v$pkgver")
|
|
sha256sums=('SKIP')
|
|
|
|
build() {
|
|
cmake -S "$pkgname" -B build -G Ninja \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_INSTALL_PREFIX=/usr
|
|
cmake --build build
|
|
}
|
|
|
|
check() {
|
|
ctest --test-dir build --output-on-failure
|
|
}
|
|
|
|
package() {
|
|
DESTDIR="$pkgdir" cmake --install build
|
|
}
|