This release is a big one. It mainly focuses on continuous recordings, but also includes a lot of other features and fixes.
I have been working on this release for a long time and I am very happy with the result. I hope you will enjoy it as much as I do.
The release cadence has been very slow lately and for that I am sorry. I will try to make smaller releases more often in the future.
Breaking changes
- New docker volumes are required. Please see the updated docker documentation
- Old recordings will not be compatible with the new version and wont be viewable in the UI
- Files will no longer be stored in the
/recordings
folder, and should be removed from your docker volumes - Recordings are now in HLS format. If you need to have the recordings saved as full MP4 files you can use the new config option
create_event_clip
, or use the newExport
feature in the UI. mp4
file extension is now forced andextension
is removedsegments_folder
is removed in favor of tier paths from the newstorage
component- Thumbnails are now stored in
/thumbnails
folder (depending on the tier config) filename_pattern
inthumbnail
is removed, stored as ID of the recordingaudio_codec
behavior changed. It is now only used as stream information. To transcode Audio, setaudio_codec
underrecorder
trigger_recorder
is removed in favor oftrigger_event_recording
- The FFmpeg command has been changed, so if you use
raw_command
you need to update it
New features
24/7 recordings
The main feature included in this release is the option of having 24/7 recordings.
With this comes a new component, storage
which will allow you to retain data based on time (like it is today) and based one consumed space.
This allows you to use your storage to its maximum.
Documentation for how the recordings work can be found here
Updated screenshots for the frontend can be found here
Storage Tiers
Another feature of the storage
component are tiers
.
They allow you to store recordings on multiple media.
Say you have one 256GB SSD and a 1TB HDD, you can keep the most recent recordings on the SSD for fast access while offloading the older recordings to the HDD for archiving.
Timeline
To easily view 24/7 recordings, a new Timeline view is available.
It currently shows continuous recordings and different events such as motion, detected objects, face recognition etc.
Events
The Events view is a more concise view than the Timeline.
Here you can scroll through and view all the Events.
Other new features
- A new safe mode has been added. If Viseron cant startup due to config errors, it will restore the last known good config and start up with a minimum amount of components. This will allow you to fix the config in the UI and restart Viseron without having to manually restore the config.
- Allow empty password for cameras
- A logfile is now created in the
/config
folder. This will allow you to see the logs without having to enter the container. - New telegram component provided by @smelis, which allows sending of clips and thumbnails using Telegram.
- New ptz component 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. max_recording_time
has been added to therecorder
component. This will allow you to set a maximum recording time for each recording. This is useful if you have a lot of motion events and want to keep the recordings short.record_only
has been added to therecorder
component. This will allow you to record without running any detectors.still_image_width
andstill_image_height
has been added to thecamera
component. This will allow you to set the resolution of the still images.
Changes
- A PostgreSQL database is now running inside the container. It is not possible to use an external database at the moment.
- Upgraded to Ubuntu 22.04 which gives updated drivers to support newer hardware
- Updated to React 18
- Updated to Python 3.10
- Updated to OpenCV 4.10.0
- Updated to FFmpeg 5.1.2
- Updated CUDA
- Updated DLIB
- Updated OpenCL
- Updated VA-API
- Updated all Python dependencies
- The documentation has been updated with a lot of new chapters
Fixes
- Camera passwords are now escaped, meaning that passwords with special characters are now supported.
This has been a long standing issue which caused FFProbe to fail when trying to connect to the camera. - Properly redact sensitive information in logs
- Reduce the occurence of
KeyError: UUID
in the logs - Fix a long standing bug where frames with drawn items (like bounding boxes, masks etc) would bleed through to other frames.
Docker images will be on Docker Hub shortly