ffmpeg : comment traiter les sous-dossiers ?

Le
Alf92
Hello à tous

J'ai un dossier composé de 10 sous-dossiers, eux-même composés de
3 ou 4 sous-dossiers chacun.
A l'intérieur des sous-sous-dossiers j'ai des fichiers MP3 compressés
avec un bitrate bien trop élevé pour l'usage que j'en ai.
Je souhaite donc recompresser tout ça avec FFMPEG.
Pour cela j'ai créé un petit fichier batch que je place avec ffmpeg.exe
dans le dossier à traiter :

ren *.MP3 *.MP2
for %%a in (*.MP2) do ffmpeg -i "%%a" -ab 40k -ac 1 -ar 44100 -acodec libmp3lame "%%~na.MP3"
del *.MP2

Ca fonctionne parfaitement, sauf que ça ne traite que le dossier en
question.
Mes connaissances en ligne de commande étant ce qu'elles sont, comment
faire pour n'avoir à lancer la commande qu'une seule fois afin de
traiter tous les dossiers.

Par avance merci.
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Tigerfr
Le #26453749
Mes connaissances en ligne de commande étant ce qu'elles sont, comment
faire pour n'avoir à lancer la commande qu'une seule fois afin de
traiter tous les dossiers.


Si c'est du linux ou équivalent, il faut lancer la commande en récursif
en ajoutant -r
Alf92
Le #26454504
Tigerfr :
Mes connaissances en ligne de commande étant ce qu'elles sont, comment
faire pour n'avoir à lancer la commande qu'une seule fois afin de
traiter tous les dossiers.


Si c'est du linux ou équivalent, il faut lancer la commande en récursif
en ajoutant -r

c'est du Win
Pierre Maurette
Le #26454956
Alf92 :
Tigerfr :
Mes connaissances en ligne de commande étant ce qu'elles sont, comment
faire pour n'avoir à lancer la commande qu'une seule fois afin de
traiter tous les dossiers.


Si c'est du linux ou équivalent, il faut lancer la commande en récursif
en ajoutant -r

c'est du Win

C'est pas beaucoup plus compliqué que sous Linux.
D'abord, vous avez dans les Windows de jourdui un shell Ubuntu qui peut
être bien pratique.
Vous avez Powershell qui est une tuerie mais un peu compliqué, je n'ai
pas la commande en tête.
Accessoirement, vous pouvez vous faire un shell avec Python en mode
interactif, c'est marrant.
Mais nativement l'invite de commande sait faire:
for /R %x in ("*.avi") do (echo "%~x")
Là, ça affiche les trucs trouvés. Pour votre besoin, ça ressemblera à:
for /R %x in ("*.avi") do (ffmpeg.exe .... "%~x" ...)
--
Pierre Maurette
Publicité
Poster une réponse
Anonyme