Add year-based folders, attribution overlay, notifications, crontab/systemd
season_info.py - Add ASTRO_YEAR: year of the Winter solstice that started the current cycle (Spring/Summer/Autumn 2026 → 2025; Winter Dec-2026 → 2026) 4-seasons.sh - Daily clip output path now includes ASTRO_YEAR: movies/$name/$ASTRO_YEAR/$SEASON/Mvt$N/ montage-mvt.sh (full rewrite) - Attribution is now a drawtext overlay (top 6 s of the video, fade in/out) instead of an appended black card — no frame-size matching needed, and year-end join requires no special handling - Output path mirrors the new year-based folder structure - Sends notification via notify.sh when done - Automatically triggers year-end-join.sh after Autumn Mvt 3 year-end-join.sh (new) - Concatenates all 12 movement montages for a given ASTRO_YEAR - Output: movies/$name/$ASTRO_YEAR/$name-$ASTRO_YEAR.mp4 - Sends notification when done notify.sh + notify_config.txt (new) - Generic best-effort notification helper: ntfy, email, Mattermost text post - All methods disabled by default; user fills in notify_config.txt sky-cam.crontab + systemd/ (new) - Crontab file: sunrise at 09:00, 4-seasons at 01:00, fullday at 02:00 - systemd .service + .timer units for all three daily jobs - montage/year-end triggered internally, not by cron https://claude.ai/code/session_01C4jbd3waXG3eKZYbGUjLUQ
This commit is contained in:
+4
-3
@@ -23,8 +23,9 @@ echo "Processing: $yesterday"
|
||||
|
||||
# ── Season / movement info from astronomical calculation ──────────────────────
|
||||
eval "$(python3 "$SCRIPT_DIR/season_info.py" "$yesterday")"
|
||||
# Provides: SEASON MVT_NUM DAY_OF_MVT DAYS_IN_MVT MVT_START MVT_END IS_LAST_DAY
|
||||
echo "Season=$SEASON Mvt=$MVT_NUM Day=$DAY_OF_MVT/$DAYS_IN_MVT LastDay=$IS_LAST_DAY"
|
||||
# Provides: SEASON MVT_NUM DAY_OF_MVT DAYS_IN_MVT MVT_START MVT_END
|
||||
# IS_LAST_DAY ASTRO_YEAR
|
||||
echo "Season=$SEASON Mvt=$MVT_NUM Year=$ASTRO_YEAR Day=$DAY_OF_MVT/$DAYS_IN_MVT LastDay=$IS_LAST_DAY"
|
||||
|
||||
# ── Locate music file and get its duration ────────────────────────────────────
|
||||
music_file=$(find "$music_base_dir" -type f -iname "*${SEASON}*Mvt*${MVT_NUM}*" | sort | head -n 1)
|
||||
@@ -57,7 +58,7 @@ fi
|
||||
echo "Images found: $total_images"
|
||||
|
||||
# ── Prepare output directory ──────────────────────────────────────────────────
|
||||
output_dir="$base_dir/movies/$script_name/$SEASON/Mvt$MVT_NUM"
|
||||
output_dir="$base_dir/movies/$script_name/$ASTRO_YEAR/$SEASON/Mvt$MVT_NUM"
|
||||
mkdir -p "$output_dir"
|
||||
|
||||
# ── Build sorted image list ───────────────────────────────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user