From 1dd4f0fd487a018c09068a0a7ef366228405184a Mon Sep 17 00:00:00 2001 From: Josua Rieder Date: Thu, 15 Oct 2026 22:14:36 +0200 Subject: [PATCH] Allow setting output_dir to "" to disable writing files --- whisper/transcribe.py | 5 +++-- whisper/utils.py | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/whisper/transcribe.py b/whisper/transcribe.py index 56b29fbc8..41a055633 100644 --- a/whisper/transcribe.py +++ b/whisper/transcribe.py @@ -530,7 +530,7 @@ def valid_model_name(name): parser.add_argument("--model", default="turbo", type=valid_model_name, help="name of the Whisper model to use") parser.add_argument("--model_dir", type=str, default=None, help="the path to save model files; uses ~/.cache/whisper by default") parser.add_argument("--device", default="cuda" if torch.cuda.is_available() else "cpu", help="device to use for PyTorch inference") - parser.add_argument("--output_dir", "-o", type=str, default=".", help="directory to save the outputs") + parser.add_argument("--output_dir", "-o", type=str, default=".", help='directory to save the outputs (set to "" to disable writing files)') parser.add_argument("--output_format", "-f", type=str, default="all", choices=["txt", "vtt", "srt", "tsv", "json", "jsonl", "all"], help="format of the output file; if not specified, all available formats will be produced") parser.add_argument("--verbose", type=str2bool, default=True, help="whether to print out the progress and debug messages") @@ -572,7 +572,8 @@ def valid_model_name(name): output_dir: str = args.pop("output_dir") output_format: str = args.pop("output_format") device: str = args.pop("device") - os.makedirs(output_dir, exist_ok=True) + if output_dir: + os.makedirs(output_dir, exist_ok=True) if model_name.endswith(".en") and args["language"] not in {"en", "English"}: if args["language"] is not None: diff --git a/whisper/utils.py b/whisper/utils.py index 79658fc75..b3447f3dd 100644 --- a/whisper/utils.py +++ b/whisper/utils.py @@ -91,6 +91,9 @@ def __init__(self, output_dir: str): def __call__( self, result: dict, audio_path: str, options: Optional[dict] = None, **kwargs ): + if not self.output_dir: + return + audio_basename = os.path.basename(audio_path) audio_basename = os.path.splitext(audio_basename)[0] output_path = os.path.join(