周末休一天写了个小程序合并米家摄像头监控视频

2021-05-10 21:57:10 +08:00
 secsilm

功能很简单:合并米家摄像头监控视频,生成以天为单位的视频文件。

米家摄像头的视频的文件结构如下:

MIJIA_RECORD_VIDEO
    2021021211                   # 年月日时
    	58M11S_1613102291.mp4    # 开始分秒_开始时间戳,每个视频一分钟

代码:

https://gist.github.com/secsilm/79c7e9ab32b9d966ab04a98c084d66a7

3874 次点击
所在节点    Python
15 条回复
Smash
2021-05-10 22:03:12 +08:00
视频存在 nas 的?
lvgsnm
2021-05-10 22:26:05 +08:00
你是怎么读取到摄像头的内存卡的
CallMeReznov
2021-05-10 22:33:10 +08:00
@lvgsnm #2
merge_dirs(r"D:\Mijia\MIJIA_RECORD_VIDEO")
hi543
2021-05-11 01:09:22 +08:00
@CallMeReznov #3 原文:“@lvgsnm #2
merge_dirs(r"D:\Mijia\MIJIA_RECORD_VIDEO")”
======
回复:#3 建议用 FFmpeg,我之前在 windows 下用 cmd 命令合并文件,结果播放的时候快进会一卡一卡的。FFmpeg 合并没这个情况。
secsilm
2021-05-11 07:37:25 +08:00
@Smash 不是,目前就内存卡
FourAndHalf
2021-05-11 07:39:54 +08:00
能网页访问小米摄像头吗?
magic3584
2021-05-11 07:44:32 +08:00
大佬 360 摄像头可以自己保存吗?为了防丢开了云服务
lepig
2021-05-11 08:51:15 +08:00
收藏一下 。 对事后查看回放起来 比较方便。 没那么多琐碎的文件
CallMeReznov
2021-05-11 08:56:06 +08:00
@hi543 #4 我是复制楼主的代码
他本身就是 FFMPEG,重新封装了一下
secsilm
2021-05-11 09:39:49 +08:00
@FourAndHalf 应该不能,但是可以在小米电视上看。

@magic3584 360 不晓得,不过应该所有摄像头都可以插内存卡吧。
HashV2
2021-05-11 13:50:06 +08:00
好奇问一下 一天的监控视频大概占用多少的存储空间啊?
secsilm
2021-05-11 13:53:42 +08:00
@HashV2 我是只录制移动画面,平均一天 1G 左右,1080P,时长大概在 10 小时以内。
jiangbingo
2021-05-13 16:31:16 +08:00
期待远程访问获取视频信息。
username19027930
2022-10-13 11:54:59 +08:00
D:\>python merge.py Z:\xiaomi_camera_videos\607ea4ea8f1a
2022-10-13 11:51:20.338 | INFO | __main__:merge_dirs:47 - 20221004, 1071 videos
Traceback (most recent call last):
File "D:\merge.py", line 59, in <module>
merge_dirs(args.indir, args.outdir)
File "D:\merge.py", line 55, in merge_dirs
merge_vids("vidslist.txt", Path(outdir).joinpath(f"{date}.mp4"))
File "D:\merge.py", line 18, in merge_vids
subprocess.run(cmd)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 501, in run
with Popen(*popenargs, **kwargs) as process:
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 969, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\subprocess.py", line 1438, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] 系统找不到指定的文件。

D:\>
username19027930
2022-10-15 13:58:48 +08:00
@username19027930 找到问题了 忘记给 ffmpeng 添加环境变量了 加了以后完事

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/776105

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX