
    11i                     r    S SK r S SKJr  S SKJr  SrSr\ " S S5      5       r " S S	5      rS
 r	\	" 5       r
g)    N)	dataclass)Pathi  i]  c                   >    \ rS rSr% Sr\S-  \S'   Sr\S-  \S'   Srg)EspeakConfig	   Nlib_path	data_path )	__name__
__module____qualname____firstlineno__r   str__annotations__r	   __static_attributes__r
       L/home/james-whalen/.local/lib/python3.13/site-packages/kokoro_onnx/config.pyr   r   	   s    HcDj IsTz r   r   c                   <    \ rS rSr S	S\S\S\S-  4S jjrS rSrg)
KoKoroConfig   N
model_pathvoices_pathespeak_configc                 (    Xl         X l        X0l        g N)r   r   r   )selfr   r   r   s       r   __init__KoKoroConfig.__init__   s     %&*r   c                 *   [        U R                  5      R                  5       (       d$  SU R                   3nUS-  nUS-  n[        U5      e[        U R                  5      R                  5       (       d  SU R                   3nUS-  n[        U5      eg )NzVoices file not found at z>
You can download the voices file using the following command:zd
wget https://github.com/thewh1teagle/kokoro-onnx/releases/download/model-files-v1.0/voices-v1.0.binzModel file not found at zZ
You can download the model file from https://github.com/thewh1teagle/kokoro-onnx/releases)r   r   existsFileNotFoundErrorr   )r   	error_msgs     r   validateKoKoroConfig.validate   s    D$$%,,..3D4D4D3EFIQI   A  AI#I..DOO$++--24??2CDIvvI#I.. .r   )r   r   r   r   )	r   r   r   r   r   r   r   r#   r   r
   r   r   r   r      s2    
 .2	++ + $d*	+/r   r   c                      [        [        [        5      R                  S-  SS9 n [        R
                  " U 5      nUS   sS S S 5        $ ! , (       d  f       g = f)Nzconfig.jsonzutf-8)encodingvocab)openr   __file__parentjsonload)fpconfigs     r   	get_vocabr/   )   s>    	d8n##m3g	F"2g 
G	F	Fs   A


A)r+   dataclassesr   pathlibr   MAX_PHONEME_LENGTHSAMPLE_RATEr   r   r/   DEFAULT_VOCABr
   r   r   <module>r5      sJ     !   ! ! !
/ /4 r   