zuohaoda 发表于 2022-12-11 11:34

利用ffmpeg合并小米摄像头视频方法

本帖最后由 zuohaoda 于 2022-12-13 20:39 编辑

小米摄像头文件默认是一分钟一分钟的单独文件,视频存储在NAS,想合并成一个视频,虽然有工具合并,但是会导致文件非常大,找了好久找到个能用的,亲测可用,分享给有需要的人,代码和原理来自贴吧,就不在这放链接了
此方法不是直接复制的内存卡视频,而是选择存储在NAS保存在NAS中的文件结构,文件结构如下图:

代码需要ffmpeg环境支持,教程一搜一大推(直接搜“Windows搭建ffmpeg环境”),不做赘述,记得要下载Release builds文件,下载地址:https://www.gyan.dev/ffmpeg/builds/

代码说明如下:
1、复制代码
2、新建文本文档 -粘贴代码-另存为-文本格式改为ANSI-后缀名改为bat
3、将bat文件放在视频记录“小时文件夹”同级,双击运行

代码实现功能:
1、将“小时文件夹”内的所有1分钟时长的监控视频,合并成一个文件,文件名字为“年月日_时分秒.mov”(分秒依据“小时文件夹”内第一个文件获取),并将文件临时存放在“小时文件夹”同级,然后程序会有10分钟延时,按任意按键可继续,目的是在此期间检查合并是否正常。
2、然后继续依据mov文件名的“年月日”创建年\月\日文件夹,将所有mov文件移动到对应的文件夹中。

@echo off & setlocal EnableDelayedExpansion
for /f "delims=" %%a in ('dir /ad/b') do (
set name=%%a
set name=%cd%\!name:~,8!_!name:~-2!
set var=%cd%\%%a
set var=!var:\\=\!
echo !var!
cd "!var!"
for /f %%s in ('dir /b "*.mp4"') do (
echo file %%s >> files.txt
)
set /p ms=<"files.txt"
set name=!name!!ms:~5,2!!ms:~8,2!
ffmpeg -f concat -i files.txt -c copy !name!.mov
del files.txt
echo !name!.mov 已生成。
cd ..
)
TIMEOUT /T 600
for /f "delims=" %%z in ('dir /b *.mov') do (
set b=%%z
set c=!b:~,4!
setd=!b:~4,2!
sete=!b:~6,2!

echo %%z" "!c!\!d!\!e!

if not exist "%cd%\!c!\!d!\!e!" md "%cd%\!c!\!d!\!e!"
move "%%z" "!c!\!d!\!e!"
echo %%z 成功移动至 !c!\!d!\!e! 文件夹!
)pause
运行生成结果如下(还在运行中,按小时文件已生成):


如果是直接拔出内存卡处理,可参考此开源项目:https://github.com/tasy5kg/MiCameraVideoExporter,摄像头不好拿,故未测试,有需要的可以试试看

yame 发表于 2023-5-4 23:03

感谢分享,我有台老的小米直接使用脚本没问题,前几天刚买的新的小米音频格式使用opus,合并时候ffmpeg报错 "opus only supported in MP4"(opus 仅在 MP4 中支持),把脚本里的导出mov改为MP4正常导出播放,有遇到相同问题的可以修改试试

zuohaoda 发表于 2022-12-14 20:19

心伤的天堂 发表于 2022-12-14 18:11
楼主,小米门铃的视频,有办法批量导出不呢

没用过这个产品,不清楚呢

qicheBoy 发表于 2022-12-11 11:46

谢谢楼主的分享,正好需要

wuming4 发表于 2022-12-11 11:54

先收藏试试

seawaycao 发表于 2022-12-11 12:02

谢谢楼主的分享,

a42024456 发表于 2022-12-11 12:47

感谢楼主的分享,先收藏了!

NovelAI 发表于 2022-12-11 13:31

谢谢楼主的分享,先收藏了!

洪鑫 发表于 2022-12-11 14:31

瞧两眼。。。。

GYB6 发表于 2022-12-11 17:48

感谢分享

wuai4444 发表于 2022-12-11 20:04

感谢分享

feiyu361 发表于 2022-12-11 20:43

谢谢楼主的分享,正好需要
页: [1] 2
查看完整版本: 利用ffmpeg合并小米摄像头视频方法