首页 > 解决方案 > 在文件名中保存视频文件的时间和日期

问题描述

预期行为

  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") 和更改video.h264to$DATE.h264会导致 $DATE 出现语法错误。

诱人的是,我有一个名为 20180308_021941.h264 的文件,这正是我所追求的,但我无法告诉你我是如何管理它的!

PS 红色 LED 亮起是为了让我知道 Raspberry Pi 是否已正常启动并运行 Python 脚本。

感谢您不厌其烦地阅读本文。

标签: pythonfileraspberry-pi

解决方案


尝试添加这个

from datetime import datetime

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

然后把你的电话改成这个

videoFile = date + ".h264"
call(["raspivid", "-o", videoFile, "-t", "50000n"])

推荐阅读