Amcrest Doorbell Two-Way Audio & Alerts Configuration Tutorial w/ Home Assistant

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 ม.ค. 2023
  • Lots of you have been asking for a more details step by step configuration to get two-way audio and alerts working with the Amcrest AD410 Doorbell & Home Assistant. In this video, I walk through the steps needed to complete the setup.
    GitHub Link With Detailed Instructions:
    github.com/rogerquake/home_au...
    Sponsor: TurboDocx
    www.turbodocx.com/
    HomeAssistant & Doorbell Two-Way Audio
    ---------------------------------------------------------------------------
    1) Create SSL Certificates. Using MKCert to create a Root and server certificate to allow for secure access. This is required to allow for two-way audio in a browser.
    2) Reverse Proxy. Configure NGINX to front-end access Home Assistant and Go2RTC. This allows both services to be accessed securely over SSL (443).
    3) Modify Doorbell Audio Codec. Using the Amcrest API, modify the audio codec used on the doorbell from ACC to G.711A. This allows audio from the doorbell to be streamed when using WebRTC for real-time video playback.
    3) Create Go2RTC HTML Page. Just accessing the Go2RTC WebRTC.HTML page for two-way audio won't allow the microphone access. We will need to create a new html page hosted on Home Assistant that is accessed from an -frame card. This will allow the microphone to work when accessing the dashboard.
    4) Create Dashboard with i-Frame Card. Since two-way audio does not currently work through a regular card, an i-frame card is used to include a website created on HomeAssistant that redirects to the Go2RTC WebRTC website.
    Sending Audio Alerts through Home Assistant
    ---------------------------------------------------------------------------
    1) Record & Convert Audio Alert File. The audio file used for alerts must be converted to a specific audio format (G.711A) or else it will be be unable to be played through the doorbell.
    2) Upload Audio Files. Uploading the audio files for alerts to Home Assistant. This can be done through the file editor inside the Home Assistant website.
    3) Create Bash Script. To play the audio file through the doorbell, a bash script will be created that uses the curl command to send a GET request to the doorbell. This command also uploads the audio file stored on Home Assistant to the doorbell.
    5) Create Home Assistant Configurations. Create the shell command & script items to allow for the bash script to be executed from a button.
    6) Update Dashboard. Create a button that executes the script that points to the bash script.
    Links:
    - MKCert: github.com/FiloSottile/mkcert
    - Amcrest AD410: amcrest.com/4mp-wifi-camera-d...
    - Go2RTC: github.com/AlexxIT/go2rtc
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 25

  • @sgtogre
    @sgtogre ปีที่แล้ว +1

    Adding this to my list to do. Thanks for the detailed upload!

    • @rogerstechtalk
      @rogerstechtalk  ปีที่แล้ว

      Your welcome! Hope you get it all setup soon.

  • @jimdavis3749
    @jimdavis3749 ปีที่แล้ว

    Much appreciated, excellent walkthur and detailed explanations of setup and configuration. Got the bulk of it setup and now just doing the fine tuning. TY very much!! Subcribed

  • @CarAudioInc
    @CarAudioInc ปีที่แล้ว

    thanks man, great stuff

  • @robdunn8832
    @robdunn8832 ปีที่แล้ว +2

    Is anyone having issues with the sent audio files either being too fast or very distorted? Could you explain what settings you used to record the audio in audacity. I have tried recording in 44100, 48000 and 8000 Hz and also changing the bit rate, with no change, the output from the doorbell is always heavily distorted or severely sped up. I have tried using both SoX and ffmpeg, no change.

    • @Liveforlaughs76
      @Liveforlaughs76 11 หลายเดือนก่อน

      I have this issue as well

    • @CoolRandomthing
      @CoolRandomthing 9 หลายเดือนก่อน

      Same issue

    • @MichaelMerickel
      @MichaelMerickel 7 หลายเดือนก่อน

      From watch the video it’s clear the curl command is uploading the file at exactly the rate that the doorbell is expecting to play the recording. So make sure that the rate in the file matches the rate it’s being uploaded with the bash script.
      I haven’t tested if it’s possible to change this restriction at all.

    • @robdunn8832
      @robdunn8832 7 หลายเดือนก่อน

      As I stated I tried recording at 8000hz which corresponds to the 8k in the curl command, so this is not the solution. I also tried changing the command to match the other speeds with no luck

  • @umba9
    @umba9 ปีที่แล้ว

    Hey man, amazing work! This is the first I've seen anyone succeeding in getting 2-way audio to work on Home Assistant without using a SIP server.
    Any idea if this would work with another doorbell through ONVIF-T? Looking at the Reolink POE Doorbell (Different Power supply ratings where I'm from).

    • @rogerstechtalk
      @rogerstechtalk  ปีที่แล้ว

      Not sure sadly! There are so many different doorbells to test, wish I had the time.

  • @mercuryin1
    @mercuryin1 7 หลายเดือนก่อน

    Hi mate, I just get 401 error all the time. User and pass are ok. Any ideas ?

  • @TheBlackBeltPanda
    @TheBlackBeltPanda ปีที่แล้ว

    Just set this up today, along with Frigate for recording events. For some reason, my doorbell button seems to have stopped working after setting up Go2RTC, though. Any idea what could cause that?
    Edit: Figured it out: I had mixed up the 2-way audio and 1-way audio streams, so frigate grabbed the 2-way stream which made it think there was a call open.

    • @rogerstechtalk
      @rogerstechtalk  ปีที่แล้ว +1

      Glad you figured it out! I mention it in the video, but you really need to play around with it and see it broken before the required config clicks.
      I also just recently added the doorbell video feed to my Frigate for recording. Before that, I was just using it to grab a cleaner shot on my tablets spread around the house when someone was at the door video wise. I didn't talk about it in the video, but the wifi signal on the doorbell doesn't seem to be the best, most likely since it's outside. The video isn't choppy due to the bad wifi, but Frigate loses signal every so often according to the log file. I have mine on 2.4ghz now, but I've been meaning to try 5ghz to see if that improves anything.

    • @TheBlackBeltPanda
      @TheBlackBeltPanda ปีที่แล้ว

      @@rogerstechtalk You can get wifi scanner apps for your phone that'll show how many overlapping channels there are for both 2.4ghz and 5ghz. I used that to pick the least congested channels for both my networks and it helped a lot all around. Haven't had any connection issues after that. =)

  • @CoolRandomthing
    @CoolRandomthing 9 หลายเดือนก่อน

    Can you share your audio files?

  • @enormousearl8838
    @enormousearl8838 5 หลายเดือนก่อน

    Could anyone help with using the postAudio API using Python?

  • @0x0081
    @0x0081 ปีที่แล้ว

    Have you tested this in the iOS companion app? I wonder if the will work there

    • @MichaelMerickel
      @MichaelMerickel 7 หลายเดือนก่อน

      The go2rtc endpoint would need to be publicly routable.

  • @Cr4z33_YT
    @Cr4z33_YT หลายเดือนก่อน

    Does anybody have an idea on where is the NGINX addon stored nowadays?
    It looks like it's different now as I can't find it nowhere (needless to say that it was not in /usr/share/hassio/share/nginx_proxy/).
    Btw I am trying to get this working for a Dahua VTO doorbell. :)

  • @Kostek001
    @Kostek001 ปีที่แล้ว +1

    It's possible to automaticly unmute by adding this lines to the webrtc.html
    var video = document.getElementById("video");
    video.oncanplaythrough = function () {
    video.muted = false;
    }

    • @rogerstechtalk
      @rogerstechtalk  11 หลายเดือนก่อน

      I’ll have to check it out!

  • @davidkemp3408
    @davidkemp3408 ปีที่แล้ว

    I appreciate the tutorial very much. However, I seem stuck. I cannot get the sounds to work. I followed your tutorial step by step and come up with the following message in my logs: 2023-04-18 13:28:37.144 ERROR (MainThread) [frontend.js.latest.202304111] IPADDRESS/hacsfiles/button-card/button-card.js:547:3887 TypeError: 0 is read-only
    I am also having trouble with the simple-clock-card displaying:
    Custom element doesn't exist: simple-clock-card
    Both the button-card.js and the simple-clock-card.js as in my www directory in a hacs files folder.
    Thank you!