Le mardi 22 décembre 2020 à 20:10:02 UTC+1, Marc Chantreux a écrit :
> hello, 
> 
> regarde du coté d'xargs, vraiment :) 
> 
> tu devrais pouvoir écrire ton truc de la manière suivante: 
> 
> f_image_extract () xargs -0 -P4 -n1 -IX \ 
> ffmpeg -i X -r 6 -f image2 -qscale 1 photo-%0d.jpg 
> 
> find ./ -iname \*.mov | f_image_extract 
> 
> le bonus c'est que -P4 traite 4 videos simultanément (c'est l'hiver: on 
> se chauffe comme on peut) 
> 

find ./ -iname \*.mov | xargs -0 -P4 -n1 -IX ffmpeg -i X -r 6 -f image2 -qscale 
1 photo-%0d.jpg
Me semble une solution mieux fonctionner ? Bien que je ne comprend pas le -IX , 
après -n1
Du coup je rame ....

Alors la ligne comme cela fonctionne, mais pas dans le script, pour quelle 
raison, histoire que j’avance. ...

Ah et le script fonctionne 
#!/bin/bash

function f_image-fusion {
        convert "$1" -resize 40% -colorspace Gray "${1%}gray.jpg"
}

{
        find ./ -iname \*.jpg
        echo "EOF"
} | {
        while true; do
                read -r i;
                test "$i" = "EOF" && break;
                f_image-fusion "$i";
        done
}

Et donc pourquoi pour la fonction le script fonctionne et pourquoi pour ffmpeg 
non, alors que la ligne seul dans le même batch fonctionne ?

Si je remplace convert comme ci-dessus par mkdir il crée un dosssier, et donc 
comment imbriquer plusieurs commande batch , j’avais essayé de les mettre à la 
suite par plusieur opérateur sous Ubuntu 16.04 soit cela se plante, soit cela 
n’excuse que la première commande , comme première idée est erronée et. Que 
l’hiver les veux se chauffe comme il peut dit moi dans quel livre chercher ?

Merci

— 
Ptilou

Répondre à