Я конвертирую все свои видеофайлы в WebM, чтобы значительно уменьшить объем используемого места на жестком диске. Для этого я использую программу «ffmpeg», для которой требуется входной и выходной файлы. Поскольку процесс конвертирования занимает много времени, я хочу запускать его день и ночь для каждого видеофайла в папке с видео, поэтому мне не нужно вручную делать это самостоятельно.
По самому googling я нашел способы сделать это, но выход будет 1 большой файл. Может ли кто-нибудь объяснить мне, как я автоматически конвертирую «video1.avi» в «video1.webm» и «video2.avi» в «video2.webm» и т. Д. И т. Д.?
Ниже сценария 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, и это простой интерфейс для ffmpeg. Для вашей потребности вы должны использовать опцию bulk, затем отбросить все файлы, которые вам нужны, и выбрать соответствующие параметры. Именование для выходных файлов выполняется автоматически. Yoiu должен загрузить его со ссылкой ниже, поскольку тот, который находится в программном центре Ubuntu, является старым. Надеюсь, вам понравится. http://dmsimpleapps.blogspot.ro/2014/04/dmmediaconverter.html