
* 🔥 Removes octopress.js * 🔥 Removes use of root_url var * 🔥 Removes Octopress generator reference from feed * 🔥 Removes delicious support * 🔥 Removes support for Pinboard * 🔥 Removes support for Disqus * 🔥 Removes support for Google Plus * ↩️ Migrate custom after_footer to default template * ↩️ Migrate custom footer to default template * ↩️ Migrate custom header to default template * 🔥 Removes unused template files * 🚀 Places time to read directly in post template * 🚀 Removes unneeded capture from archive_post.html template * 🔥 🚀 Removes unused, but heaving sorting call in component page * 🚀 Merged javascripts into a single file * 🔥 Removes more uses of root_url * 🚀 Removal of unneeded captures from head * 🔥 🚀 Removal of expensive liquid HTML compressor * 🔥 Removes unneeded templates * 🚀 Replaces kramdown with GitHub's CommonMark 🚀 * 💄 Adds Prism code syntax highlighting * ✨ Adds support for redirect in Netlify * ↩️ 🔥 Let Netlify handle all developer doc redirects * ✏️ Fixes typo in redirects file: Netify -> Netlify * 🔥 Removes unused .themes folder * 🔥 Removes unused aside.html template * 🔥 Removes Disqus config leftover * 🔥 Removes rouge highlighter config * 🔥 Removes Octopress 🎉 * 💄 Adjust code block font size and adds soft wraps * 💄 Adds styling for inline code blocks * 💄 Improve styling of note/warning/info boxes + div support * 🔨 Rewrites all note/warning/info boxes
2.8 KiB
title, description, logo, ha_category, ha_release, redirect_from
title | description | logo | ha_category | ha_release | redirect_from | |||
---|---|---|---|---|---|---|---|---|
FFmpeg Motion Binary Sensor | Instructions on how to integrate an FFmpeg-based motion binary sensor | ffmpeg.png |
|
0.27 |
|
The ffmpeg
platform allows you to use any video feed with FFmpeg for motion sensors in Home Assistant.
If the ffmpeg
process is broken, the sensor will be unavailable. To control the ffmpeg process of sensor, use the service ffmpeg.start, ffmpeg.stop, ffmpeg.restart.
Motion
FFmpeg doesn't have a motion detection filter, but can use a scene filter to detect a new scene/motion. You can set how much needs to change in order to detect motion with the option 'changes', the percent value of change between frames. If you want a really small value for 'changes', you can also add a denoise filter.
Configuration
To add FFmpeg with motion detection to your installation, add the following to your configuration.yaml
file:
# Example configuration.yaml entry
binary_sensor:
- platform: ffmpeg_motion
input: FFMPEG_SUPPORTED_INPUT
{% configuration %}
input:
description: An FFmpeg-compatible input file, stream, or feed.
required: true
type: string
name:
description: Override the name of your camera for the frontend.
required: false
type: string
initial_state:
description: Start ffmpeg
with Home Assistant.
required: false
type: boolean
default: true
changes:
description: How much needs to change between two frames to detect it as motion, value in percentage (a lower value is more sensitive).
required: false
type: integer
default: 10
reset:
description: The time to reset the state after no new motion is detected.
required: false
type: integer
default: 20
repeat:
description: How many events need to be detected in repeat_time in order to trigger a motion, 0 repeats means deactivated.
required: false
type: integer
default: 0
repeat_time:
description: The span of time repeat events need to occur in before triggering a motion, 0 seconds means deactivated.
required: false
type: integer
default: 0
extra_arguments:
description: Extra options to pass to ffmpeg
, e.g., video denoise filtering.
required: false
type: string
{% endconfiguration %}
To experiment with values (changes/100 is the scene value in ffmpeg
):
$ ffmpeg -i YOUR_INPUT -an -filter:v select=gt(scene\,0.1) -f framemd5 -
If you are running into trouble with this sensor, please refer to the troubleshooting section.
Tips
- Use motion only in a custom area with crop filter:
extra_arguments: -filter:v "crop=100:100:12:34"