ffmpeg convertir plusieurs vidéos et les mettre dans le même chemin

0

J'utilise FFMPEG pour la conversion de MOV en FLV sur Ubuntu.

Mon problème est que j’ai 10 dossiers et sous-dossiers contenant ces vidéos. Je souhaite une ligne de commande ou un moyen dans l’interface graphique WinFF pour les convertir toutes UNE SEULE FOIS et les remettre dans leurs dossiers afin que chaque destination de conversion soit la même. comme la vidéo en cours de conversion.

De plus, j'ai un problème avec la réponse que j'ai, c'est qu'il ne peut pas convertir les vidéos non écrites en anglais ou même si le chemin d'accès n'est pas écrit en anglais tel que l'arabe.

ChrisF
la source

Réponses:

2

En bash (c.-à-d. Ubuntu) vous feriez

for file in $(cat filelist.txt)
do
    ffmpeg -i $file $(echo $file|sed 's/\.[^.]*$//').flv
done

Ou si les sous-répertoires sont dans le même arbre

find . -type f -name \*mov|
while read file
do
    ffmpeg -i $file $(echo $file|sed 's/\.[^.]*$//').flv
done

Hmmm, seulement vu que vous êtes sur Ubuntu après avoir écrit la partie windows :-) Sur les fenêtres, vous pouvez utiliser le for commander:

makeflv.bat:

setlocal
set file=%1
for %%f in (%file%) do (
  set name=%%~nf
  set directory=%%~pf
  ffmpeg -i %file% %directory%%name%.flv
)

Puis appelez-le pour chaque fichier que vous voulez convertir, c.-à-d. makeflv test.mov Si vous avez la liste dans un fichier ce serait

for /f %f in ('type filelist.txt') do makeflv %f
Alftheo
la source
Je pense que votre réponse est ce que je veux mais je suis très nouveau sur les lignes de commande et bash, pouvez-vous s'il vous plaît m'expliquer plus ou me donner juste plus de détails sur quelle commande est la plus appropriée
si mes sous-répertoires sont dans le même arbre où devrait placer le nom de fichier parent
le plus simple est de changer les répertoires du parent, puis de rechercher ou de faire find /parent/directory -name \*mov etc