dermotduffy / frigate-hass-card

A Lovelace card for Frigate in Home Assistant
MIT License
531 stars 57 forks source link

Renewal time ignored on static image #1064

Closed CoMPaTech closed 1 year ago

CoMPaTech commented 1 year ago

Checklist:

Release with the issue: 5.0.0-rc1

Last working release (if known): 4.0.x

Browser and Operating System: HassOS 2023.4 and Latest Chrome on whatever (multiple OSes)

Description of problem:

Camera view 'continually' refreshes (i.e. live view instead of static view). This happened after the upgrade to 5 RC1 and clicking through lovelace to upgrade them all. The 'defaulted' to 10 seconds on update_seconds but even now on 0 (as shown below) it does not yield (it streams regardless of setting).

Javascript errors shown in the web inspector (if applicable):

Additional information:

type: custom:frigate-card
cameras:
  - camera_entity: camera.somecamera
    view:
      default: snapshot
      timeout_seconds: 30
image:
  mode: camera
view:
  default: image
  update_seconds: 0
menu:
  buttons:
    frigate:
      enabled: true
    live:
      enabled: true
    clips:
      enabled: true
    snapshots:
      enabled: true
    image:
      enabled: true
    download:
      enabled: false
    fullscreen:
      enabled: true
    camera_ui:
      enabled: false
  style: hidden
  position: right
live:
  controls:
    next_previous:
      style: none
    thumbnails:
      mode: none
  draggable: true
  lazy_load: true
  lazy_unload: never
dimensions:
  aspect_ratio_mode: static
media_viewer:
  controls:
    next_previous:
      style: none
dermotduffy commented 1 year ago

@CoMPaTech I see some things invalid (but harmless) in that config. Can you clarify what you want to happen?

CoMPaTech commented 1 year ago

@CoMPaTech I see some things invalid (but harmless) in that config. Can you clarify what you want to happen?

It's an older 'always upgraded' version of the card. What I expected to happen/used to work up to the upgrade:

Maybe I should start over fresh, but I might not be the only one running into the upgrade issue?

dermotduffy commented 1 year ago

Maybe I should start over fresh, but I might not be the only one running into the upgrade issue?

You need this:

image:
  mode: camera
  refresh_seconds: 0

The update_seconds controls how often the entire card re-renders, which you do not want. The image view will automatically refresh its image every 1 second (in high performance mode), or 10 seconds (in low performance mode). The above config will force it to never refresh (verified working on v5.0.0-beta.1).

Other config notes:

type: custom:frigate-card
cameras:
  - camera_entity: camera.somecamera
    view: <----------- This is not a real section for a camera
      default: snapshot
      timeout_seconds: 30
image:
  mode: camera
view:
  default: image
  update_seconds: 0 <----------- You don't need this
menu:
  buttons:
    frigate:
      enabled: true <--------- Default
    live:
      enabled: true <--------- Default
    clips:
      enabled: true <--------- Default
    snapshots:
      enabled: true <--------- Default
    image:
      enabled: true
    download:
      enabled: false
    fullscreen:
      enabled: true <--------- Default
    camera_ui:
      enabled: false
  style: hidden
  position: right
live:
  controls:
    next_previous:
      style: none
    thumbnails:
      mode: none
  draggable: true <--------- Default
  lazy_load: true <--------- Default
  lazy_unload: never
dimensions:
  aspect_ratio_mode: static
media_viewer:
  controls:
    next_previous:
      style: none
CoMPaTech commented 1 year ago

I think most of the defaults came through toggling switches back and forth in the past. The update_seconds I already looked at and it doesn't change it for me, all camera's keep updating at approx 1fps. I did found how to restore the functionality though:

image:  
  mode: camera  
  refresh_seconds: 0

Changing the update_seconds doesn't yield - refresh does. So setting it to the below does still images with 10 second refreshes

image:  
  mode: camera  
  refresh_seconds: 0
view:  
  default: image
  update_seconds: 10

So it's working as intended again, feel free to close and/or should we figure something wrt why it change they way it used to work?

dermotduffy commented 1 year ago

Changing the update_seconds doesn't yield - refresh does. So setting it to the below does still images with 10 second refreshes

I don't understand what you mean with "doesn't yield"? If you want the image to refresh every 10 seconds, why does this not work:

image:  
  mode: camera  
  refresh_seconds: 10
view:
  default: image
  [ NOTHING ELSE HERE]
CoMPaTech commented 1 year ago

I think I once set update_seconds to 0 and it did produced a still image, that doesn't work (at least now) and indeed you need the refresh_seconds.

dermotduffy commented 1 year ago

OK -- then lets consider this closed for now until/unless we have a smoking gun that is incorrect.