Я использую FFMPEG для преобразования из MOV в FLV на Ubuntu.

Моя проблема в том, что у меня есть 10 папок и подпапок, содержащих эти видео, я хочу, чтобы командная строка или какой-либо способ в WinFF GUI конвертировали их все в ONCE, а не по одному, и помещали их туда в папки, чтобы каждое назначение конвертации было одинаковым как видео конвертируется.

Кроме того, у меня есть проблема с ответом, который я получил, в том, что он не может конвертировать видео, не написанные на английском языке, или даже если путь не написан на английском языке, например на арабском.

1 ответ1

2

В Bash (т.е. Ubuntu) вы бы сделать

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

Или если подкаталоги находятся в одном дереве

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

Хммм, только видел, что вы находитесь в Ubuntu после написания части windows :-) В windows вы можете использовать команду for :

makeflv.bat:

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

Затем вызовите его для каждого файла, который вы хотите преобразовать, т.е. makeflv test.mov Если у вас есть список в файле, он будет

for /f %f in ('type filelist.txt') do makeflv %f

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .