2022-12-07 16:47:40 +03:00
|
|
|
#!/command/with-contenv bash
|
|
|
|
|
# shellcheck shell=bash
|
2025-09-24 13:33:52 +03:00
|
|
|
# Start the Frigate service (with optional fake mode for legacy behaviour)
|
2022-12-07 16:47:40 +03:00
|
|
|
|
2023-01-19 02:50:51 +03:00
|
|
|
set -o errexit -o nounset -o pipefail
|
|
|
|
|
|
2025-09-24 13:33:52 +03:00
|
|
|
if [ "${DEV_AUTOSTART_FRIGATE:-1}" != "1" ]; then
|
|
|
|
|
# Tell S6-Overlay not to restart this service
|
|
|
|
|
s6-svc -O .
|
|
|
|
|
|
|
|
|
|
while true; do
|
|
|
|
|
echo "[INFO] The fake Frigate service is running..."
|
|
|
|
|
sleep 5s
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
|
2023-01-19 02:50:51 +03:00
|
|
|
# Tell S6-Overlay not to restart this service
|
|
|
|
|
s6-svc -O .
|
|
|
|
|
|
2025-09-24 13:33:52 +03:00
|
|
|
if [ -e /usr/local/bin/opt_in_out ]; then
|
|
|
|
|
/usr/local/bin/opt_in_out --opt_out > /dev/null 2>&1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
set_libva_version() {
|
|
|
|
|
local ffmpeg_path
|
|
|
|
|
ffmpeg_path=$(python3 /usr/local/ffmpeg/get_ffmpeg_path.py)
|
|
|
|
|
LIBAVFORMAT_VERSION_MAJOR=$("$ffmpeg_path" -version | grep -Po "libavformat\W+\K\d+")
|
|
|
|
|
export LIBAVFORMAT_VERSION_MAJOR
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
echo "[INFO] Preparing Frigate..."
|
|
|
|
|
set_libva_version
|
|
|
|
|
|
|
|
|
|
echo "[INFO] Starting Frigate..."
|
|
|
|
|
|
|
|
|
|
cd /workspace/frigate || echo "[ERROR] Failed to change working directory to /workspace/frigate"
|
|
|
|
|
|
|
|
|
|
exec 2>&1
|
|
|
|
|
exec python3 -u -m frigate
|