Beta Documentation: https://deploy-preview-11419--frigate-docs.netlify.app/
Images
ghcr.io/blakeblackshear/frigate:0.14.0-beta2
ghcr.io/blakeblackshear/frigate:0.14.0-beta2-standard-arm64
ghcr.io/blakeblackshear/frigate:0.14.0-beta2-tensorrt
ghcr.io/blakeblackshear/frigate:0.14.0-beta2-tensorrt-jp4
ghcr.io/blakeblackshear/frigate:0.14.0-beta2-tensorrt-jp5
ghcr.io/blakeblackshear/frigate:0.14.0-beta2-rk
Changes since beta 1
- Add settings option to disable automatic live view
- Fix bug where jsmpeg live view on dashboard would stream constantly even when no activity is detected
- Fix 404 error for Home Assistant addon / proxy addon
- Remove
live_mode
config entry - Don't fail on read only config files
- Show camera name on Live dashboard when camera is offline
- Upgrade to latest openvino version
- Many other small bugfixes
- Lots of layout fixes / design tweaks, ui efficiency improvements
- Support TLS configuration
Major Changes for 0.14.0
Breaking Changes
There are several breaking changes in this release, so a backup of your current config and database is recommended before upgrading:
- Simply copy your current config file to a new location
- Stop Frigate and make a copy of the
frigate.db
file
Your existing events will not be visible in Frigate's new UI
- An entirely new way of reviewing camera footage has been implemented in Frigate 0.14, and existing events could not be migrated
- Recordings can still be viewed in the new UI using the recordings viewer (From Live view, click/tap on a camera and select the History button at the top left)
- You may want to export any starred/favorite events before upgrading
- If you are using the Home Assistant integration, events can still be viewed there
Zone/mask coordinates are now stored in the config as relative values
- Frigate's configuration migrator will read your existing mask/zone coordinates and convert them for relative use internally on startup
- After these changes, your config file will be incompatible with the prior version
- If you have mask/zone coordinate values that exceed the detect resolution, it will be ignored and you will see warnings in the log. Delete the mask or zone from your config and then use the editor in the UI to recreate it.
The UI's live mode is now intelligently selected
- The
live_mode
config option is now deprecated and should be removed.
Backwards incompatible database changes
- There are a number of changes made to Frigate's database, which are not backwards compatible. A backup of the database is automatically made on startup, but a manual backup is highly recommended.
Brand New UI
Frigate 0.14's UI has been completely rewritten (guided demo) and optimized for desktop and mobile devices, aiming to simplify the user experience by focusing on two specific goals:
- Allow you to quickly see what's currently happening or what just happened on your cameras. The new Live view features a real-time dashboard with live camera feeds and a filmstrip of animated thumbnails showing recent activity.
- Make reviewing video footage more efficient. Frigate intelligently identifies parts of your timeline for review by leveraging the underlying data about motion and tracked objects. The new Review area implements a scrollable grid of thumbnails alongside a timeline where a hover or swipe begins a preview playback. Review items can be configured to be pre-categorized into alerts or detections based on cameras and/or zones. The review area also provides a motion review mode, allowing real-time scrubbing of video footage for any objects of interest that Frigate may have missed.
Frigate 0.14's UI will likely change the way you review your camera footage. It's a big change, but we love it and hope you do too. See the announcement post for more information regarding the motivation, ideas, and design decisions behind the new UI.
Dashboard
The new home page for Frigate is intended to be a real-time dashboard for your cameras. Recent alerts are represented by animated thumbnails in a filmstrip view above your camera feeds. Your camera images update once per minute when no detectable activity is occurring to conserve bandwidth and resources. As soon as any motion is detected, cameras seamlessly switch to a full-resolution live stream.
- Custom camera groups are now supported. Add any of your cameras (including the Birdseye camera) to user-definable groups and easily toggle between them.
- On desktops and tablets, cameras in a camera group can be resized and rearranged via dragging.
Live View
Clicking a camera from the dashboard will bring up a full-resolution live view where you can quickly access historical footage, use PTZ controls, toggle camera audio, use two-way talk, and more. Zooming with pinch or a scroll wheel is also supported.
Review
The Review area of Frigate 0.14 is for quickly reviewing historical footage of interest from your cameras. Review items are indicated on a vertical timeline and displayed as a grid of previews - bandwidth-optimized, low frame rate, low resolution videos. Hovering over or swiping a preview plays the video and marks it as reviewed. If more in-depth analysis is required, the preview can be clicked/tapped and the full frame rate, full resolution recording is displayed. Review items are filterable by date, object type, and camera.
Alerts and Detections
Not every segment of video captured by Frigate may be of the same level of interest to you. Video of people who enter your property are a different priority than those walking by on the sidewalk. For this reason, Frigate 0.14 categorizes review items as alerts and detections. By default, all person and car objects are considered alerts. You can refine categorization of your review items by configuring required zones for them.
See the review docs for more information
Motion review
In Frigate 0.13, there isn’t a way to see motion activity on a timeline and watch video at that time. The ability to scrub video for things Frigate missed has been one of the most common feature requests. Within the Motion tab of the Review section, you can now scrub through the timeline for all cameras simultaneously with a timeline showing relative motion activity. In order to avoid scrubbing over time periods already included in alerts and detections, you can also scrub in motion only mode.
History
In Frigate 0.14, full frame rate, full resolution camera footage (called "recordings" in earlier versions) can be viewed and scrubbed via a timeline. Previews of your other cameras are displayed and scrubbed alongside the main selected camera.
- Exporting footage from the History view has been drastically improved. Choose predefined time periods, enter a time directly, or drag handles on the timeline to select an export range.
- Past exports can be viewed, renamed, deleted, and downloaded from the dedicated Export pane, accessible from the navigation bar.
Other Notable UI Changes
- System stats - New charts and graphs with colored segments to track system usage history and more quickly identify problems or issues.
- Status bar - A new status bar gives at-a-glance CPU/GPU usage as well as any problems or issues with Frigate.
- New log viewer - The log viewer now provides a pane with links to solutions for common issues.
- Real-time motion tuning - Tune motion detection settings for your cameras without editing your config file and restarting.
- New mask and zone editor - Edit your masks and zones with a much-improved editor.
Authentication
Frigate now supports authentication with support for two different modes: native and proxy. In native mode, Frigate manages users and authentication using JWT tokens via a cookie or authorization header. Proxy mode is specifically designed to make use of common authentication proxies such as authelia, authentik, oauth2_proxy, etc.
- Authentication is enforced on a new port 8080, and port 5000 is still unauthenticated for backwards compatibility. If you want to use Frigate's authentication, update your reverse proxy to point at port 8080 instead of 5000.
- Support for role based authorization (admin/user roles) will come in a future release and will support upstream authentication proxies.
- We are planning to include TLS support in 0.14.0 as well.
- The Home Assistant integration needs to be pointed at port 5000. Some recommended configuration examples are in the updated docs.
See the documentation for more information.
Frigate+
Frigate 0.14 now offers a dedicated page for Frigate+ submissions, allowing more specific filtering by score and a faster workflow. Support has also been added to upload frames directly from the History view.
Other notable improvements
- Loitering Time - Zones now support a
loitering_time
configuration which can be used to only consider an object as part of a zone if they loiter for the specified number of seconds. This can be used, for example, to create alerts for cars that stop on the street but not cars that just drive past your camera. - Two-way talk - For supported cameras, two-way talk can be used directly from a camera's live view.
- PWA-optimized - The UI has been optimized to work as a progressive web app. Pin Frigate to your iOS home screen or install on Android for a full app-like experience.
- Rockchip boards now support object detection - See the Rockchip documentation for more information.
- Automatic hardware acceleration - automatic detection and configuration of hardware acceleration for ffmpeg is attempted on startup
- New review related MQTT topics and API endpoints - New MQTT topics and api endpoints are available for reviews. These will likely be a better topic for notifications.
Fixes and changes
- Better ONVIF support - PTZ controls will now show for more ONVIF PTZ cameras
- Use ZMQ for interprocess communication
- hwaccel_args are now automatically detected for Nvidia, AMD, and Intel based systems.
- Stationary object detection has been improved especially for parked cars.
- Additional support for IPV6
- RTMP has been removed (after previous deprecation). This is handled by the automatic config migration upon upgrade.
FAQ
Have a question that's not answered here? Look at the most updated list of FAQs here or open a discussion on Github.
Upgrade issues
I'm seeing "add mask expects relative coordinates only" in my logs.
This is usually caused by a mask or zone having coordinates larger than the camera's detect
resolution. The easiest fix would be to remove the mask/zone, restart Frigate, and use the new mask/zone editor to recreate it.
What happened to all my events?
An entirely new way of reviewing camera footage has been implemented in Frigate 0.14, so any "events" from any previous versions of Frigate will not be migrated and will not be visible in the new UI. This includes any favorited/starred events. Recordings can still be viewed in the new UI using the recordings viewer (From Live view, click/tap on a camera and select the History button at the top left).
I'm seeing "Preview Not Found" in the UI a lot. Why?
Frigate 0.14 now generates "previews": bandwidth-optimized, low frame rate, low resolution videos for your camera footage. These previews are not generated for any past footage from 0.13, so just wait an hour or two and try again. Historical full recordings are still viewable from your cameras, however. From Live view, click/tap on a camera and select the History button at the top left.
Usage
Can I make the cameras take up more space on my dashboard?
Yes you can, on desktop screens only. Create a camera group, and then use the edit layout button (bottom right) to resize/reposition your cameras on the dashboard.
Where is Birdseye view in the new UI?
Birdseye is accessible by creating a camera group and adding the Birdseye camera to the camera group.
Why are there black bars around my cameras in the dashboard?
The default layout keeps cameras in a 16x9 aspect ratio layout. On desktop screens, you can create a camera group and resize the camera to your liking.
Can I export footage from the review screen?
Yes, right click (desktop) or long press (mobile) to choose item(s) you want to export, then press the export button in the header. You can also export from a camera's full recordings "event" list through a right click on desktops.
What happened to the timelapse export feature?
It's not in the UI, but the API is still available. Most users were using that feature to create videos to manually review each day. One of the main focuses of the new UI was to ensure that isn't necessary. The only remaining use cases we are aware of are for very long periods of time. Having frigate do long exports on high resolution recordings on the server is a really inefficient way to accomplish that.
How can I tune what I see in alerts and detections?
You can restrict alerts and detections to specific objects/labels or exclude a camera entirely. See the review docs. You can also restrict alerts and detections to objects entering zones. See the zone docs.
How can I switch the live view type?
In Frigate 0.13, a dropdown menu in the UI allowed users to select between jsmpeg, MSE, or WebRTC. In 0.14, Frigate intelligently selects the best type of live view method for the cameras on your dashboard, so this is no longer user selectable.
Can I "star" or "favorite" events like in 0.13?
No, that feature has been removed in 0.14 in favor of Exports. If you have footage you'd like to "favorite" or retain in 0.14, use the export tools. Unlike favorite events in 0.13, exported footage in 0.14 is searchable from the Exports page.
What happened to zone filters? I want to look at my events like I did in 0.13.
An entirely new way of reviewing camera footage has been implemented in Frigate 0.14. Zones are now used to control what qualifies as an alert versus a detection. There are no zone filter options in the new UI. Use the mask/zone editor in the UI or config file options to specify how your footage is classified. See the review docs and the zone docs.
Are there any keyboard shortcuts in the UI for desktop devices?
Yes. On Live camera view, you can use the arrow keys along with + and - to control a PTZ camera. In the Logs view, page up/page down and arrow up/arrow down will scroll the logs. Wherever video controls appear (History view, Motion Review), the left and right arrows will seek the video backwards and forwards by 10 seconds. The up and down arrow keys will seek the video by 1 second. The "f" key toggles fullscreen, "m" toggles muting, and the space bar toggles playback/pause.
What's Changed
- Early 0.14 work by @blakeblackshear in #9517
- Web & ffmpeg bug fixes by @NickM-27 in #9525
- Adjust kalman filter used for norfair tracker by @NickM-27 in #9538
- Small autotracking changes by @hawkeye217 in #9571
- WebUI Improvements and fixes by @NickM-27 in #9613
- show version in UI for dev production builds by @hawkeye217 in #9602
- Streamline live view by @NickM-27 in #9772
- AMD GPU support with the rocm detector and YOLOv8 pretrained model download by @harakas in #9762
- Set aspect ratios on live display by @hawkeye217 in #9780
- download-models: fix startup failure caused by unset variable by @harakas in #9781
- detectors/edgetpu: yolov8 support by @harakas in #9782
- Fix mobile tooltips by @hawkeye217 in #9787
- Create API to create gif from previews and show instead of still thumbnails by @NickM-27 in #9786
- Fix gif creation and add better error handling by @NickM-27 in #9797
- ci: AMD/ROCm builds for the rocm detector by @harakas in #9796
- UI changes by @hawkeye217 in #9823
- Improve thumbnails and live player by @NickM-27 in #9828
- Make default region multiplier consistent by @NickM-27 in #9685
- UI tweaks by @hawkeye217 in #9842
- update dev builds message by @hawkeye217 in #9853
- Use webrtc for safari live view by @NickM-27 in #9839
- Use zmq for inter process communication by @NickM-27 in #9309
- Import escape function directly from markupsafe by @mweinelt in #9858
- Issue -> discussion by @NickM-27 in #9830
- remove invalid keys by @blakeblackshear in #9884
- fix names by @blakeblackshear in #9885
- another name fix by @blakeblackshear in #9886
- fix typos by @jayvdb in #9895
- Convert config updating and video/audio queues to use zmq by @NickM-27 in #9893
- Fix black bar at bottom of previews by @NickM-27 in #9923
- Update FFmpeg for Rockchip image by @MarcA711 in #9912
- Autodetect AMD GPUs for VAAPI GPU stats by @robarnold in #9898
- Implement event review timeline by @hawkeye217 in #9941
- Create ReviewSegment table in DB for organizing detections to be reviewed by @NickM-27 in #9918
- quick db fix by @NickM-27 in #9946
- Review timeline bugfixes by @hawkeye217 in #9962
- Review segment UI by @NickM-27 in #9945
- Reorganize stats by @NickM-27 in #9960
- Show statusbar with cpu and gpu stats by @NickM-27 in #9968
- Fix safari preview speed and other cleanup by @NickM-27 in #9976
- Expose setter for review timeline handlebar by @hawkeye217 in #9978
- UI timeline zooming by @hawkeye217 in #9980
- Ensure no reviews are created for objects without position changes by @NickM-27 in #9984
- Recordings viewer by @NickM-27 in #9985
- UI fixes by @hawkeye217 in #9986
- Setting motion masks to zero to improve startup calibration by @SpangleLabs in #9992
- UI tweaks by @hawkeye217 in #9996
- fix pointer events on review grid by @hawkeye217 in #9998
- Remove overflow and scrollbar classes from review grid by @hawkeye217 in #10000
- Use manual jpg when preview is not finished yet by @NickM-27 in #9997
- Add button to scroll to bottom of logs by @NickM-27 in #10006
- Review items right click menu by @NickM-27 in #10002
- Fade into thumbnail by @NickM-27 in #10010
- Fix cross contamination of labels in reviews by @NickM-27 in #10009
- Fix overlay in safari and firefox by @NickM-27 in #10015
- Use first onvif profile with ptz config by @hawkeye217 in #10012
- Live preview gifs should be updated on refocus by @NickM-27 in #10007
- Allow 2 fps for previews where active fast objects are detected by @NickM-27 in #10025
- Update onvif table with tapo c220 by @jeppestaerk in #9905
- Convert preview player to use html5 video by @NickM-27 in #10016
- Implement Review Filters by @NickM-27 in #10031
- Fix reviewed filter by @NickM-27 in #10038
- Fix reviewed filter by @NickM-27 in #10039
- Update FFmpeg presets for Rockchip by @MarcA711 in #10034
- Update cameras.md by @ehn in #10030
- Updated troubleshooting per request: #5392 (comment) by @f1d094 in #10021
- Add a section to dev guide on non-local development by @chamilad in #10049
- Use a rolling average of iou to determine if an object is no longer stationary by @NickM-27 in #9381
- Delete web-old directory by @NickM-27 in #10053
- Automatically skip to next preview / clip when watching full recordings by @NickM-27 in #10055
- Use skeleton for review image loading by @hawkeye217 in #10040
- Update web deps by @NickM-27 in #10058
- Skeleton fixes by @hawkeye217 in #10060
- remove vis timeline by @NickM-27 in #10059
- Don't show minimap when view is not scrollable by @NickM-27 in #10062
- Faster skeleton with refs by @hawkeye217 in #10063
- Add message when there are no items to review by @NickM-27 in #10064
- Conditionally show no items by @NickM-27 in #10065
- Show correct time range when time filter is active by @NickM-27 in #10066
- Reduce rerenders on some components by @NickM-27 in #10068
- Add missing frame_time argument to ObjectTracker.match_and_update() by @SpangleLabs in #10079
- Fix erroneous warning by @madsciencetist in #10070
- Update installation.md by @Floriszz in #10020
- Publish finished reviews to mqtt / ws and use that for source of update banner by @NickM-27 in #10072
- Rewrite websocket to use tracked state instead of context by @NickM-27 in #10091
- Don't lazy load on iOS and don't use skeleton by @NickM-27 in #10096
- Fix autoplay by @NickM-27 in #10099
- Review timeline improvements by @hawkeye217 in #10102
- Revamp mobile UI by @NickM-27 in #10103
- Implement swipe gesture instead of autoplay for mobile by @NickM-27 in #10110
- Update web deps by @NickM-27 in #10108
- Update tailwind css and cleanup classNames by @NickM-27 in #10107
- Fix iOS playback of H.265 clips by @madsciencetist in #10105
- Update cameras.md add tapo C225 camera by @soostdijck in #10101
- Adapt review timeline for mobile devices by @hawkeye217 in #10120
- Use persistence for live layout by @NickM-27 in #10114
- Fix reload by @NickM-27 in #10109
- Make full recordings view usable on mobile by @hawkeye217 in #10134
- Use alerts for live page gifs and allow opening recordings directly from them by @NickM-27 in #10135
- Fix tall cameras not fitting in current hour frame by @NickM-27 in #10136
- Fix reload spamming by @NickM-27 in #10139
- Fix linter and fix lint issues by @NickM-27 in #10141
- Fix permission error accessing /run/secrets by @a-jackson in #10097
- Migrate pydantic to V2 by @NickM-27 in #10142
- Preview player upgrades by @NickM-27 in #10152
- Fix tooltips by @NickM-27 in #10154
- Update and migrate paho-mqtt to v2 by @NickM-27 in #10160
- Add multiselect and batch actions to review items by @NickM-27 in #10161
- update paho-mqtt requirement by @NickM-27 in #10166
- Handle case where review spans across two hours by @NickM-27 in #10169
- Timeline handlebar changes by @hawkeye217 in #10170
- Revamp multiselect by @NickM-27 in #10172
- Implement scroll lock for previews by @NickM-27 in #10180
- Individual live view by @NickM-27 in #10178
- Endpoint for last clip by @vanseforge in #9710
- Update frontend colors to match style guide by @NickM-27 in #10188
- Bump react-router-dom from 6.20.1 to 6.22.2 in /web by @dependabot in #10148
- Bump autoprefixer from 10.4.16 to 10.4.17 in /web by @dependabot in #10129
- Bump @types/node from 20.11.19 to 20.11.24 in /web by @dependabot in #10168
- Update flask and restructure into api folder with apis put into separate folders by @NickM-27 in #10193
- Add support for live fullscreen mode by @NickM-27 in #10191
- More intelligent timeline scrolling by @hawkeye217 in #10209
- Update camera activity indicator by @hawkeye217 in #10208
- Use touch events for mobile review timeline by @hawkeye217 in #10212
- Fix resolution of timeline dragging by @NickM-27 in #10219
- Fix case where model path is set but not labelmap path by @NickM-27 in #10215
- Review summary by @NickM-27 in #10196
- Motion review by @NickM-27 in #10221
- Fix tooltips by @hawkeye217 in #10233
- Fix overflowing review timeline on mobile by @hawkeye217 in #10231
- Motion review timeline by @hawkeye217 in #10235
- Motion timeline updates by @hawkeye217 in #10242
- Camera groups by @NickM-27 in #10223
- Improve review data by @NickM-27 in #10246
- Multi cam recording view by @NickM-27 in #10244
- Pass computes value to libyolo_layer build by @NateMeyer in #10210
- upgrade deps by @blakeblackshear in #10257
- Disable hvc check by @NickM-27 in #10260
- Motion timeline data by @NickM-27 in #10245
- Fix combined build by @NickM-27 in #10264
- Save previews when restarting by @NickM-27 in #10261
- Live camera aspect ratio fixes by @hawkeye217 in #10266
- Organize api docs and add new review and preview apis by @NickM-27 in #10268
- Timeline scrolling behavior by @hawkeye217 in #10269
- Reviewed buttons by @NickM-27 in #10271
- Add page for submitting to frigate+ by @NickM-27 in #10273
- UI Tweaks by @NickM-27 in #10289
- Scrolling fixes and motion timeline changes by @hawkeye217 in #10295
- Ability to add, edit, and delete camera groups in the UI by @NickM-27 in #10296
- Cleanup overlay state with types and use overlay for severity by @NickM-27 in #10299
- Set Compute Level for CI build by @NateMeyer in #10276
- Remove paging by @NickM-27 in #10310
- Tweaks fixes by @NickM-27 in #10311
- Fix layout shifting by @NickM-27 in #10313
- Fix motion and recording views by @NickM-27 in #10318
- Add filters to plus page and fix layout by @NickM-27 in #10320
- Better segment clicking by @hawkeye217 in #10321
- Handlebar dragging fix by @hawkeye217 in #10333
- Rework mobile drawers to have a max height and use drawers for plus by @NickM-27 in #10330
- Fix motion review by @NickM-27 in #10329
- Timeline handlebar tweaks by @hawkeye217 in #10336
- Cleanup to use new preview video player in dynamic player by @NickM-27 in #10335
- Ensure at least 2 frames are saved per minute in preview video by @NickM-27 in #10337
- fix preview comparison by @NickM-27 in #10338
- Fixed incorrect label link by @lexeyt in #10342
- Add job to delete old GHCR container images by @NickM-27 in #10332
- Separate amd64 builds by @NickM-27 in #10319
- Adjustments and fixes by @NickM-27 in #10346
- Don't check autotracking onvif requirements for users with autotracking disabled by @hawkeye217 in #10350
- Fix: rename docker images and tags in Jetson configuration docs by @fisher60 in #10263
- Fix handling of recordings and switching cameras by @NickM-27 in #10351
- Fix dst offset calculation by @NickM-27 in #10357
- Fix timeline handlebar position by @hawkeye217 in #10358
- Redesign exports page by @NickM-27 in #10359
- Fix image cleanup by @NickM-27 in #10364
- Update live.md by @danielharrelson in #10366
- Fix segments on motion review by @hawkeye217 in #10370
- Layout tweaks by @NickM-27 in #10365
- refactor motion calculation by @NickM-27 in #10380
- Indicate on calendar which days have unreviewed activity by @NickM-27 in #10381
- Use flexbox for full recordings view by @hawkeye217 in #10385
- Preview improvements by @NickM-27 in #10384
- Fix preview update by @NickM-27 in #10388
- UI tweaks by @hawkeye217 in #10402
- Override default player controls by @NickM-27 in #10401
- Add special casing for android preview scrubbing by @NickM-27 in #10398
- Filter review items and motion to be main camera in recordings view only by @hawkeye217 in #10403
- Add ability to add legacy birdseye to camera groups by @hawkeye217 in #10404
- Add micropohone button for two way talk on live view by @NickM-27 in #10408
- Improve preview loading by @NickM-27 in #10406
- Optimize web config to be installed as PWA by @NickM-27 in #10405
- Fix gif layout by @NickM-27 in #10421
- Fix jsmpeg player component by @hawkeye217 in #10425
- Fix two way talk starting webrtc session by @NickM-27 in #10422
- Fix jumping to segment in recordings view by @NickM-27 in #10424
- Use react lazy to break js files into smaller chunks & remove videojs in favor of hls.js by @NickM-27 in #10431
- Cleanup gif on safari by @NickM-27 in #10434
- Mute video by default and allow control of volume by @NickM-27 in #10435
- use credentials for webmanifest by @blakeblackshear in #10447
- Persist selected camera group for live by @NickM-27 in #10448
- Recording scrubbing fixes by @hawkeye217 in #10439
- Reduce outliers in motion data to ensure consistent scaling for timeline by @NickM-27 in #10452
- Dim motion segments for motion during alerts and detections by @hawkeye217 in #10454
- Use Inter webfont instead of ttf by @hawkeye217 in #10456
- Rework motion data calculation by @NickM-27 in #10459
- Adjust mark these reviewed to update UI and then run api call by @NickM-27 in #10460
- Add skeleton for loading exports and improve spacing on bottom sheet by @NickM-27 in #10463
- Improve Recordings loading by @NickM-27 in #10462
- Add ability to zoom in to live and recordings views by @NickM-27 in #10475
- Fix zoom scaling for live view by @NickM-27 in #10479
- Fix switching camera group bug by @hawkeye217 in #10478
- Add region count to database and use for motion activity by @NickM-27 in #10480
- WebUI Fixes by @NickM-27 in #10481
- Save motion in DB as motion box count by @NickM-27 in #10484
- Add birdseye live view by @NickM-27 in #10485
- Fix frigate+ submit and recordings layouts for portrait cameras by @NickM-27 in #10486
- Make all motion segments clickable by @hawkeye217 in #10488
- Mark items as reviewed when manually seeking by @NickM-27 in #10494
- Maintain existing overlay state when setting hash by @NickM-27 in #10495
- Consolidate recordings view into one view by @NickM-27 in #10496
- Normalize motion data in chunks by @NickM-27 in #10497
- Fix thumbnails for panoramic cameras by @NickM-27 in #10499
- Improve mobile handlebar timestamp by @hawkeye217 in #10501
- Use preview quality setting to set image height and webp quality by @NickM-27 in #10502
- Fix android/chrome seeking on previews by @NickM-27 in #10512
- Timeline fixes and export handles by @hawkeye217 in #10522
- Fix divide by zero in normalized motion data by @hawkeye217 in #10528
- Add snapshot-clean.png API endpoint by @alexyao2015 in #10510
- Add C520WS to ONVIF PTZ camera recommendations. by @arevindh in #10466
- Fix preview getting wrong update time by @NickM-27 in #10534
- Don't use apple icon for android pwa by @NickM-27 in #10535
- Clean up selected data for recording by @NickM-27 in #10537
- Ability to configure loitering time in a zone by @NickM-27 in #10543
- Update Web deps by @NickM-27 in #10544
- Always check previews when refocusing the page by @NickM-27 in #10546
- Web deps again by @NickM-27 in #10562
- UI cleanup by @NickM-27 in #10567
- More web deps by @NickM-27 in #10564
- Summary timeline by @hawkeye217 in #10569
- Update recordings view by @NickM-27 in #10585
- Timeline fixes and changes by @hawkeye217 in #10587
- Update rest of web deps by @NickM-27 in #10588
- Timeline minimap and scrolling changes by @hawkeye217 in #10589
- Update docs deps by @NickM-27 in #10591
- Make stationary detection more resilient to inaccurate boxes by @NickM-27 in #10597
- WebUI Fixes by @NickM-27 in #10608
- Motion playback by @NickM-27 in #10609
- Only create docs dependabot PRs for docusaurus deps by @NickM-27 in #10593
- Move keyboard controls to video controls by @NickM-27 in #10617
- Add option to show motion only on motion timeline by @hawkeye217 in #10626
- Rewrite events communication to use zmq instead of mp.Queue by @NickM-27 in #10627
- Add ability to set playback speed on motion playback by @NickM-27 in #10628
- Add relative movement by clicking for supported ptzs by @hawkeye217 in #10629
- Make saving preview frames on restart more reliable by @NickM-27 in #10630
- Respect motion only when playing back by @NickM-27 in #10632
- Smooth transitions between preview scrubbing by @NickM-27 in #10636
- Fix safari preview transition by @NickM-27 in #10638
- UI tweaks by @hawkeye217 in #10642
- UI tweaks by @NickM-27 in #10645
- UI changes by @hawkeye217 in #10651
- Bump dependabot/fetch-metadata from 1 to 2 by @dependabot in #10607
- Motion review playback optimizations by @hawkeye217 in #10659
- Include which cameras detected motion during aggregated data by @NickM-27 in #10663
- Motion review changes by @hawkeye217 in #10667
- Only allow visible cameras to go live on dashboard by @NickM-27 in #10671
- Fix timeline upward scrolling limit by @hawkeye217 in #10673
- Bump pytz from 2023.3.post1 to 2024.1 in /docker/main by @dependabot in #9592
- Improve refreshing of review items by @NickM-27 in #10675
- Improve timeline scrolling with dynamic speed by @hawkeye217 in #10677
- Add tooltips for review item chips by @hawkeye217 in #10685
- Fix recordings viewer jumping when scrolling on timeline by @hawkeye217 in #10689
- Redesign Recordings View by @NickM-27 in #10690
- Timeline tweaks by @hawkeye217 in #10693
- Add ability to export from recordings page by @NickM-27 in #10692
- Quick UI fixes by @NickM-27 in #10695
- Fix draggable element pixel alignment by @hawkeye217 in #10708
- Make deleting review items delete recordings as well by @NickM-27 in #10707
- Improve restart timing by @NickM-27 in #10709
- Mobile recordings redesign by @NickM-27 in #10711
- Fix camera list not scrolling by @NickM-27 in #10713
- Fix inconsistent spacing by @NickM-27 in #10714
- Cleanup event filters by @NickM-27 in #10724
- Timeline tweaks for mobile by @hawkeye217 in #10726
- UI Tweaks by @NickM-27 in #10727
- Remove all AGPL licensed YOLO references from Frigate by @blakeblackshear in #10716
- Remove all AGPL licensed YOLO references from Frigate by @blakeblackshear in #10717
- chore: fix some comments by @JohnEndson in #10729
- Motion timeline bugfix by @hawkeye217 in #10751
- Recording fixes by @NickM-27 in #10728
- Implement alerts when a potential problem is detected by @NickM-27 in #10734
- Improve review book keeping by @NickM-27 in #10735
- Make export date/time respect configured timezone in config by @NickM-27 in #10750
- Fix s6 dependency by removing download-models by @Daniel-dev22 in #10755
- Fix mobile playback in some cases by @NickM-27 in #10774
- UI tweaks and bugfixes by @hawkeye217 in #10775
- Use drawer instead of dropdown menu for mobile settings by @NickM-27 in #10761
- Make motion timeline more efficient by @hawkeye217 in #10778
- Fix outline width by @hawkeye217 in #10779
- Support ONVIF exceptions when sending pan-tilt commands by @faurel in #10777
- Live view improvements by @NickM-27 in #10781
- Fix UI crash by @hawkeye217 in #10790
- Support manual detections in review items by @NickM-27 in #10784
- Link live recordings by @NickM-27 in #10799
- Don't stop mse in background when using pip by @NickM-27 in #10794
- Add ability to rename exports by @NickM-27 in #10791
- Redesign log page and pull logs in chunks by @NickM-27 in #10809
- Don't show warning for disabled cameras by @NickM-27 in #10811
- Timeline tweaks by @hawkeye217 in #10816
- Implement general page of system graphs by @NickM-27 in #10815
- Optimistic UI by @hawkeye217 in #10825
- Fix exports by @NickM-27 in #10824
- Optimistic UI for mobile buttons by @hawkeye217 in #10827
- Storage Graphs by @NickM-27 in #10826
- Motion review improvements by @hawkeye217 in #10833
- Implement camera stats graphs by @NickM-27 in #10831
- Cleanup by @NickM-27 in #10846
- Write default config if no config is saved when first starting frigate by @NickM-27 in #10847
- UI bugfixes and tweaks by @hawkeye217 in #10848
- Bump actions/setup-python from 5.0.0 to 5.1.0 by @dependabot in #10703
- Add ability to search exports by @NickM-27 in #10850
- Redesign logs page by @NickM-27 in #10853
- Add y axis to camera stats graphs by @NickM-27 in #10854
- Truncate write ahead log if it gets too big by @NickM-27 in #10866
- Improve Landscape mobile views by @NickM-27 in #10873
- Update web deps by @NickM-27 in #10875
- Use fast start for exports by @NickM-27 in #10879
- UI tweaks and bugfixes by @hawkeye217 in #10882
- Fix button color dark mode logic by @hawkeye217 in #10884
- Fix frigate startup stats by @NickM-27 in #10887
- Use zmq for event end queue and update python deps by @NickM-27 in #10886
- Fix export button colors by @hawkeye217 in #10903
- Always handle random lines on frigate logs by @NickM-27 in #10904
- Fix colors for default light mode theme by @hawkeye217 in #10909
- use relative coordinates for masks & zones by @NickM-27 in #10912
- Improve stats by @NickM-27 in #10911
- Fix button colors by @NickM-27 in #10915
- Ui Tweaks by @NickM-27 in #10920
- Fix rewrite rule in nginx.conf by @felix-zenk in #10888
- IPv6 listen in nginx.conf by @vasimi in #10653
- small docs typo fix for zones by @kirsch33 in #10549
- Clarify Proxmox LXC instructions; reference #5773 instead of #1111 by @m-d-brown in #10759
- Fix vertical camera layout scaling by @NickM-27 in #10936
- Ongoing review segments by @NickM-27 in #10924
- Fix build formatting by @NickM-27 in #10937
- Timeline handlebar changes by @hawkeye217 in #10939
- UI tweaks by @NickM-27 in #10946
- Further improve event loading by @NickM-27 in #10949
- Implement config migration and restructure config for new review format by @NickM-27 in #10961
- Make wsdl_dir path resolving more robust by @mweinelt in #10967
- Implement score filtering on Frigate+ Page by @NickM-27 in #10968
- UI Improvements by @NickM-27 in #10972
- More UI tweaks by @NickM-27 in #10974
- Fix camera switching and loading position by @NickM-27 in #10982
- UI tweaks by @NickM-27 in #10998
- Add support for arbitrary sub labels in reviews by @NickM-27 in #10990
- Add ability to link to review items directly by @NickM-27 in #11002
- Remove use_experimental config as part of config migration by @NickM-27 in #11003
- Migrate export filenames by @NickM-27 in #11005
- UI fixes by @NickM-27 in #11012
- Improve config validation for zones and object masks by @NickM-27 in #11022
- Show coral temps on system page if available by @NickM-27 in #11026
- Remove gifs and use existing views by @NickM-27 in #11027
- New mask/zone editor and motion tuner by @hawkeye217 in #11020
- Improve polygon undo function by @hawkeye217 in #11035
- UI tweaks by @hawkeye217 in #11036
- Save exports to database by @NickM-27 in #11040
- Dynamically scale the slider height when hovering + other UI tweaks by @NickM-27 in #11042
- Update deps by @NickM-27 in #11044
- Small logs view tweaks by @hawkeye217 in #11045
- chore: fix some typos in comments by @alongdate in #11028
- Bump docker/login-action from 3.0.0 to 3.1.0 by @dependabot in #10446
- Use export name in export deletion dialog instead of file id by @hawkeye217 in #11049
- Make a backup DB before doing migrations by @NickM-27 in #11048
- Fix array out of range error in reviews by @hawkeye217 in #11059
- Add status bar provider by @hawkeye217 in #11066
- Make all corners less rounded on mobile by @hawkeye217 in #11068
- Improve review mqtt topic by @NickM-27 in #11072
- Add camera fps to graphs by @NickM-27 in #11080
- fix motion config updating by @NickM-27 in #11083
- Clear ongoing reviews on startup by @NickM-27 in #11097
- Camera group dialog changes and fixes by @hawkeye217 in #11117
- Update theme colors by @hawkeye217 in #11126
- Cleanup error gpu by @NickM-27 in #11130
- Security improvement: ensure user provided file names don't exceed max length by @NickM-27 in #11129
- Add page titles for settings views by @hawkeye217 in #11132
- Remove dev env var requirement and update docs for latest config by @NickM-27 in #10483
- Live view not loading for MSE/JSMpeg if overriding live stream by @leccelecce in #11141
- Link to relevant page from status bar warnings / errors by @NickM-27 in #11140
- Fix rounding for MB for some stats by @xconverge in #11147
- Force X axis labels to be rotated correctly by @xconverge in #11148
- Explicitly set pandas dtype to reduce memory usage and fix warning by @NickM-27 in #11145
- [stats] Fix tooltip showing as undefined for first tick by @xconverge in #11150
- Fix handling mixed masks by @NickM-27 in #11157
- UI tweaks for screen sizes by @NickM-27 in #11155
- Open to recordings with pre-buffer by @NickM-27 in #11143
- Use pre buffer for other links by @NickM-27 in #11160
- Add chip for active objects on live view by @hawkeye217 in #11162
- UI fixes by @NickM-27 in #11161
- Use full resolution aspect ratio when available by @hawkeye217 in #11173
- Fix crash on mobile review by @hawkeye217 in #11175
- Save initial camera state to update when websocket connects by @NickM-27 in #11174
- Simplify on connect by @NickM-27 in #11176
- UI Fixes by @NickM-27 in #11179
- Use alert/detection colors as background for motion segments by @hawkeye217 in #11182
- Revamp object debug view by @hawkeye217 in #11186
- Config validation fixes by @hawkeye217 in #11191
- Add severity filter by @NickM-27 in #11190
- Fix scroll back by @NickM-27 in #11192
- Show motion playback on page initially by @NickM-27 in #11196
- Add support for more object icons by @NickM-27 in #11204
- Make zone/mask editor circle radius larger on mobile only by @hawkeye217 in #11210
- Fix overflowing portrait images in debug and motion tuner views by @hawkeye217 in #11209
- Add ability to submit frames from recordings by @NickM-27 in #11212
- Event cleanup by @NickM-27 in #11225
- Adjust stationary reqs depending on state by @NickM-27 in #11226
- Zone/mask editor improvements by @hawkeye217 in #11236
- Cleanup config validation by @NickM-27 in #11235
- Misc UI fixes by @hawkeye217 in #11237
- Support desktop touchscreens for timelines by @hawkeye217 in #11241
- Use portal on all sidebar tooltips by @hawkeye217 in #11267
- Fix touch events by @hawkeye217 in #11265
- UI Tweaks by @NickM-27 in #11263
- Implement infinite scrolling for frigate+ view by @NickM-27 in #11273
- Add scrollbar on ptz presets dropdown by @hawkeye217 in #11276
- Use cn() for class names throughout by @hawkeye217 in #11278
- Drag to reorder/resize cameras in camera groups by @hawkeye217 in #11279
- Fix setting manual event update time by @NickM-27 in #11290
- Draggable camera grid tweaks by @hawkeye217 in #11291
- Simplify preview refreshing with custom hook by @NickM-27 in #11293
- Improve config validation error messages by @hawkeye217 in #11292
- Add link to system stats from status bar by @NickM-27 in #11303
- Web Deps by @NickM-27 in #11304
- Backend and webui fixes by @NickM-27 in #11309
- Fix aarch64 build by @MarcA711 in #11289
- Icon picker component by @hawkeye217 in #11310
- Fix NaN check in system graphs by @hawkeye217 in #11312
- Implement recordings fullscreen and rework recordings layout size calculation by @NickM-27 in #11318
- Tweak camera group layout editor buttons by @hawkeye217 in #11317
- Camera group layout fixes by @hawkeye217 in #11334
- Bug fixes by @NickM-27 in #11332
- Bugfixes and small UI tweaks by @hawkeye217 in #11360
- Update FFmpeg for Rockchip by @MarcA711 in #11351
- Improve mask error by @NickM-27 in #11361
- Tweaks and fixes by @NickM-27 in #11372
- Use prettier-plugin-tailwindcss by @hawkeye217 in #11373
- Update to frigate+ documentation by @JohannCR in #11371
- Preview bugfixes by @hawkeye217 in #11384
- Add autotracking enable/disable button to live view by @hawkeye217 in #11396
- Mobile layout tweaks and bugfixes by @hawkeye217 in #11397
- Fix preview saving for ffmpeg builds < 5 by @NickM-27 in #11400
- Mobile/PWA spacing fixes by @hawkeye217 in #11403
- Recording fixes by @NickM-27 in #11406
- Update go2rtc and implement stream probe to only show 2 way talk when supported by @NickM-27 in #11407
- Implement common post_processing by @MarcA711 in #11408
- Auth! by @blakeblackshear in #11347
- UI fixes by @NickM-27 in #11417
- Bugfixes by @hawkeye217 in #11420
- UI Tweaks by @NickM-27 in #11421
- add setting for secure flag on cookie by @blakeblackshear in #11422
- UI Fixes by @NickM-27 in #11423
- Fix broken links by @NickM-27 in #11425
- Add optional env var in vite for easier development by @hawkeye217 in #11426
- UI improvements by @NickM-27 in #11429
- Add guard clause for api error by @hawkeye217 in #11436
- Support timezones by @NickM-27 in #11434
- Log warning for high detect fps by @hawkeye217 in #11435
- Fix timezone conversion logic by @NickM-27 in #11444
- Add padding to bottom of drawer for iOS PWA only by @hawkeye217 in #11446
- cspell fixes by @GrumpyMeow in #11447
- Minimal config in installation guide by @lachlanmacphee in #11339
- Don't timeshift recordings by @NickM-27 in #11449
- Remove parked car guide as it is no longer relevant by @NickM-27 in #11451
- Add clarifying message and docs link around motion masks by @hawkeye217 in #11452
- Update motion detection tuning to reflect UI tuner by @NickM-27 in #11455
- Update review APIs docs by @NickM-27 in #11457
- UI Tweaks by @NickM-27 in #11459
- Improve preview loading by @NickM-27 in #11469
- Clean up config editor by @hawkeye217 in #11474
- Reimplement support for rknn detector by @MarcA711 in #11365
- Add support for TensorRT v10 (multiple api calls have changed) by @remz1337 in #11166
- UI tweaks / fixes by @NickM-27 in #11479
- Update Deps by @NickM-27 in #11480
- Update beta docs by @hawkeye217 in #11483
- Fix current hour check for uneven timezones by @NickM-27 in #11484
- Adjust date math by @NickM-27 in #11485
- Fix extra space in ffmpeg4 preview command by @NickM-27 in #11487
- Safely load config file for go2rtc by @NickM-27 in #11491
- Mask/zone editor layout bugfix by @hawkeye217 in #11495
- Update docs for rockchip platform by @MarcA711 in #11503
- Ensure resizable handles are above jsmpeg canvas elements by @hawkeye217 in #11519
- Bugfixes by @hawkeye217 in #11526
- Redirect non-existent paths to live view by @hawkeye217 in #11536
- Tweaks and fixes by @NickM-27 in #11541
- Live view aspect calculation bugfix by @hawkeye217 in #11545
- Optimistic state bug fix by @NickM-27 in #11556
- Review docs updates by @hawkeye217 in #11560
- Bugfix: refresh editor value when raw config string is updated by @hawkeye217 in #11559
- Fix live view updating when it shouldn't be by @NickM-27 in #11561
- upgrade to latest openvino version by @blakeblackshear in #11563
- Add ability to interact with review items in events list by @NickM-27 in #11562
- Make jsmpeg players fully responsive by @hawkeye217 in #11567
- remove libusb build by @NickM-27 in #11571
- Fixes by @NickM-27 in #11575
- Handle case where preview doesn't automatically changeover by @NickM-27 in #11583
- Live view tweaks and jsmpeg bugfix by @hawkeye217 in #11584
- Remove duplicated live view aspect calculation by @hawkeye217 in #11587
- Simplify timezone math by @NickM-27 in #11586
- Allow normalization of motion data only on valid dataframes by @hawkeye217 in #11593
- UI fixes by @NickM-27 in #11596
- Ensure the correct container is used for jsmpeg canvas calcs by @hawkeye217 in #11599
- Draw motion mask first by @jftanner in #11598
- Fix iOS fullscreen on current hour preview by @NickM-27 in #11600
- UI Fixes by @NickM-27 in #11602
- Always use mse unless two way talk is requested by @NickM-27 in #11605
- cache current hour previews by @NickM-27 in #11606
- Cache camera stream info to speed up future config generations by @NickM-27 in #11614
- Settings rework by @NickM-27 in #11613
- Use single string or list for camera groups cameras by @hawkeye217 in #11616
- Various bugfixes and improvements by @hawkeye217 in #11624
- Improve efficiency of log and metrics pages by @NickM-27 in #11622
- Remove live mode from config by @NickM-27 in #11618
- Fix jsmpeg birdseye fullscreen by @hawkeye217 in #11625
- Always save previews in UTC offset by @NickM-27 in #11629
- Assume 1 grid column by default on live dashboard by @hawkeye217 in #11630
- Don't show mark reviewed button when all items are in progress by @NickM-27 in #11636
- Set static handlebar size by @hawkeye217 in #11638
- Handle case where user sets detections as empty list by @NickM-27 in #11646
- Non-modal dropdown menus by @hawkeye217 in #11649
- UI Fixes by @NickM-27 in #11648
- Update dialog sizing for plus dialog by @NickM-27 in #11650
- Don't sleep mobile devices when fullscreen by @hawkeye217 in #11652
- Adjust nginx proc count based on available CPUs by @NickM-27 in #11653
- Fix Statusbar rendering NaN% for unsupported GPUs by @track0x1 in #11655
- Bugfix: Camera grid layout check by @hawkeye217 in #11656
- Fullscreen changes by @hawkeye217 in #11666
- Handle error when live view stalls by @NickM-27 in #11665
- Don't fail if user has bind mounted nginx config by @NickM-27 in #11671
- Update deps by @blakeblackshear in #11679
- feat: apply ingress path to app paths by @sorenisanerd in #11677
- Fix export image path containing too many / by @NickM-27 in #11680
- TLS support by @blakeblackshear in #11678
New Contributors
- @harakas made their first contribution in #9762
- @jayvdb made their first contribution in #9895
- @robarnold made their first contribution in #9898
- @SpangleLabs made their first contribution in #9992
- @jeppestaerk made their first contribution in #9905
- @ehn made their first contribution in #10030
- @f1d094 made their first contribution in #10021
- @chamilad made their first contribution in #10049
- @Floriszz made their first contribution in #10020
- @soostdijck made their first contribution in #10101
- @a-jackson made their first contribution in #10097
- @vanseforge made their first contribution in #9710
- @lexeyt made their first contribution in #10342
- @fisher60 made their first contribution in #10263
- @danielharrelson made their first contribution in #10366
- @arevindh made their first contribution in #10466
- @JohnEndson made their first contribution in #10729
- @faurel made their first contribution in #10777
- @felix-zenk made their first contribution in #10888
- @vasimi made their first contribution in #10653
- @kirsch33 made their first contribution in #10549
- @alongdate made their first contribution in #11028
- @JohannCR made their first contribution in #11371
- @GrumpyMeow made their first contribution in #11447
- @lachlanmacphee made their first contribution in #11339
- @remz1337 made their first contribution in #11166
- @jftanner made their first contribution in #11598
- @track0x1 made their first contribution in #11655
- @sorenisanerd made their first contribution in #11677
Full Changelog: v0.13.2...v0.14.0-beta2