2-way Audio w/ Reolink PoE Doorbell

Guys,

I still have some issues when trying to use Frigate Card to use 2wayaudio on my Reolink Doorbell.

This is my Frigate Config:

go2rtc:
  webrtc:
    candidates:
      - 192.168.178.150:8555
      - stun:8555
  streams:
    doorbell:
    - "ffmpeg:http://192.168.178.140/flv?port=1935&app=bcs&stream=channel0_main.bcs&user=xxx&password=xxx#video=copy#audio=copy#audio=opus"
    - rtsp://xxx:[email protected]:554/h264Preview_01_sub
    doorbell_sub:
    - "ffmpeg:http://192.168.178.140/flv?port=1935&app=bcs&stream=channel0_ext.bcs&user=xxx&password=xxx"    
  # ffmpeg:
  #   bin: ffmpeg
  #   volume: "-af \"volume=30dB\""    

cameras:
  doorbell:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/doorbell
          input_args: preset-rtsp-restream
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/doorbell_sub
          input_args: preset-rtsp-restream
          roles:
            - detect

And thatā€™s my Frigate Card config:

type: custom:frigate-card
cameras:
  - live_provider: go2rtc
    go2rtc:
      modes:
        - webrtc
        - mse
      stream: doorbell
    camera_entity: camera.doorbell
menu:
  buttons:
    microphone:
      enabled: true
      type: toggle
      priority: 100
    cameras:
      enabled: false
    substreams:
      enabled: false
    timeline:
      enabled: false
    fullscreen:
      enabled: false
    media_player:
      enabled: false
    mute:
      enabled: true
      priority: 84
  position: bottom
  alignment: right
live:
  microphone:
    always_connected: false
  preload: true
image:
  zoomable: false

Am I missing something?
From my MacBook sometime I can see the Microphone icon (not always), but from my Android Tablet I never see it.

And even if I click on the microphone icon on my MacBook (it also ask me for pic permissions) no audio comes from the doorbell.

I too have had many problems with the activation of the microphone icon. For me it worked to add this line in the Frigate configuration file:

ui:
  live_mode: webrtc
2 Likes

Hey there, a question for everyone that already got this working. whatā€™s the delay on the backchannel? for me, everything iā€™ve tried seem to make my streams from the doorbell to the computer go just fine (<500ms delay) but the delay for the audio from my mic to the doorbell is MASSIVE (>2000ms)
is this normal for this configuration or do yours work better? pinging @peveleigh and @mobile.andrew.jones who seem to have this working

I donā€™t have the 2 way audio running, so I am afraid I am unable to help here.

Just got it working. The delay is about 4 - 5 seconds over 5G (from saying something to actually hear it from doorbell), which means it is mostly useless.

I spent two days to get this working, but now I think I will have to use app for two-way. Anyone else got any clues?

Is the delay that much just for the backchannel or both ways? @strikher

can you share your config file please? What did it for you that it works now?

Thank you peveleigh for the initial post. Finally I got my reolink workingā€¦ but only for few hours - than it will suddenly freeze - no error shown.
I want to use it on a family hub fridge screen - unfortunatly with Tizen OS causing all kinds of strange issues. But usually it is or is not working there ā€¦ but crash / freeze after few hoursā€¦ idea? The default reolink integration works - but only with this once per 10 second refresh.

What IS your delay of the Video Stream? I tried it with frigate and RTC. But i Always have a delay of around 5 Seconds. In the reolink App and in the device IP everything IS fine

Is the wireless version of the Reolink doorbell different, or did something break in a firmware update? Iā€™ve entered in my go2rtc and webrtc configs exactly as the original post, but I canā€™t get any audio working. I access my HA strictly through the cloud config for secure access, and when I open up the camera stream I can see the mic icon on my phone activate, but no audio in either direction. I can use the Reolink app with 2-way audio just fine so the doorbell itself isnā€™t the issue

This is what I had to setup my go2rtc streams as to get audio out of my doorbell using Frigate:

doorbell:
  - "ffmpeg:rtsp://user:[email protected]/h265Preview_01_main#video=h264#audio=copy#audio=opus"
