Files

41 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
if [ -d "$SCRIPT_DIR/../src" ]; then
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
else
PROJECT_ROOT="$SCRIPT_DIR"
fi
cd "$PROJECT_ROOT"
export PYTHONPATH="$PROJECT_ROOT/src"
if [ -f "$PROJECT_ROOT/venv/bin/python" ]; then
PYTHON="$PROJECT_ROOT/venv/bin/python"
else
PYTHON="python3"
fi
dates=(
"2026-06-18"
)
cameras=("CC1" "CC2" "CC3" "CC4")
# Maximum parallel video jobs (default: 4)
MAX_JOBS="${MAX_JOBS:-4}"
echo "=== Starting per-video parallel processing with video output for 2026-06-18 (MAX_JOBS=$MAX_JOBS) ==="
for date in "${dates[@]}"; do
for cam in "${cameras[@]}"; do
echo "=== Launching $date ($cam) ==="
$PYTHON -m chicken_counter.cli batch --config configs/cycle7_batch_optimized.yaml --date "$date" --camera "$cam" --output-subdir output_video &
# Throttle active background jobs to MAX_JOBS
while [ "$(jobs -r -p | wc -l)" -ge "$MAX_JOBS" ]; do
sleep 1
done
done
done
wait
echo "=== All video processing jobs completed ==="