Files
brightness/brightness.sh
2021-08-22 23:18:49 +02:00

19 lines
653 B
Bash
Executable File

#!/bin/env bash
# camera device
FFMPEG_DEVICE='/dev/video0'
# min brightness
MIN=50
# get max brightness
MAX=$(cat /sys/class/backlight/intel_backlight/max_brightness)
# sys path for backligt control
SET='/sys/class/backlight/intel_backlight/brightness'
# get grayscale and calculate brightness value for the screen
GET_GRAYSCALE=$(ffmpeg -i $FFMPEG_DEVICE -vf scale=1:1 -pix_fmt gray -f rawvideo -frames:v 1 -v quiet pipe:1)
AMBIENT=$(echo -n $GET_GRAYSCALE | od -t u | sed "s/000000[01]\s*//" | sed q)
BRIGHTNESS=$(( $AMBIENT * $MAX / 255 ))
# set brightness and limit boundaries
echo $(( $BRIGHTNESS > $MIN ? $BRIGHTNESS : $MIN )) | sudo tee $SET