diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ba4c3de144cceaceb33121d93620ec089e9b985..dfb337ff6ebbf21e48382a6f57ca13b31a8c8f7d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ Changelog Unreleased ---------- +### Fixed + +- Fix JSON serialization of segments due to Faster Whisper v1.1.0 changes + [1.7.0] (2024-12-17) -------------------- diff --git a/app/utils.py b/app/utils.py index 0b51281a0793aef2063ad475fd8a42b05ab94481..154dbbb0129e1767fda9f337cbb1e8fe91c4b6e4 100644 --- a/app/utils.py +++ b/app/utils.py @@ -1,5 +1,6 @@ import json import os +from dataclasses import asdict from typing import TextIO, BinaryIO import ffmpeg @@ -88,6 +89,8 @@ class WriteJSON(ResultWriter): extension: str = "json" def write_result(self, result: dict, file: TextIO): + if "segments" in result: + result["segments"] = [asdict(segment) for segment in result["segments"]] json.dump(result, file)