Viseron
Self-hosted, local-only NVR and AI computer vision software
Alternative to: ring, nest, wyze
v3.0.0b13
2025-03-10This beta will be the last one before the release of 3.0.0, unless some big error is found. The release focuses on stability improvements and polishing of existing features. Some new features are also included.
New documentation chapters have also been added which aims to explain how recordings and Viseron in general is working. New sections will be added in the future to highlight common usecases. https://dev—viseron.netlify.app/docs/documentation/configuration
Breaking changes
- The
/recordingsfolder is no longer used, and should be replaced with the/event_clipsfolder. This namechange was made in order to clear up some confusion on what this folder is storing in v3. Docker instructions have been updated: https://dev—viseron.netlify.app/docs/documentation/installation#running-viseron trigger_recorderhas been deprecated in favor oftrigger_event_recording
New features
- Faces to recognize can now be pulled from Compreface directly
- A logfile is now created in the config directory. Docs have been updated accordingly: https://dev—viseron.netlify.app/components-explorer/components/logger#view-logs
- You can now download events and snapshots from the Events page. You can also specify a timespan for 24/7 recordings which will be downloaded as an MP4 file. Documentation can be found here: https://dev—viseron.netlify.app/docs/documentation/configuration/recordings#downloading-recordings
- New config option
record_onlywhich makes it possible to create continuous recordings without running any type of detectors. - New config option
widthandheightforstill_imagewhich allows setting the resolution of the still image - You can now click individual events in the popup windows on the Events/timeline view to seek to the event
- New
telegramcomponent provided by @smelis, which allows sending of clips and thumbnails using Telegram. - New
ptzcomponent provided by @smelis, which can be used by the Telegram component to control a camera. The PTZ functionality will be ported to the web UI as well at some point.
What’s Changed
- add empty config folder to allow devcontainer to start by @roflcoopter in https://github.com/roflcoopter/viseron/pull/843
- remove devcontainer config mount by @roflcoopter in https://github.com/roflcoopter/viseron/pull/846
- pin types-requests to 2.31.0.6 by @roflcoopter in https://github.com/roflcoopter/viseron/pull/847
- added new functionality to use compreface subjects for facial recognition by @tantonj in https://github.com/roflcoopter/viseron/pull/845
- Documentation updates by @roflcoopter in https://github.com/roflcoopter/viseron/pull/850
- add logging to file by @roflcoopter in https://github.com/roflcoopter/viseron/pull/852
- wait for move_on_shutdown to complete by @roflcoopter in https://github.com/roflcoopter/viseron/pull/853
- allow dates with only recorded video to be selected by @roflcoopter in https://github.com/roflcoopter/viseron/pull/854
- use yield_per to avoid cursor closing in _check_tier by @roflcoopter in https://github.com/roflcoopter/viseron/pull/856
- dont materialize when using yield_per by @roflcoopter in https://github.com/roflcoopter/viseron/pull/857
- fetch all rows to avoid cursor closing by @roflcoopter in https://github.com/roflcoopter/viseron/pull/858
- Avoid importing dlib when it is not used by @roflcoopter in https://github.com/roflcoopter/viseron/pull/865
- Allow download of events and snapshots by @roflcoopter in https://github.com/roflcoopter/viseron/pull/869
- check for nan value when clicking the LIVE button by @roflcoopter in https://github.com/roflcoopter/viseron/pull/870
- reload hls every 5 seconds on fatal errors by @roflcoopter in https://github.com/roflcoopter/viseron/pull/871
- reload page when getting a vite preloadError by @roflcoopter in https://github.com/roflcoopter/viseron/pull/872
- use getCameraNameFromQueryCache in Breadcrumbs by @roflcoopter in https://github.com/roflcoopter/viseron/pull/873
- apply object detection mask the same way as motion detection by @roflcoopter in https://github.com/roflcoopter/viseron/pull/874
- properly cleanup after test_setup_components by @roflcoopter in https://github.com/roflcoopter/viseron/pull/875
- add category and subcategory to OrphanedRecordingsCleanup query by @roflcoopter in https://github.com/roflcoopter/viseron/pull/876
- allow pressing enter to login by @roflcoopter in https://github.com/roflcoopter/viseron/pull/877
- remove future=True from sessionmaker by @roflcoopter in https://github.com/roflcoopter/viseron/pull/878
- add screenshots and videos to event download instructions by @roflcoopter in https://github.com/roflcoopter/viseron/pull/879
- change bash to shell in docs codeblocks by @roflcoopter in https://github.com/roflcoopter/viseron/pull/880
- Continuous recording config parameter by @roflcoopter in https://github.com/roflcoopter/viseron/pull/881
- Async Websocket API by @roflcoopter in https://github.com/roflcoopter/viseron/pull/883
- improve shutdown sequence and make sure all threads are stopped by @roflcoopter in https://github.com/roflcoopter/viseron/pull/884
- Doc typos and FFmpeg timestamp example by @roflcoopter in https://github.com/roflcoopter/viseron/pull/885
- Update docker.mdx - —env-file vs —env by @nneul in https://github.com/roflcoopter/viseron/pull/887
- fix ffmpeg log pipe closing by @roflcoopter in https://github.com/roflcoopter/viseron/pull/888
- remove files_meta table to avoid costly joins by @roflcoopter in https://github.com/roflcoopter/viseron/pull/890
- add gitsponsors to README by @roflcoopter in https://github.com/roflcoopter/viseron/pull/891
- record_only config option by @roflcoopter in https://github.com/roflcoopter/viseron/pull/892
- fix mjpeg stream exception by @roflcoopter in https://github.com/roflcoopter/viseron/pull/893
- further asyncio event loop improvements by @roflcoopter in https://github.com/roflcoopter/viseron/pull/894
- upgrade mypy to 1.14.1 by @roflcoopter in https://github.com/roflcoopter/viseron/pull/895
- Mount config folder in repo to /config in devcontainer by @roflcoopter in https://github.com/roflcoopter/viseron/pull/896
- fix so that opening drawer doesnt rerender page by @roflcoopter in https://github.com/roflcoopter/viseron/pull/897
- add config option to set still image resolution by @roflcoopter in https://github.com/roflcoopter/viseron/pull/898
- remove gitsponsors by @roflcoopter in https://github.com/roflcoopter/viseron/pull/899
- add error boundaries to frontend by @roflcoopter in https://github.com/roflcoopter/viseron/pull/900
- Events and timeline navigation improvements by @roflcoopter in https://github.com/roflcoopter/viseron/pull/904
- deprecate trigger_recorder in favor of trigger_event_recording by @roflcoopter in https://github.com/roflcoopter/viseron/pull/905
- Component explorer link fix by @roflcoopter in https://github.com/roflcoopter/viseron/pull/911
- Rename /recordings to /event_clips by @roflcoopter in https://github.com/roflcoopter/viseron/pull/912
- add direct navigation to timeline by @roflcoopter in https://github.com/roflcoopter/viseron/pull/913
- allow overrides for each snapshot domain by @roflcoopter in https://github.com/roflcoopter/viseron/pull/916
- PTZ and Telegram Components by @smelis in https://github.com/roflcoopter/viseron/pull/788
- Fixes to the new PTZ and Telegram components by @roflcoopter in https://github.com/roflcoopter/viseron/pull/918
- update images and descriptions for ptz and telegram by @roflcoopter in https://github.com/roflcoopter/viseron/pull/919
New Contributors
- @tantonj made their first contribution in https://github.com/roflcoopter/viseron/pull/845
- @smelis made their first contribution in https://github.com/roflcoopter/viseron/pull/788
Full Changelog: https://github.com/roflcoopter/viseron/compare/v3.0.0b12…v3.0.0b13