The Raspberry Pi Motion Video Recorder is a proof of concept daemon that makes use of the motion estimation vectors available from the RPi's hardware accelerated H.264 encoder to detect and save clips of motion.
Setup
Requires the Go toolchain (>=go1.8)
I've not checked this for standard library compatibility with anything prior to go1.8. It may or may not work on versions prior to that.
Raspivid
On Arch Linux this is provided as part of raspberrypi-firmware but is not listed in the path. It must be in the path.
FFmpeg (or avconv symlinked as ffmpeg, if you must)
A named pipe for motion vectors: mkfifo motion_vectors.fifo
Installation
go get -v github.com/bemasher/pmvr
go install -v github.com/bemasher/pmvr
Running
pmvr
Resource Usage
Except for determining magnitude of motion over each frame, we're just shuffling data around. PMVR is very light on resources:
Improvements and Feature Requests
Have any improvements or feature requests? Submit an issue and we'll discuss feasibility.