o
    q1h
                     @   s@  d dl Z d dlZd dlZd dlZd dlmZ d dlmZmZ d dl	m
Z
 e jddZejdded	d
 ejdddddd ejddddd ejddddd ejddedd
 ejdddedd ejd d!ed"d
 ejd#d$d%ed&d ejd'd(d)ed*d ejd+d,d-ed.d ejd/d0d1d2 d3d4 Zed5kre  dS dS )6    N)Path)list_modelslist_languages)Transcriberz8Transcribe audio file and save result in selected format)descriptionz--modelz-mz
model path)typehelpz--serverz-szws://localhost:2700store_constzuse server for recognition)constactionr   z--list-modelsF
store_truezlist available models)defaultr   r   z--list-languageszlist available languagesz--model-namez-nzselect model by namez--langz-lzen-uszselect model by language)r   r   r   z--inputz-i	audiofilez--outputz-o zoptional output filename pathz--output-typez-ttxtzoptional arg output data typez--tasksz-ts
   z$number of parallel recognition tasksz--log-levelINFOzlogging level)r   r   c                     s  t    j } t |   jdu rt  d S  jdu r$t  d S  j	s1t
d td t j	 sBt
d td t }t j	 r[ fddt j	D }n,t j	 r} jdkrqt j	 jfg}nt j	t jfg}n
t
d td || d S )	NTz&Please specify input file or directory   zRFile/folder {args.input} does not exist, please specify an existing file/directoryc                    s6   g | ]}t  j|t  jt |jd  j fqS ).)r   inputoutputstemwith_suffixoutput_type).0fnargs h/var/www/html/alexa/alex_system/speach-to-text/venv/lib/python3.10/site-packages/vosk/transcriber/cli.py
<listcomp>J   s    
zmain.<locals>.<listcomp>r   zWrong arguments)parser
parse_args	log_levelupperlogging	getLoggersetLevelr   r   r   infosysexitr   existsr   is_diroslistdiris_filer   process_task_list)r#   transcriber	task_listr   r   r   main0   s6   











r3   __main__)argparser%   r)   r-   pathlibr   voskr   r   vosk.transcriber.transcriberr   ArgumentParserr!   add_argumentstrintr3   __name__r   r   r   r   <module>   st   (
