from pathlib import Path
import json,hashlib,wave
import whisperx
root=Path(__file__).resolve().parent;audio_file=root/'input.wav';audio=whisperx.load_audio(str(audio_file));text=(root/'expected.txt').read_text().strip();duration=len(audio)/16000
model,meta=whisperx.load_align_model(language_code='en',device='cpu')
result=whisperx.align([{'start':0,'end':duration,'text':text}],model,meta,audio,'cpu',return_char_alignments=False)
result['inputSha256']=hashlib.sha256(audio_file.read_bytes()).hexdigest()
(root/'aligned.json').write_text(json.dumps(result,ensure_ascii=False,indent=2))
