Создание timelapse итерации по каталогам с Python Linux
Я пытаюсь написать программу, в которой я перебираю каталоги, и в каждом подкаталоге я создаю интервал с изображениями внутри папки.
Это то, что я имею сейчас:
import os
#iterating through directories
RootDir='/home/pi/TestMultFolder/RootDir'
for subdir, dirs, files in os.walk(RootDir)
filepath=subdir
print filepath
#create Timelapse
os.system("avconv -r 10 -i Img_%04d.jpg -r 10 -vcodec libx264 -crf 20 -g 15 timelapse.mp4")
Это печатает правильные подкаталоги, но не делает интервал времени. Команда timelapse работает, если я делаю это в одной папке. Я использую Raspberry Pi v3.
Заранее спасибо!:)
2 ответа
Решение
Неважно, что случилось. Вот почему для тех, кто заинтересован:
Я просто не изменил каталог для выполнения команды. Поэтому я добавил os.chdir(filepath)
import os
#iterating through directories
RootDir='/home/pi/TestMultFolder/RootDir'
for subdir, dirs, files in os.walk(RootDir)
filepath=subdirs+'/'
print filepath
#create Timelapse
os.chdir(filepath)
os.system("avconv -r 10 -i Img_%04d.jpg -r 10 -vcodec libx264 -crf 20 -g 15 timelapse.mp4")
Вы неправильно использовали os.walk, если вы называете subdir фактически корневым каталогом, вы должны использовать его следующим образом:
for root, dirs, files in os.walk(RootDir):
и вы найдете ваши subdirs в dirs.