FloatImg/Fonderie/README.md
2020-12-19 08:48:56 +01:00

99 lines
2.7 KiB
Markdown

# 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**.
À l'heure actuelle, il y a deux 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.
## 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)`.
```
tth@delirium:~/Devel/FloatImg/Fonderie$ ./fonderie -h
*** ./fonderie :
compiled by tTh, Nov 3 2020 03:42:29
pid 3424
*** FloatImg library, alpha v112 (Nov 2 2020, 00:31:33)
FONDERIE
options:
-g convert to gray
-I input glob pattern
-O output directory
-T fifo size
-v increase verbosity
-E input effect chain
-F output effect chain
```
## exemple d'utilisation
Voici comment appeler ce truc depuis la ligne de commande
tel qu'il m'arrive de pratiquer :
```
#!/bin/bash
GRABDIR="/spool/tth/fonderie"
FONDEUR="$HOME/Devel/FloatImg/Fonderie/fonderie"
GLOB=${GRABDIR}'/?????.fimg'
${FONDEUR} -T 40 -I "$GLOB" -E 10 -T 30 -F 2:7
```
Votre machine va maintenant mouliner avec entrain, et
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.
## Conclusion
**Use the source, Luke**