Сохранение видеофайла времени и даты в имени файла - PullRequest
4 голосов
/ 04 июля 2019

Ожидаемое поведение

  1. Автоматический запуск программы для записи видео на короткий промежуток времени.
  2. Сохранение видео с уникальным именем файла в определенном каталоге (чтобы избежать перезаписи).В идеале это имя файла должно содержать дату и время.

Фактическое поведение

  1. Успех
  2. Имя файла всегда video.h264.

Я перепробовал все виды вещей, которые я нашел в сети, но они приводят только к имени файла, показывающему часть кода.Раздражающе это сработало один раз, но сохранило его где-то, чего я не ожидал, и я изменил код, прежде чем понял, что это сработало!

Полный файл

    # Import Libraries

    import os       #Gives Python access to Linux commands
    import time         #Proves time related commands
    import RPi.GPIO as GPIO #Gives Python access to the GPIO pins


    GPIO.setmode(GPIO.BCM)  #Set the GPIO pin naming mode
    GPIO.setwarnings(False) #Supress warnings

    # Set GPIO pins 18 as output pin
    LEDReady = 18 #Red

    GPIO.setup(LEDReady,GPIO.OUT)

    GPIO.output (LEDReady,GPIO.HIGH)

    from subprocess import call
    call(["raspivid", "-o", "video.h264", "-t", "50000n"])
    time.sleep(10) #Sleep for 10 seconds

    GPIO.output (LEDReady,GPIO.LOW)

Добавление DATE=$(date +"%Y-%m-%d_%H%M") и изменение *От 1024 * до $DATE.h264 приводит к синтаксической ошибке для $ DATE.

Удивительно, но у меня есть файл с именем 20180308_021941.h264, и это именно то, что мне нужно, но я не могу сказать вам, как мне это удалось!

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

Спасибо, что потрудились прочитать это.

1 Ответ

1 голос
/ 04 июля 2019

Попробуйте добавить это

from datetime import datetime

date = datetime.now().strftime("%Y%m%d%H:%M:%S")

Затем измените свой звонок на этот

videoFile = date + ".h264"
call(["raspivid", "-o", videoFile, "-t", "50000n"])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...