doorbell_sub:
  - "ffmpeg:rtsp://user:[email protected]/h264Preview_01_main#video=h264#audio=copy#audio=opus"

This seemed to work as http+flv had stopped a few weeks back.

Thanks, that format at least got 1-way audio working, I can receive audio from the doorbell to my phone. But the other way still isnā€™t working, the doorbell will not play any audio unless I use the Reolink app. FYI this is what I have in my webrtc card

type: custom:webrtc-camera
ui: true
muted: false
streams:

  • url: reolink_doorbell
    mode: webrtc
    media: video,audio
    name: :mute:
  • url: reolink_doorbell
    mode: webrtc
    media: video,audio,microphone
    name: :speaker:

Same issue here - I get audio from doorbell no problem - but the other way aroundā€¦ No chance. Anyone got it working finally?

@edit:

I have managed to get ā€œmicrophone iconā€ visible in frigate card. But still no audio coming out of the camera/doorbell.

I have downgraded my firmware to v3.0.0.2033 as per suggestion in here:
Config help for Reolink doorbell (Frigate + HA integration at the same time) Ā· blakeblackshear/frigate Ā· Discussion #7791 Ā· GitHub and [Camera Support]: Troubleshooting 2-way audio with Reolink Doorbell Ā· blakeblackshear/frigate Ā· Discussion #10619 Ā· GitHub . Config taken from the second one.

Iā€™ve found firmware here:

@edit2:
Itā€™s working with webrtc card:

type: custom:webrtc-camera
url: doorbell
media: video,audio,microphone

@edit3:

Now itā€™s also working with frigate card :smiley:

1 Like

worked for me too

Did you do anything to fix this? I am using frigate card. I have downgraded but am running into the issue of still not passing audio from my mic on my phone or pc to the doorbell. It works doesnā€™t explain how, do you mind elaborating please?

Which is better to use Frigate or WebRTC card? I have only 1 camera to stream (doorbell), so Iā€™m guessing the latter is better suited for me?

if you just care about live view then both are similar. The frigate card offers more features when it comes to historical views of activity and recordings

1 Like

This has been driving me crazy. So far I have not been able to get a camera stream to display properly. I am getting a message that says ā€œNo frames have been received, check error logsā€.

ERROR : reolink: Unable to read frames from ffmpeg process.

I was looking at this YouTube clip and based my config on it. https://youtu.be/upXyBVMR4RM?si=3ffDPE7giv6WHaT1

Can someone post their working config file? If anyone knows of another YouTube clip that may help, please let me know.

Tried that and audio works fine, slight delay, but canā€™t get any mic button to show up?

Copy/pasting my comment from the GitHub issue here for visibility:

Hi All, using the latest version (1.9.2) of go2rtc, I have managed to use the 2 way talk functionality in QuantumEntangledAndy/neolink with the exec source in go2rtc. Instead of approx 3 seconds, my 2 way audio delay is close to the reolink app now.

Here is the script Iā€™m using (neolink_talk.sh):

#!/usr/bin/env bash

ffmpeg -fflags nobuffer -f alaw -ar 8000 -i - -f wav - | ./neolink talk Doorbell -c config.toml --volume=1.0 -m -i "fdsrc fd=0"

go2rtc.yaml:

streams:
  doorbell_sub:
  - ffmpeg:http://doorbell_ip/flv?port=1935&app=bcs&stream=channel0_sub.bcs&user=admin&password=PASS#video=copy#audio=opus
  - exec:/config/neolink/neolink_talk.sh#backchannel=1

Iā€™m using it now with frigate, but that involves installing gstreamer, etc into the docker container, as well as using the latest go2rtc instead of the included v1.8.4. An easier way to test is using Alexā€™s WebRTC card/integration and setting media: video,audio,microphone.

The ffmpeg pipe into neolink is faster than using fdsrc fd=0 ! audio/x-alaw,rate=8000,channels=1 in the neolink command from my testing. Iā€™m sure there is a gstreamer pipeline option which will make it just as fast, but I donā€™t know what it is. Please tell me everything wrong with the command above and help make it better :slight_smile:

2 Likes