Bonjour, finalement j'ai reencodé en h264 avec la commande
Code : Tout sélectionner
ffmpeg -i input.mpeg -threads 0 -c:v libx264 -crf 32 -preset slow -vf scale=-2:1080,format=yuv420p output.mp4
Le rendu est satisfaisant.
Ensuite je voudrai compresser tous les mp4 de la gopro recursivement sur tous les sous dossiers ( 3 profondeurs) en combinant find et ffmpeg
J'avais l'intention de renomer tous les fichiers *.mp4 en *big.mp4
find ./ -name '*.mp4' -exec bash -c 'mv -fv $0 ${0/.mp4/big.mp4}'
{} \;
De compresser les bigs en destination normal en concervant l'emplacement
Code : Tout sélectionner
find . -name '*big.mp4' -exec bash -c 'ffmpeg -i $0 + -threads 0 -c:v libx264 -crf 32 -preset slow -vf scale=-2:1080,format=yuv420p ${0/big.mp4/h264.mp4}' {} \;
Et de supprimer la source
find ./ -name '*big.mp4' -exec rm -f {} \;
Malheureusement je suis bloqué à la première etape:
find ./ -name '*.mp4' -exec bash -c 'mv -fv $0 ${0/.mp4/big.mp4}'
{} \;
Me renomme bien tous les fichiers du premier niveau de sous dossiers. /a/source.mp4-> /a/sourcebig.mp4
Mais des qu'on passe au niveau 2, 3 , 4 du sous dossiers ca me dit: /a/b/sourcebig.mp4 n'est pas un dossier.
Comment faire pour traiter récursivement tous les sous dossiers?