7c314c73ce | ||
---|---|---|
.. | ||
Makefile | ||
README.md | ||
craplist2h.awk | ||
craplist2str.awk | ||
crapulator.c | ||
crapulator.h | ||
crapulors.liste | ||
essai.sh | ||
fifo.c | ||
fifo.h | ||
filterstack.c | ||
filterstack.h | ||
fonderie.c | ||
glitches.c | ||
glitches.h | ||
interpolator.c | ||
metriques.c | ||
metriques.h | ||
notes.md | ||
sfx.c | ||
sfx.h | ||
single.c | ||
single.h | ||
singlepass.c | ||
t.c |
README.md
Fonderie et Interpolator
Avec toutes ces fonctions disponibles et grabvidseq
, nous
savons faire des images floues. L'étape suivante, les plus
pervers d'entre vous le savent déja, est celle de la création
de films flous dans le domaine spacial.
À l'heure actuelle, il y a plusieurs programmes distincts. Le premier (fonderie) fait une moyenne mobile sur N images consécutives, et le second (interpolator) fait un fondu-enchainé de N pas entre deux images consécutives.
Mais avant et après un de ces deux traitements, il y a des chaines de filtres...
Chaine de filtres
Ce système connait un certain nombre de filtres et d'effets spéciaux destinés à la kitchitude du produit final. Ils peuvent être chainés les uns après les autres, à l'entrée et à la sortie du process de floutagement.
Ces filtres ont chacun un nom et un numéro. que l'on peut (en théorie)
utiliser indistinctement dans une chaine de filtres.
L'option -L
de ces logiciels permet d'obtenir la liste des filtres.
Une chaine de filtres est constituée d'une liste de nom ou de numéro
de filtre, séparés par le caractère :
, une façon de faire très
classique dans notre univers, en fait.
mirsplit:ctr2x2:3:killlines
Nous allons donc voir quelques exemples un peu plus loin.
Fonderie
Le programme principal, utilisé à partir de la ligne de commande avec une foule d'options aux mnémoniques abscons et à la syntaxe perverse.
Rassurez-vous, en général il est wrappable dans des scripts
écrits en Bash. Il est même possible un jour qu'ils puissent lire des
paramètres dans $(env)
.
./fonderie, compiled Dec 30 2020, 14:09:18, pid 5013
*** FloatImg library, alpha v116 (Dec 27 2020, 22:39:28)
FONDERIE
options:
-E input:filter:chain
-F output:filter:chain
-g convert to gray
-I input glob pattern
-L list available filters
-O output directory
-T fifo size
-v increase verbosity
exemple d'utilisation
Voici comment appeler cette machinerie depuis la ligne de commande tel qu'il m'arrive de le pratiquer :
#!/bin/bash
GRABDIR="/spool/tth/fonderie"
FONDEUR="$HOME/Devel/FloatImg/Fonderie/fonderie"
GLOB=${GRABDIR}'/?????.fimg'
${FONDEUR} -I "$GLOB" -E cos01:25 -T 30 -F 2:classtrial
Votre machine va maintenant mouliner avec entrain et persévérance,
puis
ensuite il suffit d'encoder toutes les images générées dans
p8/
(répertoire de sortie par défaut)
avec une incantation de ffmpeg :
ffmpeg -nostdin \
-loglevel error \
-y -r 30 -f image2 -i p8/%05d.png \
-c:v libx264 -pix_fmt yuv420p \
foo.mp4
crapulator.c
C'est dans ce module qu'est codé le moteur de filtrage, utilisé aussi bien en entrée qu'en sortie. Il est, à l'heure actuelle, assez rudimentaire, avec un paramétrage simpliste, et un manque criant de documentation...
Interpolator
Un logiciel dont l'inspiration vient du passé et les améliorations d'une résidence à Terre-Blanque, ça ne peut pas être complètement malsain.
*** interpolator.c : compiled by tTh, Jan 12 2021 16:18:58
*** FloatImg library, alpha v116 (Dec 27 2020, 22:39:28)
INTERPOLATOR
usage:
interpolator [options] <inglob> <outdir> <nbsteep>
options:
-S nn mysterious sort
-E i:bla:k input filter chain
-F name:j output filter chain
-L list available filters
-v increase verbosity
Singlepass
Le monde à l'envers : pas de traitement inter-frames, mais par contre, on peut facilement tester une chaine de filtres sur une image unique.
*** singlepass.c : compiled Mar 17 2021 11:21:45
*** FloatImg library, alpha 122 (Mar 16 2021, 18:44:00)
------ Single pass serial filter ------
usage:
-F define:the:filter:chain
-g input glob pattern
-L list available filters
-O /output/directory
-v spit more messages
Conclusion
Use the source, Luke