parser.add_argument("--output_format","-f",type=str,default="all",choices=["all","srt","vtt","txt","tsv","json"],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")
parser.add_argument("--task",type=str,default="transcribe",choices=["transcribe","translate"],help="whether to perform X->X speech recognition ('transcribe') or X->English translation ('translate')")
parser.add_argument("--language",type=str,default=None,choices=sorted(LANGUAGES.keys())+sorted([k.title()forkinTO_LANGUAGE_CODE.keys()]),help="language spoken in the audio, specify None to perform language detection")
parser.add_argument("--interpolate_method",default="nearest",choices=["nearest","linear","ignore"],help="For word .srt, method to assign timestamps to non-aligned words, or merge them into neighbouring.")
parser.add_argument("--vad_onset",type=float,default=0.500,help="Onset threshold for VAD (see pyannote.audio), reduce this if speech is not being detected")
parser.add_argument("--vad_offset",type=float,default=0.363,help="Offset threshold for VAD (see pyannote.audio), reduce this if speech is not being detected.")
parser.add_argument("--temperature",type=float,default=0,help="temperature to use for sampling")
parser.add_argument("--best_of",type=optional_int,default=5,help="number of candidates when sampling with non-zero temperature")
parser.add_argument("--beam_size",type=optional_int,default=5,help="number of beams in beam search, only applicable when temperature is zero")
parser.add_argument("--patience",type=float,default=None,help="optional patience value to use in beam decoding, as in https://arxiv.org/abs/2204.05424, the default (1.0) is equivalent to conventional beam search")
parser.add_argument("--length_penalty",type=float,default=None,help="optional token length penalty coefficient (alpha) as in https://arxiv.org/abs/1609.08144, uses simple length normalization by default")
parser.add_argument("--suppress_tokens",type=str,default="-1",help="comma-separated list of token ids to suppress during sampling; '-1' will suppress most special characters except common punctuations")
parser.add_argument("--initial_prompt",type=str,default=None,help="optional text to provide as a prompt for the first window.")
parser.add_argument("--condition_on_previous_text",type=str2bool,default=False,help="if True, provide the previous output of the model as a prompt for the next window; disabling may make the text inconsistent across windows, but the model becomes less prone to getting stuck in a failure loop")
parser.add_argument("--fp16",type=str2bool,default=True,help="whether to perform inference in fp16; True by default")
parser.add_argument("--temperature_increment_on_fallback",type=optional_float,default=0.2,help="temperature to increase when falling back when the decoding fails to meet either of the thresholds below")
parser.add_argument("--compression_ratio_threshold",type=optional_float,default=2.4,help="if the gzip compression ratio is higher than this value, treat the decoding as failed")
parser.add_argument("--logprob_threshold",type=optional_float,default=-1.0,help="if the average log probability is lower than this value, treat the decoding as failed")
parser.add_argument("--no_speech_threshold",type=optional_float,default=0.6,help="if the probability of the <|nospeech|> token is higher than this value AND the decoding has failed due to `logprob_threshold`, consider the segment as silence")
parser.add_argument("--max_line_width",type=optional_int,default=None,help="(not possible with --no_align) the maximum number of characters in a line before breaking the line")
parser.add_argument("--max_line_count",type=optional_int,default=None,help="(requires --no_align) the maximum number of lines in a segment")
parser.add_argument("--highlight_words",type=str2bool,default=False,help="(requires --word_timestamps True) underline each word as it is spoken in srt and vtt")
# parser.add_argument("--word_timestamps", type=str2bool, default=False, help="(experimental) extract word-level timestamps and refine the results based on them")
# parser.add_argument("--prepend_punctuations", type=str, default="\"\'“¿([{-", help="if word_timestamps is True, merge these punctuation symbols with the next word")
# parser.add_argument("--append_punctuations", type=str, default="\"\'.。,,!!??::”)]}、", help="if word_timestamps is True, merge these punctuation symbols with the previous word")
parser.add_argument("--threads",type=optional_int,default=0,help="number of threads used by torch for CPU inference; supercedes MKL_NUM_THREADS/OMP_NUM_THREADS")
# parser.add_argument("--model_flush", action="store_true", help="Flush memory from each model after use, reduces GPU requirement but slower processing >1 audio file.")