-
Notifications
You must be signed in to change notification settings - Fork 566
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reolink Video Doorbell discussion #331
Comments
You need to enable trace logs for rtsp and send that here, looks like they changed the rtsp format from what I saw back in February new one is here:
|
@NickM-27 Is this the log you mean? I traced with Home assitant when opening the links.html in the go2rtc web ui.
|
No, the log I mean is the log I posted above. |
Where can I find the log? |
My bad looks like those logs are them, but they don't show the third audio track like mine do. Maybe you didn't copy all of them? |
ah ok now I get it, this log seams to be complete, it contains a third audio track:
|
So you are seeing the same thing I am which is that when go2rtc requests the backchannel audio, the doorbell responds with |
Yes the same for me, I tried to play a sound file via curl and got: |
I wonder if there is a setting or special permission that needs to be enabled in settings |
I am trying the same thing with scrypted and looks like it's getting further. However, it is still not working. This is the trace from scrypted.
|
How do you have configured your go2rtc.yaml in Home Assistant ? go2rtc.yaml reolink_1: ffmpeg:rtsp://admin:[email protected]:554/Preview_01_sub#audio=opus#video=h264#backchannel=0 log: 2 ways audio doesn't work either but I cannot get a verbose log like you have, how did you manage to get all these informations in your log ? configuration.yaml logger: |
@spawn451 you can't use ffmpeg, that does not support 2 way audio |
@NickM-27 But if I don’t use ffmpeg and for example set this : |
@spawn451 you need to set it up like this: streams:
reolink:
- rtsp://admin:[email protected]:554/Preview_01_sub
- ffmpeg:reolink#audio=opus |
@NickM-27 Thanks! I’m gonna change my config. |
Scrypted is updated and 2-way audio is working with the ONVIF plugin |
This is the commit that added support koush/scrypted@ec3e16f |
@luisiam could you post a trace from scrypted with 2-way audio working? I want to compare it with the log you posted above to see if there are any differences. |
If you check go2rtc's commit history, there's a recent patch to fix
the issue.
…On Wed, Apr 12, 2023, 5:01 PM kevdliu ***@***.***> wrote:
@luisiam <https://github.com/luisiam> could you post a trace from
scrypted with 2-way audio working? I want to compare it with the log you
posted above to see if there are any differences.
—
Reply to this email directly, view it on GitHub
<#331 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAILPFAVNRE6QKNFETMJJITXA4X45ANCNFSM6AAAAAAWSFVP4Q>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
@rbray89 more work is needed, the doorbell does not play audio in my testing |
It could be a transcoding issue. Reolink only uses AAC, and Opus/PCM is used by webrtc. |
@rbray89 that is also incorrect. If you check the sendonly audio channel on the reolink doorbell, it is PCMA/8000 which you can see from the RTSP DESCRIBE response in an earlier comment #331 (comment) |
Here it is
|
@NickM-27 Not sure if helpful but Reolink just released a new build |
@SilverHazeLazers any idea where to get that build? as far as I can tell, reolink has removed the doorbell firmware builds from their website. Perhaps that is a sign that things are not ready yet. |
… On Thu, Apr 13, 2023, 6:42 AM Nicolas Mowen ***@***.***> wrote:
@SilverHazeLazers <https://github.com/SilverHazeLazers> any idea where to
get that build? as far as I can tell, reolink has removed the doorbell
firmware builds from their website. Perhaps that is a sign that things are
not ready yet.
—
Reply to this email directly, view it on GitHub
<#331 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAILPFBWDVMN3YAYD5HCWSTXA7YDRANCNFSM6AAAAAAWSFVP4Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Just tried it, seeing some errors in go2rtc:
|
@NickM-27 Are you sure this logs from go2rtc? I don't know what is |
I agree it is a weird format and doesn't match go2rtc logs, but it definitely came from the process running go2rtc and it happened right when I tried to play the two way talk with the doorbell. That being said, I did a handful of refreshes trying to get it to work so it may not be related to the reason two way talk isn't working with the doorbell. |
Hello, it's a pity that you can't help me. I'm getting the following error messages which are caused by your configuration. |
I am having this issue. It seems like there should be a working setup marked and the issue closed, and perhaps the wiki updated. |
As far as two way audio goes there isn't much to it in go2rtc it self. Most if the issues are outside of go2rtc. go2rtc you need a WORKING webrtc config and you NEED to be transcoding the audio to opus for that.. You can chose to use the FLV or rtsp stream.. I prefer the rtsp stream.
Camera.. The camera NEEDS to be on a WORKING firmware. (several older releases have BROKEN 2 way audio). The build in auto update LIES, go download from https://reolink.com/ca/download-center/
There is still going to be a delay but make SURE you set your I-frame Interval to 1x to reduce it. Last thing your front end NEEDS to be running HTTPS (there are workarounds) but in a practical sense you need to have setup HTTPS. This is a REQUIREMENT for Webrtc in all modern web browsers to enable the mic so you need to do this if you want it to work across multiple devices and browsers. At this point frigate 0.15 beta (maybe 0.14) native UI setup with HTTPS should work for two way audio no additional config. In home assistant WITH a working HTTPS config you can use the frigate custom card This card has A LOT of options, I have it connect directly vita the frigate option with the go2rrtc live_provider. I have this on a dedicated View in Panel (single card) mode just for two way audio.
There are other variations that I am sure work. This configuration has about a 2-4 second audio delay however. |
So trying many combinations of configs found on threads like this one... I managed to get microphone working. But audio back from the doorbell cam did not work. That was with Neolink and an But now with your example... I get the opposite audio. Thank you for the detailed examples. I had most of it, but of course, code hinges on the small details. I did not have
|
Well, I thought it worked. Maybe I was too close and was just hearing the audio from my phone echo back after the 2-4 second delay. |
If you are going to test it alone it is best to do it with headphones or something so the mic / speaker of both device is not creating a feedback loop. If using a browser you must give the page permission to use the mic.. |
Okay, so my go2rtc config:
... tried either/or ffmpeg lines... same result But the difference seems to be in the frigate hass card:
... Gives a working Android microphone to Doorbell speaker. But not the other direction. While...
... Gives a working Doorbell microphone to Android speaker. But not the other direction. The rest of the card config stays the exactly as your example and remains the same as I alternate the I guess a workaround that seems to work... two separate cards, with different camera configs. I can get 2-way audio working. I can fiddle around so that one card has the mic button and the other has the mute/speaker button, and then figure out how to get one of the cards not have any video so it looks better. I am on the latest dermotduffy/frigate-hass-card, and maybe it's a bug with the card. |
So I don't know what to tell you that config works BOTH on iOS home assistant app AND on Windows Desktop in Chrome for me. The critical parts are actually the parts that enable the mic as that is what didn't work for me. Go try on another device WITH a working mic. Also did you CONFIRM you are on a correct working firmware for the doorbell? Are you on Firmware Version: v3.0.0.4110_2410111119 or something else. As I stated out of the 4-6 firmware's since the doorbell was released I think two way audio has worked in 2 maybe 3 of them. This part of the HA customer card config is VERY important.
|
Yes, that is my firmware for the doorbell.
I had issues with auto_unmute not being a valid config but seems to be accepted now. What version of the card are you using that works? I am using 6.1.2 version of the frigate-card, 0.15.0-beta4 of the frigate addon, and version 5.6.0 of the frigate integration. Also HA v12.5 and the HA Android companion app v2024.12.1-min |
The mic does work on this device. But only if the card is set to the camera entity rather than the frigate camera name. But then the audio does not return FROM the doorbell. I've tried a Chromium based browser on the phone, same issues. |
Not going to continue troubleshooting here but it is possible that you have multiple instances of the card fighting for mic control. Just a theory, I specifically made the card a separate view so it is only presented with mic enabled in one place. |
Yes, I put it in it's own dashboard view too. Mic control conflicts would not explain how the mic works with when I have a working card with this config in another dashboard that isn't loaded:
But thanks for the help. I've opened a ticket for the frigate-hass-card. Can you confirm that your versions match mine?? |
I am running v6.1.2 and I confirmed my config was still working before I posted. - webrtc is going to FORCE webrtc mode which may be required on android? otherwise go2rtc should auto pick I believe. ONly other thing I can think to check if you are running this within frigate is if the frigate integration has the "Use Frigate-native WebRTC Support" advanced option checked. I have this turned off and might explain why camera_entity: camera.cam_doorbell1 even works for you. |
I think you're right. It's the WebRTC that makes the microphone on the Android app work, but simultaneously breaks the audio coming from the doorbell. So if I have the card config:
I get audio only from Doorbell to Phone. But if the config is:
... then the audio from the Doorbell to the Phone stop... and the Phone mic works to send audio to the Doorbell. |
"Use Frigate-native WebRTC support" was always off for me. Turning it on didn't seem to make a difference. Also, I need more info about:
How does this play into it. Is there a separate port or something I need in my frigate config or addon/docker config? |
port 8555 needs to be open to your go2rtc instance for webrtc to work this needs to be available internally and externally port forwarded. That is why I in BOLD stated you need a WORKING webrtc config in go2rtc https://github.com/AlexxIT/go2rtc?tab=readme-ov-file#module-webrtc |
Hmm... well this is a local network only config. Frigate Addon handles the WebRTC port of udp/tcp:8555, and it is opened. How do I verify that WebRTC is configured correctly? Is there a test or log errors I should expect to see? |
You will need to add your frigate/go2rtc HOST IP to the candidates list, stun is a catch all that requires external access. If you go to the go2rtc admin interface you can launch a webtc only url if it doesn't work it isn't working. |
go2rtc admin interface ? |
are you running frigate or bare go2rtc? The go2rtc web interface is on port :1984 which will not be enabled by default in a frigate install. from there you can go to the links section of any stream you have configured and specifically test them for example this link would force a webrtc connection to my doorbell stream using ONLY go2rtc. http://192.168.102.30:1984/stream.html?src=doorbell&mode=webrtc |
Frigate addon, includes go3rtc v1.9.2 built in. I've tried updating it to 1.9.7. I'll see if I can get to the web interface. |
https://docs.frigate.video/guides/configuring_go2rtc/
Looks like you will need to go to the addon screen and enable the port there.. |
Okay, I'm in. It seems to already have stun and my local IP properly as webrtc candidates in the go2rtc config, without needing it in the frigate.yml. |
At some point during my testing, without the I'm trying to get a chromium or firefox based browser, on android or linux, to show the microphone when using the stream link |
To get the mic to work you would need to have it behind https, I was mostly interested if the webrtc link worked AT ALL directly to eliminate go2rtc as the cause. I have never used it but I believe there is a way to turn off the SSL requirement in chrome for testing, I think AlexxIT posted it earlier in the thread. If webrtc is working I would test it from the frigate interface assuming you have that behind https internally. |
It sure seems like WebRTC is working fine. Especially since when I add
What exactly do you mean? The Frigate interface live view? I don't usually get any audio in that. Only in clip / recording playback view. |
I am on frigate 0.15 beta but when I go to the frigate web interface via my https proxy in the top right I have the mic and speaker controls I note this as my go2rtc example config works both in frigates web UI as a client and via the home assistant card on windows chrome. We are speaking on an issue in the go2rtc repo and I am trying to provide different ways to confirm the issue on your end but I am fairly sure it is not a go2rtc issue at this point. |
to test absolutely DIRECT with JUST go2rtc and chrome (replace 192.168.102.30 with your instances IP) chrome://flags/#unsafely-treat-insecure-origin-as-secure Then http://192.168.102.30:1984/webrtc.html?src=doorbell&media=video+audio+microphone Grant access to the mic, it should be blue and ON all the time then Make sure to un mute the video and be sure it is playing.. it seems to audo pause. I did find mic volume VERY faint but it did work this way. |
The latest FW 1859 enables 2-way audio via ONVIF profile T. I checked with Happytimesoft ONVIF client and 2-way audio works. Is there any chance to get it working in go2rtc?
Output from info page
The text was updated successfully, but these errors were encountered: