"""Generate full narration for Balimentari Monday Motivation."""
import subprocess
import os

# Full script - 25-30 seconds motivational
script = """The holiday is over. 

But here's the truth. Today is not just another Monday. 

Today is your fresh start. Your new beginning. 

The world is waiting. So take that first step. 

Selamat pagi. Let's go. 

Balimentari."""

model = os.path.expanduser("~/.piper/models/en_US-lessac-medium.onnx")
out = "/app/working/workspaces/default/OpenMontage/pipeline/balimentari-senin/narration.wav"

print(f"Generating narration...")
print(f"Script: {script}")

cmd = ["piper", "-m", model, "-f", out, "--length-scale", "1.05"]
proc = subprocess.run(cmd, input=script, capture_output=True, text=True, timeout=120)

if proc.returncode != 0:
    print("STDERR:", proc.stderr)
    print("Failed!")
else:
    size = os.path.getsize(out)
    print(f"Audio generated: {out} ({size} bytes)")
    
    # Get duration with ffprobe
    cmd2 = ["ffprobe", "-v", "error", "-show_entries", "format=duration", "-of", "default=noprint_wrappers=1:nokey=1", out]
    dur = subprocess.run(cmd2, capture_output=True, text=True, timeout=10)
    print(f"Duration: {float(dur.stdout.strip()):.1f}s")
