-
Notifications
You must be signed in to change notification settings - Fork 50
Home
Welcome to the DVR-Scan wiki, used for development specific book-keeping and idea management.
To achieve all goals for v1.2, it's likely a lot will need to change on the command line, as well as internally refactoring the code entirely. Need to consider retarget as v2.0 and start from a clean slate, especially because default behaviours may be very different.
Another option is to tackle only the minimum for v1.2 to smooth the move to v2.0 (this will likely be the case).
Replace use of OpenCV VideoWriter with ffmpeg - there's no real reason to prefer the VideoWriter method for this use case, and use of ffmpeg directly provides more optimization possibilities. If a v1.2 release is planned, can consider temporarily reverting to using OpenCV VideoWriter and display a warning (but only AVI is allowed as output - what if the user specifies MP4?). New CLI flags:
-
-ffmpeg
/--force-ffmpeg
(optional, if specified, errors if ffmpeg is not available) -
-a
/--override-args
to override params passed to ffmpeg (default should be copy mode) -
-p
/--precise
to default to high quality re-encoding for accurate timing of split videos (copy mode is not frame perfect)
Need to add -c/--concatenate
to explicitly concatenate multiple videos when -i
is specified multiple times (this changes default behaviour, as specifying -i
multiple times concatenates right now).
As for folder support, should -i
support a folder as a path directly? If so, how should we determine which files to try as videos? If we take wildcards, what happens in bash? Is it just easier to add another argument (-d
/--directory
)
Currently there are no provisions to specify the output filenames. Allow users to enter a template like PySceneDetect does. (Aside: Should a different wildcard character be chosen, instead of $, to avoid issues on bash? Why not just use {VIDEO_NAME}, {EVENT_NUM}, etc...?)
If -c
is not specified, and there are multiple inputs, we can run sub-processes simultaneously.
Type | Description | Complete | Issue |
---|---|---|---|
bug-fix | flag to manually set framerate if not properly detected from video/camera | N | N/A |
feature | downscaling for faster detection and encoding | N | N/A |
Type | Description | Complete | Issue |
---|---|---|---|
feature | image masking with a transparent .PNG to determine which parts of the frame should be excluded from motion detection | N | N/A |
Type | Description | Complete | Issue |
---|---|---|---|
enhancement | support for live videos via video cameras / webcams | N | N/A |
feature | integration with mkvmerge or ffmpeg instead of using the OpenCV VideoWriter |
N | N/A |
other | find/create test footage with various events, e.g. static scene (example), scene with vehicles in background (example 1, example 2) to test masking and motion threshold/magnitude | N | N/A |
other | integration with PySceneDetect | N | N/A |