
    љin                     l   S SK JrJr  S SKrS SKJrJrJrJr  S SK	r	S SK
r
S SKrSSKJr  \R                  " \5      r " S S\5      r " S S	\5      rSSSSSSSSS
SSSSSS.S\S\S\S\S\S\\\\   \\   /\
R*                  4   S\\
R,                  /\4   S\\\4   S\S\S\S\\   S\S\4S jjrg)    )ABCabstractmethodN)DictListCallableOptional   )TTSPreprocessorc                       \ rS rSrSSSSSSSS.S\\\4   S	\S
\S\S\\	   S\
S\
4S jjrSS\S\4S jjrSS\S\S\4S jjr\SS\S\S\S\4S jj5       rS\4S jrS\S\4S jrS rSrg)SpeechSynthesizer   Nd            $@Fstyle_mappermax_connectionsmax_keepalive_connectionstimeoutpreprocessorsfollow_redirectsdebugr   r   r   r   r   r   r   c          	          [         R                  " U[         R                  " U5      [         R                  " UUS9S9U l        U=(       d    0 U l        U=(       d    / U l        Xpl        g )Nr   r   r   r   limits)httpxAsyncClientTimeoutLimitshttp_clientr   r   r   )selfr   r   r   r   r   r   r   s           O/home/james-whalen/.local/lib/python3.13/site-packages/aiavatar/sts/tts/base.py__init__SpeechSynthesizer.__init__   sY     !,,-MM'*<< /*C
 ).B*0b
    
style_inforeturnc                     U(       d  g UR                  SS5      nU R                  R                  5        H  u  p4X2;   d  M  Us  $    g )Nstyled_text )getr   items)r"   r'   r*   kvs        r#   parse_styleSpeechSynthesizer.parse_style$   sC     nn]B7%%++-DA . r&   textlanguagec                 p   #    UnU R                    H  nUR                  XBU5      I S h  vN nM     U$  N
7fN)r   process)r"   r2   r'   r3   processed_textps         r#   
preprocessSpeechSynthesizer.preprocess.   s9     ##A#$99^#RRN $ Ss   '646c                    #    g 7fr5    r"   r2   r'   r3   s       r#   
synthesizeSpeechSynthesizer.synthesize4   s     s   c                     U R                   U R                  (       a!  [        U R                  R                  SS 5      OS U R                  S.$ )Nread)r   r   r   )r   r!   getattrr   r   r"   s    r#   
get_configSpeechSynthesizer.get_config8   s?     --JNJZJZwt//77F`dZZ
 	
