• OpenMV VSCode 扩展发布了,在插件市场直接搜索OpenMV就可以安装
  • 如果有产品硬件故障问题,比如无法开机,论坛很难解决。可以直接找售后维修
  • 发帖子之前,请确认看过所有的视频教程,https://singtown.com/learn/ 和所有的上手教程http://book.openmv.cc/
  • 每一个新的提问,单独发一个新帖子
  • 帖子需要目的,你要做什么?
  • 如果涉及代码,需要报错提示全部代码文本,请注意不要贴代码图片
  • 必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
  • 脱机运行时候,SD卡录制视频功能,如何使新视频不覆盖旧视频



    • 场景:我使用SD卡去记录OpenMV拍摄到的视频图像,但不方便每次插拔SD卡

      1.我要做什么(需求)?
      脱机运行时候,我使用SD卡去记录OpenMV拍摄到的视频图像,官方给的历程里面,每次录制的视频名字都一样,新录制的视频会覆盖掉旧的录制的视频。
      0_1709125063567_微信截图_20240228205319.png
      2.目前遇到的困难?
      每次运行录制的视频会覆盖掉旧的录制的视频,代码应该如何修改,才可以使新录制的视频,不覆盖旧的视频,每次录制的视频有自己单独的名字,并存放。

      3.我希望得到的帮助?
      代码应该如何修改,才可以使新录制的视频,不覆盖旧的视频,每次录制的视频有自己单独的名字,并存放。

      期盼得到女神小智智的回复,哈哈哈!!(期待)



    • 加一个全局变量,每次加一就行。



    • @kidswong999 好像断电之后重启不行。



    • @kidswong999 断电之后,我在SD卡中,我用一个文件去存,这个变量才可以,这个是代码,可以供各位参考
      import sensor, image, time, mjpeg, pyb
      import ujson

      读取或初始化 example_name_suffix 变量

      try:
      with open("example_name_suffix.json", "r") as file:
      example_name_suffix = ujson.load(file)
      except OSError:
      example_name_suffix = 1

      RED_LED_PIN = 1
      BLUE_LED_PIN = 3

      sensor.reset() # Initialize the camera sensor.
      sensor.set_pixformat(sensor.RGB565) # or sensor.GRAYSCALE
      sensor.set_framesize(sensor.QVGA) # or sensor.QQVGA (or others)
      sensor.skip_frames(time = 500) # Let new settings take affect.
      clock = time.clock() # Tracks FPS.

      pyb.LED(RED_LED_PIN).on()
      sensor.skip_frames(time = 500) # Give the user time to get ready.

      pyb.LED(RED_LED_PIN).off()
      pyb.LED(BLUE_LED_PIN).on()

      文件名拼接全局变量

      m = mjpeg.Mjpeg("example_" + str(example_name_suffix) + ".mjpeg")

      cnt = 0
      print("You're on camera!")
      #1000约30秒 2000约60秒
      for i in range(50):
      clock.tick()
      m.add_frame(sensor.snapshot())

      print(clock.fps())

      print(cnt)

      cnt = cnt +1
      

      stop = clock.fps()
      m.close(clock.fps())
      pyb.LED(BLUE_LED_PIN).off()
      #print("Done! Reset the camera to see the saved recording.")
      print("example_name_suffix:",example_name_suffix)

      每次使用后将 example_name_suffix 加 1

      example_name_suffix += 1

      保存 example_name_suffix 变量的值到文件中

      with open("example_name_suffix.json", "w") as file:
      ujson.dump(example_name_suffix, file)