Я преобразовываю все свои видеофайлы к WebM, для большого сокращения количества используемого пространства на жестком диске. Чтобы сделать это, я использую программу "ffmpeg", который требует входного и выходного указанного файла. Так как процесс преобразования занимает много времени, я хочу выполнить его день и ночь для каждого видеофайла в моей видео папке, таким образом, я не должен вручную делать этого сам.
Путем поиска с помощью Google меня я нашел способы сделать это, но вывод будет 1 большим файлом. Кто-либо может объяснить меня, как я преобразовываю "video1.avi" в "video1.webm" и "video2.avi" к "video2.webm", и т.д. и т.д. автоматически?
Можно использовать цикл удара - базовая структура была бы чем-то как
for file in *.avi; do ffmpeg -i "$file" "${file%.avi}".webm; done
, можно добавить, чего другой ffmpeg
параметры командной строки Вы требуете как соответствующие.
Ниже сценария Python, чтобы сделать задание:
#!/usr/bin/env python3
import os
import subprocess
sourcedir = "/path/to/sourcedirectory"
for file in os.listdir(sourcedir):
name = file[:file.rfind(".")]
subprocess.call(["fmpeg", "-i", sourcedir+"/"+name+".avi", sourcedir+"/"+name+".webm"])
При помощи subproces.call () сценарий только продолжит следующее преобразование, когда последний закончится.
Для использования:
Копия сценарий в пустой текстовый файл, набор исходный каталог Ваших файлов, сохраняет его как convert.py
и выполняет его командой
python3 /path/to/convert.py
Можно также использовать мое бесплатное приложение. Это называют dmMediaConverter, и это - простой frontend для ffmpeg. Для Вашей потребности необходимо использовать объем , опция тогда отбрасывает все файлы, что Вы нуждаетесь преобразованный и выбираете подходящие варианты. Именование для выходных файлов сделано автоматически. Yoiu должен загрузить его со ссылки ниже, так как тот в Центре программного обеспечения Ubuntu к старому. Я надеюсь, что Вам нравится он. http://dmsimpleapps.blogspot.ro/2014/04/dmmediaconverter.html