#!/bin/bash
# Extract teaser segments from webinar recording
# Usage: ./cut_segments.sh recording.mp4

set -euo pipefail

INPUT="${1:-recording.mp4}"
OUTDIR="segments"

mkdir -p "$OUTDIR"

echo "==> Extracting segments from $INPUT"

while IFS=, read -r start end label; do
  [ "$start" = "start" ] && continue  # skip header
  echo "  Cutting: $label ($start -> $end)"
  ffmpeg -y -i "$INPUT" -ss "$start" -to "$end" -c copy "$OUTDIR/${label}.mp4" 2>/dev/null
done < cuts.csv

echo "==> Normalizing audio levels"
for f in "$OUTDIR"/*.mp4; do
  base=$(basename "$f" .mp4)
  ffmpeg -y -i "$f" -af loudnorm=I=-16:TP=-1.5:LRA=11 -c:v copy "$OUTDIR/${base}_norm.mp4" 2>/dev/null
  mv "$OUTDIR/${base}_norm.mp4" "$f"
done

echo "==> Done. Segments in $OUTDIR/"
ls -lh "$OUTDIR/"
