[Support]: Unable to playback h265 recordings in modern interface.
See original GitHub issueDescribe the problem you are having
Unable to playback h265 clips and recordings in the updated viewer. Works fine with older (0.8.4) version. Browsers throws an error, and has to be refeshed to select anything else on the page. “Playback cannot continue. No available working or supported playlists.”
Tested on version 0.8.4 the file plays - Section information is: <video aria-label="Clip for event 1642337897.940771-5jkjlw" autoplay="true" class="w-100" src="http://cctv.mylocalworkdomain.network:5000/clips/01_Foyer-1642337897.940771-5jkjlw.mp4" controls=""></video>
The home / non working one shows: <video class="vjs-tech" playsinline="playsinline" id="vjs_video_1495_html5_api" tabindex="-1" preload="none" src="blob:http://192.168.12.207:5000/33322245-4a30-4730-84f1-2281bd97cada"></video>
The video URL allows the file to playback with no problems. http://192.168.12.207:5000/api/events/1642372025.240855-6tjtap/clip.mp4
streaming is working fine in the browser, and i can see a live view.
Version
Tested on 0.9.4 and 0.10.0
Frigate config file
mqtt:
host: 192.168.12.201
port: 1883
detectors:
coral1:
type: edgetpu
device: pci
coral2:
type: edgetpu
device: pci:1
snapshots:
retain:
default: 1
database:
path: /media/frigate/clips/database/frigate.db
objects:
track:
- person
record:
enabled: true
retain_days: 0
events:
max_seconds: 300
pre_capture: 5
post_capture: 20
retain:
default: 1
logger:
default: warning
cameras:
porch:
ffmpeg:
inputs:
- path: rtsp://USER:PASS@192.168.12.6:554/Streaming/Channels/102
roles:
- detect
- path: rtsp://USER:PASS@192.168.12.6:554/Streaming/Channels/101
roles:
- record
detect:
width: 640
height: 480
fps: 8
record:
enabled: true
retain_days: 1
events:
max_seconds: 300
pre_capture: 15
post_capture: 45
retain:
default: 1
rtmp:
enabled: False
snapshots:
enabled: True
mqtt:
enabled: True
timestamp: True
crop: True
motion:
mask:
- 545,480,640,480,640,420,578,448
diningroom:
ffmpeg:
inputs:
- path: rtsp://USER:PASSant@192.168.12.7:8554/live1.264
roles:
- detect
- path: rtsp://USER:PASSant@192.168.12.7:8554/live0.264
roles:
- record
rtmp:
enabled: False
detect:
width: 768
height: 432
fps: 8
record:
enabled: true
retain_days: 0
events:
retain:
default: 1
snapshots:
enabled: True
mqtt:
enabled: True
timestamp: True
crop: True
bedroom:
ffmpeg:
inputs:
- path: rtsp://USER:PASSant@192.168.12.8:8554/live1.264
roles:
- detect
- path: rtsp://USER:PASSant@192.168.12.8:8554/live0.264
roles:
- record
detect:
width: 768
height: 432
fps: 8
record:
enabled: true
retain_days: 0
events:
retain:
default: 1
rtmp:
enabled: False
snapshots:
enabled: True
mqtt:
enabled: True
timestamp: True
crop: True
livingroom:
ffmpeg:
inputs:
- path: rtsp://USER:PASSant@192.168.12.10:8554/live1.264
roles:
- detect
- path: rtsp://USER:PASSant@192.168.12.10:8554/live0.264
roles:
- record
detect:
width: 768
height: 432
fps: 8
record:
enabled: true
retain_days: 0
events:
retain:
default: 1
rtmp:
enabled: False
snapshots:
enabled: True
mqtt:
enabled: True
timestamp: True
crop: True
landing:
ffmpeg:
inputs:
- path: rtsp://USER:PASSant@192.168.12.9:8554/live1.264
roles:
- detect
- path: rtsp://USER:PASSant@192.168.12.9:8554/live0.264
roles:
- record
detect:
width: 768
height: 432
fps: 8
record:
enabled: true
retain_days: 0
events:
retain:
default: 1
rtmp:
enabled: False
snapshots:
enabled: True
mqtt:
enabled: True
timestamp: True
crop: True
kitchen:
ffmpeg:
inputs:
- path: rtsp://USER:PASS@192.168.12.5:8554/unicast
roles:
- detect
- record
detect:
width: 1280
height: 720
fps: 8
record:
enabled: true
retain_days: 0
events:
retain:
default: 1
rtmp:
enabled: False
snapshots:
enabled: True
mqtt:
enabled: True
timestamp: True
crop: True
backdoor:
ffmpeg:
inputs:
- path: rtsp://USER:PASS@192.168.12.3:8554/unicast
roles:
- detect
- record
detect:
width: 1280
height: 720
fps: 8
record:
enabled: true
retain_days: 0
events:
retain:
default: 1
rtmp:
enabled: False
snapshots:
enabled: True
mqtt:
enabled: True
timestamp: True
crop: True
babycam:
ffmpeg:
inputs:
- path: rtsp://USER:PASS@192.168.12.4:8554/unicast
roles:
- detect
- record
detect:
width: 1280
height: 720
fps: 8
zones:
cot:
coordinates: 361,669,956,660,949,376,368,382
objects:
filters:
person:
min_score: 0.4
threshold: 0.5
record:
enabled: true
retain_days: 1
events:
retain:
default: 1
rtmp:
enabled: False
snapshots:
enabled: True
mqtt:
enabled: True
timestamp: True
crop: True
Relevant log output
access.log:
192.168.10.123 - - [16/Jan/2022:23:26:49 +0000] "GET /api/events/1642372025.240855-6tjtap HTTP/1.1" 200 5604 "http://192.168.12.207:5000/events?camera=porch" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36 Edg/97.0.1072.55" "-"
192.168.10.123 - - [16/Jan/2022:23:26:49 +0000] "GET /api/events/1642372025.240855-6tjtap/snapshot.jpg HTTP/1.1" 200 27832 "http://192.168.12.207:5000/events?camera=porch" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36 Edg/97.0.1072.55" "-"
192.168.12.202 - - [16/Jan/2022:23:27:26 +0000] "GET /api/stats HTTP/1.1" 200 1556 "-" "HomeAssistant/2021.12.8 aiohttp/3.8.1 Python/3.9" "-"
error.log:
2022/01/16 22:18:30 [error] 202#202: *7 no live upstreams while connecting to upstream, client: 192.168.10.123, server: , request: "GET /api/config HTTP/1.1", upstream: "http://frigate_api/config", host: "192.168.12.207:5000", referrer: "http://192.168.12.207:5000/events?camera=porch"
FFprobe output from your camera
ffprobe version 4.3.1 Copyright (c) 2007-2020 the FFmpeg developers
built with gcc 9 (Ubuntu 9.3.0-17ubuntu1~20.04)
configuration: --disable-debug --disable-doc --disable-ffplay --enable-shared --enable-avresample --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-gpl --enable-libfreetype --enable-libvidstab --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxcb --enable-libx265 --enable-libxvid --enable-libx264 --enable-nonfree --enable-openssl --enable-libfdk_aac --enable-postproc --enable-small --enable-version3 --enable-libzmq --extra-libs=-ldl --prefix=/opt/ffmpeg --enable-libopenjpeg --enable-libkvazaar --enable-libaom --extra-libs=-lpthread --enable-libsrt --enable-libaribb24 --enable-nvenc --enable-cuda --enable-cuvid --enable-libnpp --extra-cflags='-I/opt/ffmpeg/include -I/opt/ffmpeg/include/ffnvcodec -I/usr/local/cuda/include/' --extra-ldflags='-L/opt/ffmpeg/lib -L/usr/local/cuda/lib64 -L/usr/local/cuda/lib32/'
libavutil 56. 51.100 / 56. 51.100
libavcodec 58. 91.100 / 58. 91.100
libavformat 58. 45.100 / 58. 45.100
libavdevice 58. 10.100 / 58. 10.100
libavfilter 7. 85.100 / 7. 85.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 7.100 / 5. 7.100
libswresample 3. 7.100 / 3. 7.100
libpostproc 55. 7.100 / 55. 7.100
Input #0, rtsp, from 'rtsp://USER:PASS@192.168.12.6:554/Streaming/Channels/101':
Metadata:
title : Media Presentation
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: hevc, yuvj420p(pc), 3840x2160 [SAR 1:1 DAR 16:9], 12.50 tbr, 90k tbn, 90k tbc
Stream #0:1: Audio: pcm_mulaw, 8000 Hz, 1 channels, s16, 64 kb/s
Frigate stats
No response
Operating system
UNRAID
Install method
Docker CLI
Coral version
PCIe
Network connection
Wired
Camera make and model
hikvision I91BM
Any other information that may be helpful
No response
Issue Analytics
- State:
- Created 2 years ago
- Comments:67 (22 by maintainers)
Top GitHub Comments
The amount of storage efficiency gained with h264 -> h265 is not even close to the amount of storage that is used by storing identical video footage multiple times (for events and for 24/7 recordings) as it was before.
Not to mention h265 can’t be played in most browsers so it would result in just higher storage as most users that want to view their recordings
Looking forward to the conversion capability. Hopefully, it won’t affect hosting hardware requirements significantly. Will have to switch to another software for now.
Neither of those pages mentions that recordings can’t be played in any browser. In fact, the way it’s phrased now leads to a false assumption that the only issue with H265 is the limited browser choice.
From the doc:
Nope, H265 recordings can’t be viewed in any browser (from v0.9+ anyway).