Skip to content

bemasher/pmvr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PMVR

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:

PMVR Running on an RPi3 with NOIR Camera V1

Improvements and Feature Requests

Have any improvements or feature requests? Submit an issue and we'll discuss feasibility.

ToDo

  • Add command line flags for:
    • Motion detection thresholds.
    • Raspivid command line options.
    • FFmpeg command line options.