[Camera Support]: Reolink doorbell keeps loading in JSMPEG without audio even if re-encoded, other cameras work fine #19241
-
Describe the problem you are havingI've just installed Frigate for the first time, and have a selection of cameras set up:
All of the cameras are running the latest available firmware. The two Duo 2s work fine with Two Way Talk and Camera Audio, and video is displayed through the Firefox video player. The same applies to the RLC-810As which have Camera Audio and play with the Firefox player, and the Axis MJPEG cameras which have no audio but still play in the Firefox video player. The problem is the Doorbell: this should have Camera Audio and Two Way Talk, and these work fine in the Reolink app. However in Frigate, the video stream is always displayed in JSMPEG with low framerate, poor quality and no sound. I can't figure out why this would be. When I play back recordings, it uses the browser's player and everything plays fine. I've tried setting Go2RTC to use FFMPEG with the same "video=" parameters as the two MJPEG cameras and this made no difference -- I also tried re-encoding the audio too (audio=aac and audio=opus tried at different times) and this didn't help either. I've checked the streams from the cameras with For a Duo I get: And the R810s send: Why is the doorbell being forced to run under JSMPEG while the other cameras work fine, and how can I get it working properly too? Version0.15.2-3bda638 What browser(s) are you using?Firefox 140.0.4 (64-bit) Frigate config fileversion: 0.15-1
mqtt:
enabled: false
###############
# Go2RTC streams
###############
go2rtc:
log:
#exec: trace
streams:
# Garage cameras (Axis MJPEG) - see https://docs.frigate.video/configuration/camera_specific/#mjpeg-cameras
axis_1: "ffmpeg:http://friguser:[email protected]/mjpg/1/video.mjpg#video=h264#hardware"
axis_2: "ffmpeg:http://friguser:[email protected]/mjpg/1/video.mjpg#video=h264#hardware"
# Doorbell
doorbell:
- "rtsp://friguser:[email protected]:554/Preview_01_main"
doorbell_sub:
- "rtsp://friguser:[email protected]:554/Preview_01_sub"
# Duo cameras
duo_1: "rtsp://friguser:[email protected]/Preview_01_main"
duo_1_sub: "rtsp://friguser:[email protected]/Preview_01_sub"
duo_2: "rtsp://friguser:[email protected]/Preview_01_main"
duo_2_sub: "rtsp://friguser:[email protected]/Preview_01_sub"
# R810A cameras
r810a_1: "rtsp://friguser:[email protected]/Preview_01_main"
r810a_1_sub: "rtsp://friguser:[email protected]/Preview_01_sub"
r810a_2: "rtsp://friguser:[email protected]/Preview_01_main"
r810a_2_sub: "rtsp://friguser:[email protected]/Preview_01_sub"
# FFMPEG presets, see https://docs.frigate.video/configuration/ffmpeg_presets/
ffmpeg:
# enable sound in recordings, see https://docs.frigate.video/troubleshooting/faqs/#audio-in-recordings
output_args:
record: preset-record-generic-audio-aac
# enable QSV acceleration, see https://docs.frigate.video/configuration/hardware_acceleration#via-quicksync
hwaccel_args: preset-vaapi
###############
# Cameras
###############
cameras:
duo_1:
enabled: true
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/duo_1
roles:
- record
- path: rtsp://127.0.0.1:8554/duo_1_sub
roles:
- detect
detect:
enabled: false # <---- disable detection until you have a working camera feed
width: 1280
height: 720
duo_2:
enabled: true
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/duo_2
roles:
- record
- path: rtsp://127.0.0.1:8554/duo_2_sub
roles:
- detect
detect:
enabled: false # <---- disable detection until you have a working camera feed
width: 1280
height: 720
doorbell:
enabled: true
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/doorbell
roles:
- record
- path: rtsp://127.0.0.1:8554/doorbell_sub
roles:
- detect
- audio
detect:
enabled: false # <---- disable detection until you have a working camera feed
width: 1280
height: 720
r810a_1:
enabled: true
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/r810a_1
roles:
- record
- path: rtsp://127.0.0.1:8554/r810a_1_sub
roles:
- detect
detect:
enabled: false # <---- disable detection until you have a working camera feed
width: 1280
height: 720
r810a_2:
enabled: true
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/r810a_2
roles:
- record
- path: rtsp://127.0.0.1:8554/r810a_2_sub
roles:
- detect
detect:
enabled: false # <---- disable detection until you have a working camera feed
width: 1280
height: 720
axis_1:
enabled: true
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/axis_1 # <----- The stream you want to use for detection
roles:
- record
- detect
detect:
enabled: false # <---- disable detection until you have a working camera feed
width: 1280
height: 720
axis_2:
enabled: true
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/axis_2 # <----- The stream you want to use for detection
roles:
- record
- detect
detect:
enabled: false # <---- disable detection until you have a working camera feed
width: 1280
height: 720
###############
# Recording options
###############
record:
enabled: True
retain:
days: 14
mode: all
alerts:
retain:
days: 30
mode: motion
detections:
retain:
days: 30
mode: motionRelevant Frigate log outputNone relevantRelevant go2rtc log outputNone relevantFFprobe output from your camera# /usr/lib/ffmpeg/7.0/bin/ffprobe rtsp://DOORBELL:554/Preview_01_main
ffprobe version n7.0.2-18-g3e6cec1286-20240919 Copyright (c) 2007-2024 the FFmpeg developers
built with gcc 14.2.0 (crosstool-NG 1.26.0.106_ed12fa6)
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-ffbuild-linux-gnu- --arch=x86_64 --target-os=linux --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-libxml2 --enable-openssl --enable-lzma --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --enable-libpulse --enable-libvmaf --enable-libxcb --enable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d --enable-libdavs2 --enable-libdvdread --enable-libdvdnav --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-libzmq --enable-lv2 --enable-libvpl --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --disable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libdrm --enable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs='-ldl -lgomp' --extra-ldflags=-pthread --extra-ldexeflags=-pie --cc=x86_64-ffbuild-linux-gnu-gcc --cxx=x86_64-ffbuild-linux-gnu-g++ --ar=x86_64-ffbuild-linux-gnu-gcc-ar --ranlib=x86_64-ffbuild-linux-gnu-gcc-ranlib --nm=x86_64-ffbuild-linux-gnu-gcc-nm --extra-version=20240919
libavutil 59. 8.100 / 59. 8.100
libavcodec 61. 3.100 / 61. 3.100
libavformat 61. 1.100 / 61. 1.100
libavdevice 61. 1.100 / 61. 1.100
libavfilter 10. 1.100 / 10. 1.100
libswscale 8. 1.100 / 8. 1.100
libswresample 5. 1.100 / 5. 1.100
libpostproc 58. 1.100 / 58. 1.100
Input #0, rtsp, from 'rtsp://DOORBELL:554/Preview_01_main':
Metadata:
title : Session streamed by "preview"
Duration: N/A, start: 0.000625, bitrate: N/A
Stream #0:0: Video: h264 (High), yuv420p(progressive), 2560x1920, 20 fps, 40 tbr, 90k tbn
Stream #0:1: Audio: aac (LC), 16000 Hz, mono, fltp
# /usr/lib/ffmpeg/7.0/bin/ffprobe rtsp://DOORBELL:554/Preview_01_sub
ffprobe version n7.0.2-18-g3e6cec1286-20240919 Copyright (c) 2007-2024 the FFmpeg developers
built with gcc 14.2.0 (crosstool-NG 1.26.0.106_ed12fa6)
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-ffbuild-linux-gnu- --arch=x86_64 --target-os=linux --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-libxml2 --enable-openssl --enable-lzma --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --enable-libpulse --enable-libvmaf --enable-libxcb --enable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d --enable-libdavs2 --enable-libdvdread --enable-libdvdnav --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-libzmq --enable-lv2 --enable-libvpl --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --disable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libdrm --enable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs='-ldl -lgomp' --extra-ldflags=-pthread --extra-ldexeflags=-pie --cc=x86_64-ffbuild-linux-gnu-gcc --cxx=x86_64-ffbuild-linux-gnu-g++ --ar=x86_64-ffbuild-linux-gnu-gcc-ar --ranlib=x86_64-ffbuild-linux-gnu-gcc-ranlib --nm=x86_64-ffbuild-linux-gnu-gcc-nm --extra-version=20240919
libavutil 59. 8.100 / 59. 8.100
libavcodec 61. 3.100 / 61. 3.100
libavformat 61. 1.100 / 61. 1.100
libavdevice 61. 1.100 / 61. 1.100
libavfilter 10. 1.100 / 10. 1.100
libswscale 8. 1.100 / 8. 1.100
libswresample 5. 1.100 / 5. 1.100
libpostproc 58. 1.100 / 58. 1.100
Input #0, rtsp, from 'rtsp://DOORBELL:554/Preview_01_sub':
Metadata:
title : Session streamed by "preview"
Duration: N/A, start: 0.000750, bitrate: N/A
Stream #0:0: Video: h264 (High), yuv420p(progressive), 640x480, 15 fps, 30 tbr, 90k tbn
Stream #0:1: Audio: aac (LC), 16000 Hz, mono, fltpFrigate stats{"cameras":{"front":{"camera_fps":8.0,"process_fps":7.1,"skipped_fps":0.0,"detection_fps":0.0,"detection_enabled":false,"pid":391,"capture_pid":440,"ffmpeg_pid":450,"audio_rms":0.0,"audio_dBFS":0.0},"drive":{"camera_fps":5.0,"process_fps":5.0,"skipped_fps":0.0,"detection_fps":0.0,"detection_enabled":false,"pid":392,"capture_pid":451,"ffmpeg_pid":455,"audio_rms":0.0,"audio_dBFS":0.0},"doorbell":{"camera_fps":5.1,"process_fps":5.0,"skipped_fps":0.0,"detection_fps":0.0,"detection_enabled":false,"pid":402,"capture_pid":457,"ffmpeg_pid":462,"audio_rms":0.0,"audio_dBFS":0.0},"garden":{"camera_fps":5.0,"process_fps":5.0,"skipped_fps":0.0,"detection_fps":0.0,"detection_enabled":false,"pid":408,"capture_pid":464,"ffmpeg_pid":470,"audio_rms":0.0,"audio_dBFS":0.0},"patio":{"camera_fps":5.0,"process_fps":5.0,"skipped_fps":0.0,"detection_fps":0.0,"detection_enabled":false,"pid":418,"capture_pid":469,"ffmpeg_pid":491,"audio_rms":0.0,"audio_dBFS":0.0},"garage_rear":{"camera_fps":5.0,"process_fps":5.0,"skipped_fps":0.0,"detection_fps":0.0,"detection_enabled":false,"pid":426,"capture_pid":471,"ffmpeg_pid":489,"audio_rms":0.0,"audio_dBFS":0.0},"garage_front":{"camera_fps":5.0,"process_fps":5.1,"skipped_fps":0.0,"detection_fps":0.0,"detection_enabled":false,"pid":434,"capture_pid":475,"ffmpeg_pid":493,"audio_rms":0.0,"audio_dBFS":0.0}},"detectors":{"cpu":{"inference_speed":10.0,"detection_start":0.0,"pid":362}},"detection_fps":0.0,"gpu_usages":{"intel-vaapi":{"gpu":"6.01%","mem":"-%","clients":{"489":"26.35%","493":"25.93%","470":"19.95%","450":"18.89%","462":"8.11%","455":"7.56%","491":"7.08%"}}},"cpu_usages":{"frigate.full_system":{"cpu":"66.8","mem":"32.1"},"1":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"/package/admin/s6/command/s6-svscan -d4 -- /run/service"},"15":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise s6-linux-init-shutdownd"},"16":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"/package/admin/s6-linux-init/command/s6-linux-init-shutdownd -c /run/s6/basedir -g 3000 -C -B"},"24":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise go2rtc-healthcheck"},"25":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise s6rc-oneshot-runner"},"26":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise s6rc-fdholder"},"27":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise frigate"},"28":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise go2rtc"},"29":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise go2rtc-log"},"30":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise certsync-log"},"31":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise certsync"},"32":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise frigate-log"},"33":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise nginx-log"},"34":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-supervise nginx"},"45":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"/package/admin/s6-2.11.3.2/command/s6-fdholderd -1 -i data/rules"},"46":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"/package/admin/s6/command/s6-ipcserverd -1 -- /package/admin/s6/command/s6-ipcserver-access -v0 -E -l0 -i data/rules -- /package/admin/s6/command/s6-sudod -t 30000 -- /package/admin/s6-rc/command/s6-rc-oneshot-run -l ../.. --"},"86":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/go2rtc"},"87":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/nginx"},"89":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/frigate"},"90":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/certsync"},"101":{"cpu":"21.6","cpu_average":"21","mem":"0.5","cmdline":"/usr/local/go2rtc/bin/go2rtc -config=/dev/shm/go2rtc.yaml"},"119":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"bash ./run.user go2rtc-healthcheck"},"121":{"cpu":"6.3","cpu_average":"8","mem":"4.4","cmdline":"python3 -u -m frigate"},"129":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"nginx: master process nginx"},"161":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"nginx: worker process"},"162":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"nginx: worker process"},"163":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"nginx: worker process"},"164":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"nginx: worker process"},"165":{"cpu":"0.0","cpu_average":"0","mem":"0.1","cmdline":"nginx: cache manager process"},"312":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"bash ./run.user certsync"},"346":{"cpu":"5.1","cpu_average":"3","mem":"2.4","cmdline":"frigate.recording_manager"},"348":{"cpu":"1.0","cpu_average":"0","mem":"2.1","cmdline":"frigate.review_segment_manager"},"362":{"cpu":"0.0","cpu_average":"0","mem":"2.2","cmdline":"frigate.detector.cpu "},"377":{"cpu":"6.5","cpu_average":"7","mem":"2.5","cmdline":"frigate.output "},"391":{"cpu":"1.6","cpu_average":"1","mem":"2.3","cmdline":"frigate.process:front"},"392":{"cpu":"1.5","cpu_average":"1","mem":"2.3","cmdline":"frigate.process:drive"},"402":{"cpu":"1.5","cpu_average":"1","mem":"2.3","cmdline":"frigate.process:doorbell"},"408":{"cpu":"1.5","cpu_average":"1","mem":"2.3","cmdline":"frigate.process:garden"},"418":{"cpu":"1.3","cpu_average":"1","mem":"2.3","cmdline":"frigate.process:patio"},"426":{"cpu":"1.5","cpu_average":"1","mem":"2.3","cmdline":"frigate.process:garage_rear"},"434":{"cpu":"1.4","cpu_average":"1","mem":"2.3","cmdline":"frigate.process:garage_front"},"440":{"cpu":"1.7","cpu_average":"1","mem":"2.3","cmdline":"frigate.capture:front"},"450":{"cpu":"3.0","cpu_average":"2","mem":"0.9","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel_flags allow_profile_mismatch -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/front_sub -r 5 -vf fps=5,scale_vaapi=w=1280:h=720,hwdownload,format=nv12,eq=gamma=1.4:gamma_weight=0.5 -threads 2 -f rawvideo -pix_fmt yuv420p pipe:"},"451":{"cpu":"1.4","cpu_average":"1","mem":"2.3","cmdline":"frigate.capture:drive"},"455":{"cpu":"2.9","cpu_average":"2","mem":"0.7","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel_flags allow_profile_mismatch -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/drive_sub -r 5 -vf fps=5,scale_vaapi=w=1280:h=720,hwdownload,format=nv12,eq=gamma=1.4:gamma_weight=0.5 -threads 2 -f rawvideo -pix_fmt yuv420p pipe:"},"457":{"cpu":"1.6","cpu_average":"1","mem":"2.3","cmdline":"frigate.capture:doorbell"},"459":{"cpu":"3.0","cpu_average":"4","mem":"0.4","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/front -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/front@%Y%m%d%H%M%S%z.mp4"},"462":{"cpu":"3.1","cpu_average":"2","mem":"0.7","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel_flags allow_profile_mismatch -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/front_doorbell_sub -r 5 -vf fps=5,scale_vaapi=w=1280:h=720,hwdownload,format=nv12,eq=gamma=1.4:gamma_weight=0.5 -threads 2 -f rawvideo -pix_fmt yuv420p pipe:"},"464":{"cpu":"1.5","cpu_average":"1","mem":"2.3","cmdline":"frigate.capture:garden"},"468":{"cpu":"5.9","cpu_average":"5","mem":"0.4","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/drive -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/drive@%Y%m%d%H%M%S%z.mp4"},"469":{"cpu":"1.5","cpu_average":"1","mem":"2.3","cmdline":"frigate.capture:patio"},"470":{"cpu":"3.1","cpu_average":"2","mem":"0.7","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel_flags allow_profile_mismatch -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/garden_sub -r 5 -vf fps=5,scale_vaapi=w=1280:h=720,hwdownload,format=nv12,eq=gamma=1.4:gamma_weight=0.5 -threads 2 -f rawvideo -pix_fmt yuv420p pipe:"},"471":{"cpu":"1.5","cpu_average":"1","mem":"2.3","cmdline":"frigate.capture:garage_rear"},"475":{"cpu":"1.5","cpu_average":"1","mem":"2.3","cmdline":"frigate.capture:garage_front"},"485":{"cpu":"5.8","cpu_average":"4","mem":"0.5","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/front_doorbell -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/doorbell@%Y%m%d%H%M%S%z.mp4"},"487":{"cpu":"1.1","cpu_average":"3","mem":"0.5","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/garden -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/garden@%Y%m%d%H%M%S%z.mp4"},"489":{"cpu":"4.8","cpu_average":"4","mem":"0.7","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel_flags allow_profile_mismatch -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/garage_rear -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/garage_rear@%Y%m%d%H%M%S%z.mp4 -r 5 -vf fps=5,scale_vaapi=w=1280:h=720,hwdownload,format=nv12,eq=gamma=1.4:gamma_weight=0.5 -threads 2 -f rawvideo -pix_fmt yuv420p pipe:"},"491":{"cpu":"2.8","cpu_average":"2","mem":"0.7","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel_flags allow_profile_mismatch -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/patio_sub -r 5 -vf fps=5,scale_vaapi=w=1280:h=720,hwdownload,format=nv12,eq=gamma=1.4:gamma_weight=0.5 -threads 2 -f rawvideo -pix_fmt yuv420p pipe:"},"493":{"cpu":"4.5","cpu_average":"4","mem":"0.7","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel_flags allow_profile_mismatch -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format vaapi -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/garage_front -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/garage_front@%Y%m%d%H%M%S%z.mp4 -r 5 -vf fps=5,scale_vaapi=w=1280:h=720,hwdownload,format=nv12,eq=gamma=1.4:gamma_weight=0.5 -threads 2 -f rawvideo -pix_fmt yuv420p pipe:"},"501":{"cpu":"6.3","cpu_average":"5","mem":"0.4","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -loglevel warning -threads 2 -user_agent FFmpeg Frigate/0.15.2-3bda638 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/patio -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/patio@%Y%m%d%H%M%S%z.mp4"},"508":{"cpu":"72.0","cpu_average":"68","mem":"0.8","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -v error -fflags nobuffer -flags low_delay -i http://*:*@cctv-garage-rear.homenet.philpem.me.uk/mjpg/1/video.mjpg -c:v libx264 -g 50 -profile:v high -level:v 4.1 -preset:v superfast -tune:v zerolatency -pix_fmt:v yuv420p -an -user_agent ffmpeg/go2rtc -rtsp_transport tcp -f rtsp rtsp://127.0.0.1:8554/a0f5867d71cc2abfc00df13e82583ae9"},"513":{"cpu":"63.6","cpu_average":"60","mem":"0.8","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -hide_banner -v error -fflags nobuffer -flags low_delay -i http://*:*@cctv-garage-front.homenet.philpem.me.uk/mjpg/1/video.mjpg -c:v libx264 -g 50 -profile:v high -level:v 4.1 -preset:v superfast -tune:v zerolatency -pix_fmt:v yuv420p -an -user_agent ffmpeg/go2rtc -rtsp_transport tcp -f rtsp rtsp://127.0.0.1:8554/f43bd80610599784410e4e0a9b7249f6"},"588":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -threads 1 -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -i pipe: -threads 1 -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:"},"596":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -threads 1 -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -i pipe: -threads 1 -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:"},"606":{"cpu":"0.0","cpu_average":"0","mem":"0.5","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -threads 1 -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -i pipe: -threads 1 -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:"},"619":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -threads 1 -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -i pipe: -threads 1 -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:"},"626":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -threads 1 -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -i pipe: -threads 1 -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:"},"633":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -threads 1 -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -i pipe: -threads 1 -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:"},"640":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -threads 1 -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -i pipe: -threads 1 -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:"},"647":{"cpu":"0.0","cpu_average":"0","mem":"0.2","cmdline":"/usr/lib/ffmpeg/7.0/bin/ffmpeg -threads 1 -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -i pipe: -threads 1 -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:"},"979":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"/bin/sh"},"2286":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"sleep 60"},"2533":{"cpu":"0.0","cpu_average":"0","mem":"0.0","cmdline":"sleep 30s"}},"service":{"uptime":291,"version":"0.15.2-3bda638","latest_version":"0.15.2","storage":{"/media/frigate/recordings":{"total":11323544.2,"used":209209.4,"free":10543587.1,"mount_type":"ext4"},"/media/frigate/clips":{"total":11323544.2,"used":209209.4,"free":10543587.1,"mount_type":"ext4"},"/tmp/cache":{"total":953.7,"used":175.2,"free":778.5,"mount_type":"tmpfs"},"/dev/shm":{"total":512.0,"used":380.7,"free":131.3,"mount_type":"tmpfs"}},"temperatures":{},"last_updated":1753134470},"processes":{"recording":{"pid":346},"review_segment":{"pid":348},"go2rtc":{"pid":101}}}Operating systemDebian Install methodDocker Compose Object DetectorCPU (no coral) Network connectionWired Camera make and modelReolink Video Doorbell Screenshots of the Frigate UI's System metrics pages
Any other information that may be helpfulNo response |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 17 replies
-
|
For your Reolink doorbell falling back to JSMPEG, you need to implement the recommended Reolink doorbell configuration (1). The documentation specifically states that the Reolink doorbell requires a specific setup to work properly with two-way audio and proper live view (1). For the doorbell, you should use the http-flv stream for stability and add a secondary RTSP stream for two-way audio (1): go2rtc:
streams:
your_reolink_doorbell:
- "ffmpeg:http://reolink_ip/flv?port=1935&app=bcs&stream=channel0_main.bcs&user=username&password=password#video=copy#audio=copy#audio=opus"
- rtsp://reolink_ip/Preview_01_sub
your_reolink_doorbell_sub:
- "ffmpeg:http://reolink_ip/flv?port=1935&app=bcs&stream=channel0_ext.bcs&user=username&password=password"The documentation notes that HTTP must be enabled in the camera's advanced network settings (1). To use two-way talk with Frigate, you need to follow the live view documentation (1). The reason your doorbell is falling back to JSMPEG while other cameras work is likely because Frigate intelligently switches between streaming technologies based on network bandwidth, player errors, or required features like two-way talk (2). When MSE fails or when using a camera's two-way talk feature, Frigate attempts to use WebRTC (2). For proper live view functionality, you should also ensure your camera settings follow the recommendations (2):
The http-flv configuration is specifically recommended for Reolink cameras for reliability (1), which differs from your current RTSP-only setup. 📚 Sources: |
Beta Was this translation helpful? Give feedback.
-
|
I've partially figured this one out. The Go2RTC stream name needs to be named the same as the camera. If it isn't, Frigate won't see the stream. This wasn't visible in my config extract because I renamed the streams. Oops. I'm still having an issue where the stream fails to load and falls back to JSMPEG, but going into the settings box and reloading the stream makes it reload fine with HLS. I still can't get 2-way audio working on the doorbell. I don't know what the deal with that is, it works fine on the Reolink mobile app. |
Beta Was this translation helpful? Give feedback.
-
|
I've no idea what the stream loading issue is - that's still under investigation. I did accidentally fix the two-way talk issue: if you use a I've used v0.16's new stream switching feature to allow switching between the Main and Sub streams, and it seems like the higher-resolution Main streams are the ones which have loading issues. Since switching to using the Sub stream for previewing, the stream loading issue has mostly gone away. Given that these are 4K cameras (the DualV2's) and the RLC-810s are 8-megapixel, it seems like it could be a timeout or some kind of stream initialisation issue in the browser (Firefox) when it's dealing with high-res H265(HEVC) streams. (The preview streams are H264 - except the doorbell which uses H264 for both streams and has never really been a problem) |
Beta Was this translation helpful? Give feedback.





I've partially figured this one out. The Go2RTC stream name needs to be named the same as the camera. If it isn't, Frigate won't see the stream.
This wasn't visible in my config extract because I renamed the streams. Oops.
I'm still having an issue where the stream fails to load and falls back to JSMPEG, but going into the settings box and reloading the stream makes it reload fine with HLS.
I still can't get 2-way audio working on the doorbell. I don't know what the deal with that is, it works fine on the Reolink mobile app.