github Breakthrough/DVR-Scan v1.5-beta
DVR-Scan v1.5-beta

latest releases: v1.6.1.1-release, v1.6.1-release, v1.6-release...
pre-release2 years ago

Documentation: DVR-Scan v1.5-beta Documentation

Install from pip via:

pip install dvr-scan[opencv] --pre --upgrade

Windows builds (regular and with experimental GPU support) are available below.

Release Notes

  • Significant performance improvements on multicore systems
  • Support wildcards/globs as inputs for scanning entire folders (-i folder/*.mp4)
  • Allow use of ffmpeg for better output quality (-m ffmpeg) or codec-copying mode (-m copy)
  • Configuration files are now supported, see documentation for details
    • Can specify config file path with -c/--config, or create a dvr-scan.cfg file in your user config folder
  • Windows binaries are now signed, thanks SignPath.io (certificate by SignPath Foundation)
    • Shout-out to Paul from SignPath, you were awesome and a huge help in making this happen
  • Experimental CUDA® support has been added (set -b mog_cuda)
    • If installing via Pip, requires manual installation of OpenCV compiled with CUDA support
    • If downloading Windows version, make sure to download the GPU-enabled build (dvr-scan-1.5.dev1-win64-cuda.zip)
    • CUDA-enabled builds are not signed and should be considered experimental
  • Minimum supported Python version is now 3.7
  • Minimum supported OpenCV version is now 3.x

Changelog

Command-Line Interface

  • New features/arguments (see below for more details):
    • -c/--config - set path to config file
    • -d/--output-dir - set directory to write output files (default is working directory)
    • -m/--output-mode - set output mode (one of: opencv, ffmpeg, copy)
    • -mo/--mask-output - path to write motion mask for analysis
    • --verbosity and --logfile - control output verbosity and path to save output
  • -i/--input now supports globs/wildcards to scan entire folders, e.g. -i folder/*.mp4
  • Long form of -roi has been renamed to --region-of-interest (previously was --rectangle-of-interest)
  • -c is now used for --config, previously was for --codec
  • Add experimental mog_cuda option for -b/--bg-subtractor
  • --codec has been removed, the value should now be set using a config file

General

  • [feature] Configuration file support and new -c/--config argument to specify path to config files (#77)
    • Breaks existing behavior of -c (was previously the shortform of --codec)
  • [feature] Add support for multiple output modes via -m/--output-mode argument (#27, #42)
  • [feature] Experimental support for GPU-based CUDA MOG2 filter (#12)
  • [feature] Video encoding and decoding are now done in parallel with the scanning logic leading to improved performance on most systems (#52)
  • [feature] Add support for exporting motion masks via -mo/--mask-output argument
    • Useful for detailed analysis or tuning of detection parameters
    • ffmpeg can be used to generate output videos by specifying -m ffmpeg
    • Codec-copy mode, using ffmpeg, can be used by specifying -m copy
  • [feature] Add --verbosity and --logfile arguments to provide more control over program output
  • [feature] Allow scanning entire folders using wildcards with -i/--input (#5)
    • Glob expansion is also performed on each input path directly, so quoted globs also function correctly
  • [bugfix] Fix incorrect results when -st/--start-time is set
  • [bugfix] Event start times are now correctly calculated when using -fs/--frame-skip (#68, #70)
    • Note that all skipped frames within the event window are included in motion event, thus the calculated start time may be slightly earlier
  • [bugfix] Only get screen resolution when required
  • [api] Remove dvr_scan.timecode and FrameTimecode, replace with scenedetect.FrameTimecode

Known Issues

  • Variable framerate videos (VFR) are not fully supported, and will yield incorrect timestamps (#20)
  • Video output when using frame skip and -m opencv (default output mode) will result in frames missing from the exported videos (#81, can use -m ffmpeg or -m copy as a workaround)
  • Multiple input videos are not supported yet when using -m ffmpeg or -m copy (#86)
  • Fixed in latest beta: Crash with timecode framenumber must be greater than zero (#90)

Code Signing Policy

Windows EXE/MSI Builds: Free code signing provided by SignPath.io, certificate by SignPath Foundation.

Don't miss a new DVR-Scan release

NewReleases is sending notifications on new releases.