Amcrest IP Camera Component Enhancements - PTZ control and audio streaming

Interesting, would love to know what you’re replacing the camera motion sensors with.

I can try later tonight, if I have time. Noticed two “amcrest:” in the config. That a typo?

I just found due to trees & shadows, even inside, that getting reliable motion detection from the cameras was very difficult. Maybe I just don’t know enough about how to set them up, although I did try a lot of different things. So I ended up buying combination motion, light, temperature, etc. Z-Wave sensors (Aeotec and Zooz) and I use those instead for motion detection. Not perfect either, but good enough for now.

Yep, thanks, fixed it. BTW, you can see the proposed doc page here.

@pnbruckner

Good to know, I may check those out. Ideally, I’d like a solid motion sensor off battery on Wifi. I have the hue sensor in my house now and they’re “ok”.

Every upgrade seems to break my camera. Having this issues now. Any help would be great!

EDIT: Found issue. Service was renamed to service: amcrest.goto_preset

Error while executing automation automation.camera_wall. Service not found for call_service at pos 1: (ServiceNotFound(...), 'Service camera.amcrest_goto_preset not found')

- id: '1553613112159'

alias: Camera Wall
trigger:

  • entity_id: device_tracker.
    from: not_home
    platform: state
    to: home
    condition: []
    action:
  • data:
    entity_id: all
    preset: ‘4’
    service: camera.amcrest_goto_preset
  • delay: 00:00:30
  • data:
    entity_id: switch.camera
    service: switch.turn_off

Does anyone know how to call this from node-red?

  - data:
  entity_id: all
  preset: '1'
  service: amcrest.goto_preset

In the picture you have amcrest_goto_preset instead of amcrest.goto_preset.

EDIT: Oh, you probably need amcrest for domain and goto_preset for service.

No option for domain of amcrest or service of goto_preset

I do not see amcrest as a domain but others do? Am I missing something?

You got me. I don’t use node-red so I have no idea. Other than, is that a combo box? I.e., can you just type in amcrest???

I got it working. I reinstalled amcrest and restarted both HA and node-red so its working. Thank you

1 Like

FYI, two recent PRs are now available in HA release 0.95.0b0:

23986 Add control of Amcrest indicator light
24262 Improve amcrest error handling and bump amcrest package to 1.5.3

Hi

Can you cast amcrest video feed to google home hub using home assistant yet?

sure can! Been doing exactly that for a few months now.

Can I please have the code your are using for that. Mine will try to cast but nothing shows

Amcrest streaming also works nicely for my Sony Android TV and Vizio cast-enabled TV as well as the Google Home Hub.

action:  
  - service: camera.play_stream
    data:
      entity_id: camera.north_drive_camera
      media_player: media_player.master_bedroom_display
script:
  camera_test:
    sequence:
      - service: camera.play_stream
        data:
          entity_id: camera.amcrest_camera
          media_player: media_player.lounge_display

.

amcrest:
  - host: 192.168.1.xx
    username: xxx
    password: xxxxx
    binary_sensors:
      - motion_detected
      - online
    stream_source: snapshot
    sensors:
      - ptz_preset

The home hub tries to display the stream, but it doesn’t work.

The funny thing is the IP address is wrong. Home assistant is 192.168.1.99 and the camera is 192.168.1.90. The address 172.18.0.9 is completely wrong (is this a docker internal network ip address???).

i fixed the IP address problem using

http:
  base_url: xxxxxxxxxxx

however the google home hub tries to display the stream but can’t it.
It says “Playing Default Media Receiver…” then after 1-2 seconds it has a black screen with the cast icon in the centre.

also have tried using the amcrest via rtsp.

camera:
  - platform: generic
    name: Babycam2
    still_image_url: http://xxxxxxx:[email protected]/cgi-bin/snapshot.cgi?1
    stream_source: rtsp://xxxxx:[email protected]:80/cam/realmonitor?channel=1&subtype=1&authbasic=[AUTH]

same problem.

can you please show me the yaml entry for your camera.north_drive_camera please.

I think that specifying “snapshot” as your stream_source is the problem. Once it is set to “rtsp” the state of the camera should then be listed as “streaming”.

amcrest:
  - host: 192.168.x.xxx
    name: "North Drive Camera"
    username: !secret cam_id
    password: !secret cam_pw
    resolution: high
    stream_source: rtsp
    port: 80

still doesn’t work

amcrest:
  - host: 192.168.1.90
    name: "Babycam"
    username: xxxxx
    password: xxxxx
    resolution: high
    stream_source: rtsp
    port: 80

script:

  stream_babycam:
    sequence:
      - service: camera.play_stream
        data:
          entity_id: camera.babycam
          media_player: media_player.lounge_display

state for media_player.lounge_display (google home hub) when i try to play stream.

volume_level: 0.8200000524520874
is_volume_muted: false
media_content_id: http://192.168.1.99/api/hls/2d2500ab87f6fcaf4f3fa6071882fd8968cea84d99a47e896bb60949cdd19f01/playlist.m3u8
media_position: 0
media_position_updated_at: 2019-08-14T08:00:51.730762+00:00
app_id: CC1AD845
app_name: Default Media Receiver
friendly_name: Lounge display
supported_features: 21391