r&   configc           
      6   U R                  5       R                  5       n0 nUR                  5        H  u  pEUc  M
  XB;  a  M  US:X  a  U R                  (       a  [        R
                  " U R                  R                  [        R                  " U5      [        R                  " U R                  R                  R                  U R                  R                  R                  S9S9U l        XSU'   M  M   [        XU5        XSU'   M     U$ ! [         a     M  f = f)Nr   r   r   )rD   keysr-   r!   r   r   _follow_redirectsr   r    _pool_max_connections_max_keepalive_connectionssetattr	Exception)r"   rF   allowed_keysupdatedr.   r/   s         r#   
set_configSpeechSynthesizer.set_config?   s    (--/LLNDAy$I~##','8'8)-)9)9)K)K %a 0$||,0,<,<,B,B,S,S6:6F6F6L6L6g6g (D$ "#AJ $DQ'!"AJ' #,  ! s   4D


DDc                 T   #    U R                   R                  5       I S h  vN   g  N7fr5   )r!   acloserC   s    r#   closeSpeechSynthesizer.closeZ   s     %%'''s   (&()r   r!   r   r   r5   NN)__name__
__module____qualname____firstlineno__r   strintfloatr   r
   boolr$   dictr0   r9   r   bytesr>   rD   rQ   rU   __static_attributes__r<   r&   r#   r   r      s     (,")+/3!& 38n 	
 $'  O,  .d c S d S  S d S \a  
D 
 $ 6(r&   r   c                      ^  \ rS rSrSSSSSSSSSS.	S	\S
\S\\\4   S\S\S\S\	\
   S\S\4U 4S jjjrSS\S\S\S\4S jjrSrU =r$ )SpeechSynthesizerDummy^   Ng        r   r   r   F)	synthesized_byteswait_secr   r   r   r   r   r   r   rf   rg   r   r   r   r   r   r   r   c       	   	      B   > [         T
U ]  UUUUUU	S9  Xl        X l        g )N)r   r   r   r   r   r   )superr$   rf   rg   )r"   rf   rg   r   r   r   r   r   r   r   	__class__s             r#   r$   SpeechSynthesizerDummy.__init___   s6     	%+&?' 	 	
 "3 r&   r2   r'   r3   r(   c                 v   #    [         R                  " U R                  5      I S h  vN   U R                  $  N7fr5   )asynciosleeprg   rf   r=   s       r#   r>   !SpeechSynthesizerDummy.synthesizew   s,     mmDMM***%%% 	+s   $979)rf   rg   rW   )rX   rY   rZ   r[   ra   r^   r   r\   r]   r   r
   r_   r$   r`   r>   rb   __classcell__)rj   s   @r#   rd   rd   ^   s     $('+")+/3!&! !! 	!
 38n! ! $'! ! O,! ! ! !0&S &d &S &\a & &r&   rd   r   r   
   F)methodurlparamsheadersjsonrequest_makerresponse_parserr   r   r   r   r   r   r   rr   rs   rt   ru   rv   rw   rx   r   r   r   r   r   r   r(   c           
      X   ^ ^^^^^^  " UUU UUUU4S jS[         5      nU" UUU	U
UUUS9$ )Nc            	       F   > \ rS rSrS	S\S\S\S\4U UUUUUU4S jjjrSrg)
6create_instant_synthesizer.<locals>.InstantSynthesizer   Nr2   r'   r3   r(   c                   >#    U(       a  UR                  5       (       d
  [        5       $ [        R                  SU 35        U R	                  XU5      I S h  vN nT(       a
  T" XBU5      nOeS[
        S[        S[        4S jnT(       a	  U" TXC5      OS nT(       a	  U" TXC5      OS nT(       a	  U" TXC5      OS n	[        R                  " TTUUU	S9nU R                  R                  U5      I S h  vN n
U
R                  5         T(       a/  T" U
5      n[        R                  " U5      (       a
  UI S h  vN $ U$ U
R                  $  N NX N7f)NzSpeech synthesize: objr2   langc           
          U R                  5        VVs0 s H5  u  p4U[        U[        5      (       a  UR                  X=(       d    SS9OU_M7     snn$ s  snnf )Nr+   )r2   r3   )r-   
isinstancer\   format)r~   r2   r   r.   r/   s        r#   replace_placeholders_create_instant_synthesizer.<locals>.InstantSynthesizer.synthesize.<locals>.replace_placeholders   sN    qtqzqzq|}q|imijA:VWY\K]K]qxxTJBxGcddq|}}}s   <A)rr   rs   rt   ru   rv   )stripra   loggerinfor9   r`   r\   r   Requestr!   sendraise_for_statusinspectiscoroutinecontent)r"   r2   r'   r3   r7   http_requestr   dynamic_paramsdynamic_headersdynamic_jsonhttp_responseresultru   rv   rr   rt   rw   rx   rs   s               r#   r>   Acreate_instant_synthesizer.<locals>.InstantSynthesizer.synthesize   s;    tzz||wKK-dV45 $(??4X#NNN ,^R~d ~# ~S ~ \b!5fn!Wgk]d"6w"YjnW[3D.Sae$}}!)+%  #'"2"2"7"7"EEM**, (7&&v..!'<' (((A O. F (s8   AEEBE0E	1AE4E5E	EEr<   rW   )	rX   rY   rZ   r[   r\   r`   ra   r>   rb   )ru   rv   rr   rt   rw   rx   rs   s   r#   InstantSynthesizerr{      s0    '	) '	)$ '	)QT '	)`e '	) '	) '	)r&   r   r   )r   )rr   rs   rt   ru   rv   rw   rx   r   r   r   r   r   r   r   r   s   ```````        r#   create_instant_synthesizerr   |   s:    () (). ()T !'";#) r&   )abcr   r   rm   typingr   r   r   r   r   r   loggingpreprocessorr
   	getLoggerrX   r   r   rd   r\   r`   r   Responsera   r]   r^   r_   r   r<   r&   r#   <module>r      s5   #  1 1    )			8	$O( O(d&. &@ 4daeSW9=#'%'+/"?? ?15?GK?Z^? S(4.(3-@%--OP? u~~.56	?
 sCx.? ?  #? ? (? ? ?r&   