Skip to content

Conversation

roflcoopter
Copy link
Owner

@roflcoopter roflcoopter commented Mar 28, 2024

This is a pretty massive PR that brings a number of new features and improvements.

Features

24/7 recordings

The main feature developed here 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.

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, motion events, detected objects, face recognition and License plate recognition.

Events

The Events view is a more concise view than the Timeline.
Here you can scroll through and view all the Events.
You cannot view 24/7 recordings here.

Breaking Changes

  • 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
  • Recordings folder structure has changed
  • mp4 file extension is now forced and extension is removed
  • segments_folder is removed in favor of tier paths
  • Thumbnails are now stored in /thumbnails folder (depending on the tier config)
  • filename_pattern in thumbnail is removed, stored as ID of the recording

Tasks:

  • CONFIG_RETAIN is removed in favor of tier max_age
  • Add a force move to next tier on stop to avoid losing data in RAM when restarting
  • Cleanup FilesMeta table on shutdown. Solved by a trigger
  • CONFIG_RETAIN is still used in some places
  • CONFIG_FOLDER is removed in favor of tier paths
  • Remove segment cleanup
  • Remove recordings cleanup
  • Force mp4
  • Fix saving of recordings clips create_event_clip
  • Must change recorder/complete event listener in Recordings UI since it is not triggered if create_event_clip is False
  • Add a safe mode if storage component fails to load
  • Add manual disc sync to make sure that all files are in the database
  • Fix face recognition pickle error
  • Add max length to recordings
  • Make sure that FailedCamera recordings work properly
  • Remove FailedCamera from _get_tier_config and preceding calls
  • Fix deletion of recordings
  • Update docker docs with new VOLUMES
  • Update UI to use HLS recordings
  • Dynamic file fetching to find files that have been moved to different tiers
  • Add orig_ctime to FilesMeta table to store the original creation time of the file, replacing created_at in most places and also sorting on filename column in recordings_to_move_query
  • Delete recordings from database when files are removed
  • API for fetching 24/7 events
  • End HLS playlists if there is a large gap in the segments
  • Set Recordings end_time/Motion end_time to current time on startup in case of crashes
  • Transcode video to HLS supported formats
  • Migrate existing recordings
  • Make sure snapshot domain overrides actually work
  • Fix timezone issues with recording/event dates
  • New UI page called Events
    • Timeline
    • Events
    • Filters
    • Update timeline using websockets
    • Add link from startpage to Events
    • Make clicking the timeline more intuitive
    • Face recognition on Timeline
    • ALPR on Timeline
    • Motion detection on Events
    • Face recognition on Events
    • ALPR on Events
    • Fix Date picker so it shows the correct amount of Events
    • Synchronize players
    • Allow export of timespan

Copy link

netlify bot commented Mar 28, 2024

Deploy Preview for viseron ready!

Name Link
🔨 Latest commit 9865c8c
🔍 Latest deploy log https://app.netlify.com/sites/viseron/deploys/67d41fa5f0b29500086cf2a2
😎 Deploy Preview https://deploy-preview-716--viseron.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

Copy link

sonarqubecloud bot commented Apr 3, 2024

Quality Gate Passed Quality Gate passed

Issues
1 New issue
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
2.0% Duplication on New Code

See analysis details on SonarCloud

roflcoopter and others added 27 commits September 16, 2024 21:12
display HLS errors to clearly indicate why a player gets paused
…issue

correctly fetch recordings in the clients timezone
roflcoopter and others added 29 commits February 14, 2025 22:17
…rides

allow overrides for each snapshot domain
Fixes to the new PTZ and Telegram components
update images and descriptions for ptz and telegram
add new docker tags with commit hash and timestamp
add new screenshots and update introduction
@roflcoopter roflcoopter merged commit 600e1bc into master Mar 14, 2025
32 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants