| import os | |
| import shutil | |
| from pathlib import Path | |
| from config.config import AUDIOBOOK_ROOT | |
| base = AUDIOBOOK_ROOT | |
| def accept_revision(index, audio_dir): | |
| """ | |
| Archive original chunk and replace with revised version. | |
| Assumes revised version is saved as: chunk_XXXXX_rev.wav | |
| """ | |
| base = Path(audio_dir) | |
| # Use 1-based indexing and 5-digit format | |
| original = base / f"chunk_{index+1:05d}.wav" | |
| revised = base / f"chunk_{index+1:05d}_rev.wav" | |
| archive_dir = base.parent.parent / "Audio_Revisions" | |
| archive_dir.mkdir(exist_ok=True) | |
| if not revised.exists(): | |
| print("β No revised file found. Cannot accept.") | |
| return | |
| # Archive original if exists | |
| if original.exists(): | |
| archived = archive_dir / f"chunk_{index+1:05d}_orig.wav" | |
| shutil.move(str(original), str(archived)) | |
| print(f"π¦ Original chunk archived to {archived.name}") | |
| else: | |
| print(f"β οΈ Original chunk missing β no archive created.") | |
| # Move revised chunk to main filename | |
| shutil.move(str(revised), str(original)) | |
| print(f"β Revised chunk accepted as {original.name}") | |