Add homekit camera docs (#12303)

Co-Authored-By: Franck Nijhof <frenck@frenck.nl>
This commit is contained in:
Greg Thornton 2020-05-06 17:13:14 -05:00 committed by GitHub
parent ac2e79e609
commit b18a75febf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -62,6 +62,8 @@ homekit:
- feature: toggle_mute
switch.bedroom_outlet:
type: outlet
camera.back_porch:
support_audio: True
- name: HASS Bridge 2
port: 56332
filter:
@ -171,6 +173,56 @@ homekit:
required: false
type: string
default: '`switch`'
stream_address:
description: Only for `camera` entities. The source IP address to use when streaming to RTP clients. If your Home Assistant host has multiple interfaces, selecting a specific IP may be necessary.
required: false
type: string
default: local IP from Home Assistant
stream_source:
description: Only for `camera` entities. A URL, file or other valid FFmpeg input string to use as the stream source, rather than the default camera source. Required for camera entities that do not natively support streaming (MJPEG). If `-i` is not found in the stream source, it is prepended to construct the FFmpeg input.
required: false
type: string
default: stream source from camera entity
support_audio:
description: Only for `camera` entities. Whether the camera supports audio. Audio is disabled unless this flag is set to `True`.
required: false
type: boolean
default: '`False`'
max_width:
description: Only for `camera` entities. Maximum width supported by camera. Used when generating advertised video resolutions.
required: false
type: integer
default: 1920
max_height:
description: Only for `camera` entities. Maximum height supported by camera. Used when generating advertised video resolutions.
required: false
type: integer
default: 1080
max_fps:
description: Only for `camera` entities. Maximum fps supported by camera. Used when generating advertised video resolutions.
required: false
type: integer
default: 30
audio_map:
description: Only for `camera` entities. FFmpeg [stream selection mapping](https://ffmpeg.org/ffmpeg.html#Stream-selection) for the audio-only stream. Selects the first audio stream in the input stream by default. If your input stream has multiple audio streams, this may need to be adjusted.
required: false
type: string
default: '`0:a:0`'
video_map:
description: Only for `camera` entities. FFmpeg [stream selection mapping](https://ffmpeg.org/ffmpeg.html#Stream-selection) for the video-only stream. Selects the first video stream in the input stream by default. If your input stream has multiple video streams, this may need to be adjusted.
required: false
type: string
default: '`0:v:0`'
audio_packet_size:
description: Only for `camera` entities. RTP packet size used for streaming audio to HomeKit clients.
required: false
type: integer
default: 188
video_packet_size:
description: Only for `camera` entities. RTP packet size used for streaming video to HomeKit clients.
required: false
type: integer
default: 1316
{% endconfiguration %}
@ -386,6 +438,7 @@ The following integrations are currently supported:
| alarm_control_panel | SecuritySystem | All security systems. |
| automation / input_boolean / remote / scene / script / vacuum | Switch | All represented as switches. |
| binary_sensor | Sensor | Support for `co2`, `door`, `garage_door`, `gas`, `moisture`, `motion`, `occupancy`, `opening`, `smoke` and `window` device classes. Defaults to the `occupancy` device class for everything else. |
| camera | Camera | All camera devices. **HomeKit Secure Video is not supported at this time.** |
| climate | Thermostat | All climate devices. |
| cover | GarageDoorOpener | All covers that support `open` and `close` and have `garage` or `gate` as their `device_class`. |
| cover | WindowCovering | All covers that support `set_cover_position`. |
@ -537,6 +590,18 @@ Media Player entities with `device_class: tv` will show up as Television accesso
The volume and play/pause controls will show up on the Remote app or Control Center. If your TV supports volume control through Home Assistant, you will be able to control the volume using the side volume buttons on the device while having the remote selected on screen.
#### Camera video is not streaming
Ensure that the [`ffmpeg`](/integrations/ffmpeg) integration is configured correctly. Verify that your stream is directly playable with `ffplay <stream_source>` or [VLC Media Player](https://www.videolan.org/). If you have changed your camera's entity configuration, you may need to [reset the accessory](#resetting-accessories).
#### Camera audio is not streaming
Make sure `support_audio` is `True` in the camera's entity configuration.
#### HomeKit stalls or devices respond slowly with many cameras
HomeKit updates each camera snapshot sequentially when there are multiple cameras on a bridge. The HomeKit update methodology can lead to the app stalling or taking a while to update. To avoid this problem, limit each `HomeKit Bridge` to 6 cameras and create a new `HomeKit Bridge` for additional cameras.
#### Resetting accessories
On Home Assistant `0.97.x` or later, you may use the service `homekit.reset_accessory` with one or more entity_ids to reset accessories whose configuration may have changed. This can be useful when changing a media_player's device class to `tv`, linking a battery, or whenever Home Assistant adds support for new HomeKit features to existing entities.