2020-11-09 20:27:57 +01:00
|
|
|
# Fonderie et Interpolator
|
2020-11-02 14:51:48 +01:00
|
|
|
|
|
|
|
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**.
|
|
|
|
|
2020-12-19 08:48:56 +01:00
|
|
|
À 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.
|
|
|
|
|
|
|
|
|
2020-11-09 20:27:57 +01:00
|
|
|
## Fonderie
|
2020-11-02 14:51:48 +01:00
|
|
|
|
2020-11-02 22:20:54 +01:00
|
|
|
Le programme principal, utilisé à partir de la ligne de commande
|
2020-12-19 08:48:56 +01:00
|
|
|
avec une foule d'options aux mnémoniques abscons et à la syntaxe
|
|
|
|
perverse.
|
2020-11-02 22:20:54 +01:00
|
|
|
|
2020-11-08 17:38:55 +01:00
|
|
|
Rassurez-vous, en général il est wrappable dans des scripts
|
2020-11-05 21:07:38 +01:00
|
|
|
écrits en Bash. Il est même possible un jour qu'ils puissent lire des
|
2020-11-02 22:20:54 +01:00
|
|
|
paramètres dans `$(env)`.
|
|
|
|
|
2020-11-04 19:29:07 +01:00
|
|
|
```
|
|
|
|
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
|
2020-12-19 08:48:56 +01:00
|
|
|
-E input effect chain
|
|
|
|
-F output effect chain
|
2020-11-04 19:29:07 +01:00
|
|
|
```
|
|
|
|
|
2020-11-05 18:24:05 +01:00
|
|
|
## 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'
|
|
|
|
|
2020-12-19 08:48:56 +01:00
|
|
|
${FONDEUR} -T 40 -I "$GLOB" -E 10 -T 30 -F 2:7
|
2020-11-05 18:24:05 +01:00
|
|
|
```
|
2020-11-05 21:07:38 +01:00
|
|
|
|
2020-12-19 08:48:56 +01:00
|
|
|
Votre machine va maintenant mouliner avec entrain, et
|
|
|
|
ensuite il suffit d'encoder toutes les images générées dans
|
2020-11-08 17:38:55 +01:00
|
|
|
`p8/` (répertoire de sortie par défaut)
|
2020-11-05 18:24:05 +01:00
|
|
|
avec une incantation de ffmpeg :
|
|
|
|
|
|
|
|
```
|
2020-11-05 21:07:38 +01:00
|
|
|
ffmpeg -nostdin \
|
|
|
|
-loglevel error \
|
|
|
|
-y -r 30 -f image2 -i p8/%05d.png \
|
|
|
|
-c:v libx264 -pix_fmt yuv420p \
|
|
|
|
foo.mp4
|
2020-11-05 18:24:05 +01:00
|
|
|
```
|
|
|
|
|
2020-12-19 08:48:56 +01:00
|
|
|
## crapulator.c
|
2020-11-02 22:20:54 +01:00
|
|
|
|
|
|
|
C'est dans ce module qu'est codé le moteur de filtrage, utilisé
|
2020-11-04 19:29:07 +01:00
|
|
|
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...
|
|
|
|
|
2020-11-09 20:27:57 +01:00
|
|
|
## Interpolator
|
|
|
|
|
2020-12-19 08:48:56 +01:00
|
|
|
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.
|
2020-11-12 23:39:16 +01:00
|
|
|
|
2020-11-10 00:50:25 +01:00
|
|
|
|
|
|
|
|
|
|
|
## Conclusion
|
|
|
|
|
2020-11-09 20:27:57 +01:00
|
|
|
|
2020-11-04 19:29:07 +01:00
|
|
|
**Use the source, Luke**
|
2020-11-02 22:20:54 +01:00
|
|
|
|