树莓派录像杂记
缘起
最近树莓派闲置吃灰了,为了充分利用,准备折腾着用树莓派的摄像头搞个监控。
折腾过程
定期拍照,合成视频
定期拍照使用下面的命令就可以了:
raspistill -o xxx.jpg
图片合成视频可以参照我之前的文章,不赘述了。
直接拍摄视频
raspivid -o vv.h264 -t 10s
其中10s是拍摄时长,0表示不终止,这样拍出来是原始的h264视频,播放时需要播放器支持。
拍摄视频后实时ffmpeg转换为mp4
raspivid -o - -t 10000 -n -vf|ffmpeg -i - -y -vcodec copy ./a.mp4
文件大小优化
上面的命令虽然使用ffmpeg转换为mp4,但是为了速度必须是不能压缩太多的,即使把帧率设置为10帧,文件也会非常的大,需要减少帧率同时减少分辨率才能确保视频较小。
raspivid -w 1280 -h 720 -o - -t 8630 -n -vf -fps 3|/usr/bin/ffmpeg -r 30 -i - -y -vcodec copy "xxx.mp4"
比如上面是拍摄3帧的视频,同时使用ffmpeg快进10倍保存为mp4,同时设置拍摄分辨率为1280 * 720
经过上面设置,可以确保最终的mp4文件较小。
参考文档
https://forums.raspberrypi.com/viewtopic.php?t=69944
http://zhaoxuhui.top/blog/2021/09/14/raspistill-raspiyuv-raspivid-and-camera-raw-data.html
https://superuser.com/questions/1261678/how-do-i-speed-up-a-video-by-60x-in-ffmpeg
https://www.jianshu.com/p/489fbd8bf0a5
https://gist.github.com/mowings/7210816c88fb3328b3ad
发表评论