Closed UeT-Fire closed 9 months ago
More info is needed, chrome on what device?
Sorry for the missing information. I'm a complete newbie when it comes to Home Assistant and Frigate. It took a few days to set everything up so that it now works more or less the way I want it to.
The videos don't work in Chrome on my Windows 11 PC.
In the browser on the web view on iOS on my iPhone with both Safari and Chrome, the videos work.
If you inspect element what are the browser logs while trying to play on the desktop?
Where can I view the browser logs?
This is what it looks like when I try to play a video.
Update: I installed the Mozilla Firefox browser. Under this, the clips work perfectly. So it seems to be a problem with chrome.
I to can confirm that there is an issue with playing clips from a few of my cameras in chrome browser. Now this is a very recent issue for me. And I have worked out it is only my FOSCAM C1 cameras that have issues with playback of clips. My Reolinks cameras clips work fine. As above. This only seems to effect chrome. All my clips from the FOSCAM C1 cameras play fine on different players IE Home Assistant WebRTC cards or VLC and so on.
My Logs are showing no issues that I can see. All seems fine.
2024-01-28 16:56:16.559428644 [INFO] Preparing Frigate...
2024-01-28 16:56:16.714052451 [INFO] Starting Frigate...
2024-01-28 16:56:18.570681538 [2024-01-28 16:56:18] frigate.app INFO : Starting Frigate (0.13.0-49814b3)
2024-01-28 16:56:18.673817453 [2024-01-28 16:56:18] peewee_migrate.logs INFO : Starting migrations
2024-01-28 16:56:18.683848203 [2024-01-28 16:56:18] peewee_migrate.logs INFO : There is nothing to migrate
2024-01-28 16:56:18.698906228 [2024-01-28 16:56:18] frigate.app INFO : Recording process started: 585
2024-01-28 16:56:18.700462554 [2024-01-28 16:56:18] frigate.app INFO : go2rtc process pid: 89
2024-01-28 16:56:18.717928798 [2024-01-28 16:56:18] detector.coral1 INFO : Starting detection process: 595
2024-01-28 16:56:18.719310338 [2024-01-28 16:56:18] frigate.app INFO : Output process started: 597
2024-01-28 16:56:18.724042750 [2024-01-28 16:56:18] frigate.detectors.plugins.edgetpu_tfl INFO : Attempting to load TPU as pci
2024-01-28 16:56:18.737742368 [2024-01-28 16:56:18] frigate.detectors.plugins.edgetpu_tfl INFO : TPU found
2024-01-28 16:56:18.974950912 [2024-01-28 16:56:18] frigate.app INFO : Camera processor started for Hallway: 645
2024-01-28 16:56:18.978316488 [2024-01-28 16:56:18] frigate.app INFO : Camera processor started for Sunroom: 646
2024-01-28 16:56:18.981731547 [2024-01-28 16:56:18] frigate.app INFO : Camera processor started for Garage: 648
2024-01-28 16:56:18.985309137 [2024-01-28 16:56:18] frigate.app INFO : Camera processor started for Kitchen: 650
2024-01-28 16:56:18.992046958 [2024-01-28 16:56:18] frigate.app INFO : Camera processor started for Sheddoors: 652
2024-01-28 16:56:18.992657442 [2024-01-28 16:56:18] frigate.app INFO : Camera processor started for Backdoor: 654
2024-01-28 16:56:18.996208760 [2024-01-28 16:56:18] frigate.app INFO : Camera processor started for Backgarden: 656
2024-01-28 16:56:18.999823534 [2024-01-28 16:56:18] frigate.app INFO : Camera processor started for Frontdoor: 659
2024-01-28 16:56:19.003314429 [2024-01-28 16:56:19] frigate.app INFO : Camera processor started for Frontgarden: 660
2024-01-28 16:56:19.006793600 [2024-01-28 16:56:19] frigate.app INFO : Capture process started for Hallway: 662
2024-01-28 16:56:19.010229376 [2024-01-28 16:56:19] frigate.app INFO : Capture process started for Sunroom: 666
2024-01-28 16:56:19.013631641 [2024-01-28 16:56:19] frigate.app INFO : Capture process started for Garage: 670
2024-01-28 16:56:19.017948681 [2024-01-28 16:56:19] frigate.app INFO : Capture process started for Kitchen: 676
2024-01-28 16:56:19.023194494 [2024-01-28 16:56:19] frigate.app INFO : Capture process started for Sheddoors: 683
2024-01-28 16:56:19.028648491 [2024-01-28 16:56:19] frigate.app INFO : Capture process started for Backdoor: 690
2024-01-28 16:56:19.036127049 [2024-01-28 16:56:19] frigate.app INFO : Capture process started for Backgarden: 697
2024-01-28 16:56:19.042795119 [2024-01-28 16:56:19] frigate.app INFO : Capture process started for Frontdoor: 703
2024-01-28 16:56:19.052186371 [2024-01-28 16:56:19] frigate.app INFO : Capture process started for Frontgarden: 711
My Config is below, Please feel free to tell if you think I have errors in my config. I would love to improve it. I have a feeling not all my settings are as they should be.
ui:
use_experimental: false
live_mode: mse
mqtt:
host: *.*.*.*
topic_prefix: frigate
# Optional: client id (default: shown below)
# WARNING: must be unique if you are running multiple instances
client_id: frigate
# Optional: user
user: admin
password: password
stats_interval: 60
detectors:
coral1:
type: edgetpu
device: pci
# Optional: Telemetry configuration
telemetry:
# Optional: Enable the latest version outbound check (default: shown below)
# NOTE: If you use the HomeAssistant integration, disabling this will prevent it from reporting new versions
version_check: True
# Optional: RTMP configuration
# NOTE: RTMP is deprecated in favor of restream
# NOTE: Can be overridden at the camera level
rtmp:
# Optional: Enable the RTMP stream (default: False)
enabled: False
ffmpeg:
# Optional: global ffmpeg args (default: shown below)
global_args: -hide_banner -loglevel panic
#input_args: -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -stimeout 5000000 -use_wallclock_as_timestamps 1
# Optional: global hwaccel args (default: shown below)
# NOTE: See hardware acceleration docs for your specific device
#hwaccel_args: preset-vaapi
hwaccel_args: preset-intel-qsv-h264
#hwaccel_args: -c:v h264_qsv
# Optional: global output args
output_args:
# Optional: output args for detect streams (default: shown below)
#detect: -f rawvideo -pix_fmt yuv420p
# Optional: output args for record streams (default: shown below)
#record: -f segment -segment_time 60 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -c:a aac
# Optional: output args for rtmp streams (default: shown below)
record: preset-record-generic-audio-aac
objects:
# Optional: list of objects to track from labelmap.txt (default: shown below)
track:
- person
- dog
- mouse
- cat
- bird
# Optional: mask to prevent all object types from being detected in certain areas (default: no mask)
# Checks based on the bottom center of the bounding box of the object.
# NOTE: This mask is COMBINED with the object type specific mask below
#mask: 0,0,1000,0,1000,200,0,200
# Optional: filters to reduce false positives for specific object types
filters:
mouse:
# Optional: minimum width*height of the bounding box for the detected object (default: 0)
min_area: 5000
# Optional: maximum width*height of the bounding box for the detected object (default: 24000000)
max_area: 20000
# Optional: minimum score for the object to initiate tracking (default: shown below)
min_score: 0.5
# Optional: minimum decimal percentage for tracked object's computed score to be considered a true positive (default: shown below)
threshold: 0.74
# Optional: mask to prevent this object type from being detected in certain areas (default: no mask)
# Checks based on the bottom center of the bounding box of the object
#mask: 0,0,1000,0,1000,200,0,200
bird:
# Optional: minimum width*height of the bounding box for the detected object (default: 0)
min_area: 5000
# Optional: maximum width*height of the bounding box for the detected object (default: 24000000)
max_area: 100000
# Optional: minimum score for the object to initiate tracking (default: shown below)
min_score: 0.5
# Optional: minimum decimal percentage for tracked object's computed score to be considered a true positive (default: shown below)
threshold: 0.74
# Optional: mask to prevent this object type from being detected in certain areas (default: no mask)
# Checks based on the bottom center of the bounding box of the object
#mask: 0,0,1000,0,1000,200,0,200
dog:
# Optional: minimum width*height of the bounding box for the detected object (default: 0)
##min_area: 5000
# Optional: maximum width*height of the bounding box for the detected object (default: 24000000)
max_area: 100000
# Optional: minimum score for the object to initiate tracking (default: shown below)
##min_score: 0.60
# Optional: minimum decimal percentage for tracked object's computed score to be considered a true positive (default: shown below)
threshold: 0.74
# Optional: mask to prevent this object type from being detected in certain areas (default: no mask)
# Checks based on the bottom center of the bounding box of the object
#mask: 0,0,1000,0,1000,200,0,200
cat:
# Optional: minimum width*height of the bounding box for the detected object (default: 0)
##min_area: 5000
# Optional: maximum width*height of the bounding box for the detected object (default: 24000000)
max_area: 100000
# Optional: minimum score for the object to initiate tracking (default: shown below)
##min_score: 0.60
# Optional: minimum decimal percentage for tracked object's computed score to be considered a true positive (default: shown below)
threshold: 0.74
# Optional: mask to prevent this object type from being detected in certain areas (default: no mask)
# Checks based on the bottom center of the bounding box of the object
#mask: 0,0,1000,0,1000,200,0,200
person:
# Optional: minimum width*height of the bounding box for the detected object (default: 0)
min_area: 5000
# Optional: maximum width*height of the bounding box for the detected object (default: 24000000)
max_area: 100000
# Optional: minimum score for the object to initiate tracking (default: shown below)
min_score: 0.6
# Optional: minimum decimal percentage for tracked object's computed score to be considered a true positive (default: shown below)
threshold: 0.81
# Optional: mask to prevent this object type from being detected in certain areas (default: no mask)
# Checks based on the bottom center of the bounding box of the object
#mask: 0,0,1000,0,1000,200,0,200
snapshots:
# Optional: Enable writing jpg snapshot to /media/frigate/clips (default: shown below)
# This value can be set via MQTT and will be updated in startup based on retained value
enabled: True
# Optional: print a timestamp on the snapshots (default: shown below)
timestamp: True
# Optional: draw bounding box on the snapshots (default: shown below)
bounding_box: True
# Optional: crop the snapshot (default: shown below)
crop: False
# Optional: height to resize the snapshot to (default: original size)
height: 720
quality: 100
# Optional: Restrict snapshots to objects that entered any of the listed zones (default: no required zones)
#required_zones: []
# Optional: Camera override for retention settings (default: global values)
retain:
# Required: Default retention days (default: shown below)
default: 55
# Optional: Per object retention days
objects:
dog: 15
cat: 15
person: 90
bird: 15
detect:
# Optional: width of the frame for the input with the detect role (default: shown below)
width: 1280
# Optional: height of the frame for the input with the detect role (default: shown below)
height: 720
# Optional: desired fps for your camera for the input with the detect role (default: shown below)
# NOTE: Recommended value of 5. Ideally, try and reduce your FPS on the camera.
fps: 5
# Optional: enables detection for the camera (default: True)
# This value can be set via MQTT and will be updated in startup based on retained value
enabled: True
# Optional: Number of frames without a detection before frigate considers an object to be gone. (default: 5x the frame rate)
max_disappeared: 80
# Optional: Configuration for stationary object tracking
stationary:
# Optional: Frequency for confirming stationary objects (default: shown below)
# When set to 0, object detection will not confirm stationary objects until movement is detected.
# If set to 10, object detection will run to confirm the object still exists on every 10th frame.
interval: 10
# Optional: Number of frames without a position change for an object to be considered stationary (default: 10x the frame rate or 10s)
threshold: 50
# Optional: Define a maximum number of frames for tracking a stationary object (default: not set, track forever)
# This can help with false positives for objects that should only be stationary for a limited amount of time.
# It can also be used to disable stationary object tracking. For example, you may want to set a value for person, but leave
# car at the default.
# WARNING: Setting these values overrides default behavior and disables stationary object tracking.
# There are very few situations where you would want it disabled. It is NOT recommended to
# copy these values from the example config into your config unless you know they are needed.
# max_frames:
# # Optional: Default for all object types (default: not set, track forever)
# default: 3000
# # Optional: Object specific values
# objects:
# person: 1000
record:
enabled: True
expire_interval: 10
retain:
days: 5
mode: motion
events:
pre_capture: 5
post_capture: 4
retain:
default: 10
mode: active_objects
objects:
person: 32
dog: 25
cat: 25
go2rtc:
streams:
Hallway:
- rtsp://admin:password@*.*.*.*:554/videoMain
- "ffmpeg:Hallway#audio=aac"
Sunroom:
- rtsp://admin:password@*.*.*.*:554/videoMain
- "ffmpeg:Sunroom#audio=aac"
Garage:
- rtsp://admin:password@*.*.*.*8:554/videoMain
- "ffmpeg:Garage#audio=aac"
Kitchen:
- rtsp://admin:password@*.*.*.*:554/videoMain
- "ffmpeg:Kitchen#audio=aac"
Sheddoors:
- rtsp://admin:password@*.*.*.*:554/h264Preview_01_main
- "ffmpeg:Sheddoors#audio=opus"
Sheddoors_sub:
- rtsp://admin:password@*.*.*.*:554/h264Preview_01_sub
- "ffmpeg:Sheddoors_sub#audio=opus"
Backdoor:
- rtsp://admin:password@*.*.*.*:554/h264Preview_01_main
- "ffmpeg:Backdoor#audio=opus"
Backdoor_sub:
- rtsp://admin:password@*.*.*.*:554/h264Preview_01_sub
- "ffmpeg:Backdoor_sub#audio=opus"
Backgarden:
- rtsp://admin:password@*.*.*.*:554/h264Preview_01_main
- "ffmpeg:Backgarden#audio=opus"
Backgarden_sub:
- rtsp://admin:password@*.*.*.*:554/h264Preview_01_sub
- "ffmpeg:Backgarden_sub#audio=opus"
Frontgarden:
- rtsp://admin:password@*.*.*.*:554/h264Preview_01_main
- "ffmpeg:Frontgarden#audio=opus"
Frontgarden_sub:
- rtsp://admin:password@*.*.*.*:554/h264Preview_01_sub
- "ffmpeg:Frontgarden_sub#audio=opus"
Frontdoor:
- rtsp://admin:password@*.*.*.*/h264Preview_01_main
- "ffmpeg:Frontdoor#audio=opus"
Frontdoor_sub:
- rtsp://admin:password@*.*.*.*:554/h264Preview_01_sub
- "ffmpeg:Frontdoor_sub#audio=opus"
webrtc:
candidates:
- *.*.*.*:8555
- stun:8555
timestamp_style:
# Optional: Position of the timestamp (default: shown below)
# "tl" (top left), "tr" (top right), "bl" (bottom left), "br" (bottom right)
position: "tl"
# Optional: Format specifier conform to the Python package "datetime" (default: shown below)
# Additional Examples:
# german: "%d.%m.%Y %H:%M:%S"
format: "%d/%m/%Y %H:%M:%S"
# Optional: Color of font
color:
# All Required when color is specified (default: shown below)
red: 255
green: 255
blue: 255
# Optional: Line thickness of font (default: shown below)
thickness: 1
# Optional: Effect of lettering (default: shown below)
# None (No effect),
# "solid" (solid background in inverse color of font)
# "shadow" (shadow for font)
effect: solid
live:
# Optional: Set the height of the live stream. (default: 720)
# This must be less than or equal to the height of the detect stream. Lower resolutions
# reduce bandwidth required for viewing the live stream. Width is computed to match known aspect ratio.
height: 720
# Optional: Set the encode quality of the live stream (default: shown below)
# 1 is the highest quality, and 31 is the lowest. Lower quality feeds utilize less CPU resources.
quality: 10
birdseye:
# Optional: Enable birdseye view (default: shown below)
enabled: True
# Optional: Width of the output resolution (default: shown below)
#width: 1280
# Optional: Height of the output resolution (default: shown below)
#height: 720
restream: True
# Optional: Encoding quality of the mpeg1 feed (default: shown below)
# 1 is the highest quality, and 31 is the lowest. Lower quality feeds utilize less CPU resources.
quality: 3
# Optional: Mode of the view. Available options are: objects, motion, and continuous
# objects - cameras are included if they have had a tracked object within the last 30 seconds
# motion - cameras are included if motion was detected in the last 30 seconds
# continuous - all cameras are included always
mode: continuous
cameras:
Hallway:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/Hallway
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/Hallway
input_args: preset-rtsp-restream
roles:
- detect
live:
stream_name: Hallway
record: # <----- Enable recording
enabled: True
detect:
width: 854
height: 480
fps: 5
Sunroom:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/Sunroom
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/Sunroom
input_args: preset-rtsp-restream
roles:
- detect
live:
stream_name: Sunroom
record: # <----- Enable recording
enabled: True
detect:
width: 854
height: 480
fps: 5
Garage:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/Garage
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/Garage
input_args: preset-rtsp-restream
roles:
- detect
live:
stream_name: Garage
record: # <----- Enable recording
enabled: True
detect:
width: 854
height: 480
fps: 5
Kitchen:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/Kitchen
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/Kitchen
input_args: preset-rtsp-restream
roles:
- detect
live:
stream_name: Kitchen
record: # <----- Enable recording
enabled: True
detect:
width: 854
height: 480
fps: 5
Sheddoors:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/Sheddoors # <--- the name here must match the name of the camera_sub in restream
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/Sheddoors_sub # <--- the name here must match the name of the camera_sub in restream
input_args: preset-rtsp-restream
roles:
- detect
live:
stream_name: Sheddoors_sub
record: # <----- Enable recording
enabled: True
detect:
width: 640
height: 480
fps: 7
Backdoor:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/Backdoor # <--- the name here must match the name of the camera_sub in restream
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/Backdoor_sub # <--- the name here must match the name of the camera_sub in restream
input_args: preset-rtsp-restream
roles:
- detect
live:
stream_name: Backdoor_sub
record: # <----- Enable recording
enabled: True
detect:
width: 640
height: 480
fps: 7
Backgarden:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/Backgarden
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/Backgarden_sub # <--- the name here must match the name of the camera_sub in restream
input_args: preset-rtsp-restream
roles:
- detect
live:
stream_name: Backgarden_sub
record: # <----- Enable recording
enabled: True
detect:
width: 640
height: 480
fps: 7
Frontdoor:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/Frontdoor
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/Frontdoor_sub # <--- the name here must match the name of the camera_sub in restream
input_args: preset-rtsp-restream
roles:
- detect
live:
stream_name: Frontdoor_sub
record: # <----- Enable recording
enabled: True
detect:
width: 640
height: 480
fps: 7
Frontgarden:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/Frontgarden
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/Frontgarden_sub # <--- the name here must match the name of the camera_sub in restream
input_args: preset-rtsp-restream
roles:
- detect
live:
stream_name: Frontgarden_sub
record: # <----- Enable recording
enabled: True
detect:
width: 640
height: 480
fps: 7
I've now managed to get the clips and recordings to display in Chrome again.
As you can see above in my config, I tried to record with sound without transcoding. According to the documentation I found, the standard sound recording for Reolink cameras is already in AAC format. But that didn't work for me.
I then tried a few FFMPEG Presets again. With the "preset-record-generic-audio-aac" output arg, it works for me now. It has been running for me for a few days now. Maybe it will help someone with chrome problems.
Thanks for updating with your solution
Describe the problem you are having
I cannot play the clips recorded in Frigate via Chrome.
I have no playback issues on my iPhone with the Home Asisstant app. I can also download the videos and they play perfectly.
My logs also look good and I can't see any errors.
Version
0.12.1-367D724
Frigate config file
Relevant log output
FFprobe output from your camera
Frigate stats
No response
Operating system
HassOS
Install method
HassOS Addon
Coral version
CPU (no coral)
Network connection
Wired
Camera make and model
Reolink Doorbell WiFi
Any other information that may be helpful
No response