
    rp0j                     X   S r SSKrSSKrSSKrSSKrSSKrSSKJr  SSKJ	r	J
r
Jr  SSKJr  S\\\	\   4   4S jrS	\SS4S
 jrS	\S\
\   S\
\   S\S\\\
\   4   4
S jrS\S\
\   S\	\   SS4S jrS	\S\S\
\   SS4S jrS\
\   S\
\   S\SS4S jrSS jr\S:X  a  \" 5         gg)z.Main entrypoint for the edge-playback package.    N)which)ListOptionalTuple   )pr_errreturnc                      [         R                  " SSSS9n U R                  SSSS9  U R                  5       u  p[        R
                  S	:g  =(       d    UR                  nX24$ )
Nzedge-playbackz;Speak text using Microsoft Edge's online text-to-speech APIz'See `edge-tts` for additional arguments)progdescriptionepilogz--mpv
store_truezSUse mpv to play audio. By default, false on Windows and true on all other platforms)actionhelpwin32)argparseArgumentParseradd_argumentparse_known_argssysplatformmpv)parserargstts_argsuse_mpvs       P/home/wildlama/miniconda3/lib/python3.13/site-packages/edge_playback/__main__.py_parse_argsr      sk    $$Q8F
 b  
 ,,.NDllg%1G    r   c                     SnS/nU (       a  UR                  S5        U H%  n[        U5      (       a  M  [        U S35        SnM'     U(       a"  [        S5        [        R                  " S5        g g )NFedge-ttsr   z is not installed.Tz(Please install the missing dependencies.r   )appendr   r   r   exit)r   depcheck_faileddepsdeps       r   _check_depsr'      sc    O<DESzzcU,-."O 
 9: r   	mp3_fname	srt_fnamedebugc                 `   S =pEU(       dF  [         R                  " SSS9nUR                  5         UR                  nU(       a  [	        SU 35        U(       d8  U (       a1  [         R                  " SSS9nUR                  5         UR                  nU(       a  U(       a  [	        SU S35        X4$ )Nz.mp3F)suffixdeletezMedia file: z.srtzSubtitle file: 
)tempfileNamedTemporaryFileclosenameprint)r   r(   r)   r*   mediasubtitles         r   _create_temp_filesr6   .   s     E++6%HJJ	L,-..fUKMM		{"-.r   r   c                     SSU  3/nU(       a  UR                  SU 35        X2-   n[        R                  " U5       nUR                  5         S S S 5        g ! , (       d  f       g = f)Nr!   z--write-media=z--write-subtitles=)r"   
subprocessPopencommunicate)r(   r)   r   edge_tts_cmdprocesss        r   _run_edge_ttsr=   D   s^     . <=L0<=*L			,	'7 
(	'	's   A
A%c                 8   [         R                  S:X  a  U (       d  SSKJn  U" U5        g SS/nU(       a  UR	                  SU 35        UR	                  U5        [
        R                  " U5       nUR                  5         S S S 5        g ! , (       d  f       g = f)Nr   r   )play_mp3_win32r   z'--msg-level=all=error,statusline=statusz--sub-file=)r   r   win32_playbackr?   r"   r8   r9   r:   )r   r(   r)   r?   mpv_cmdr<   s         r   _play_mediarB   O   sy    
||ww2y! 	1G YK01NN9			'	"g 
#	"	"s   1B
Bkeepc                 h   U(       a/  U b,  [        SU  3SS9  U(       a  [        SU 3SS9  [        5         g U b:  [        R                  R                  U 5      (       a  [        R                  " U 5        Ub<  [        R                  R                  U5      (       a  [        R                  " U5        g g g )Nz
Keeping temporary files:  )endz and )r3   ospathexistsunlink)r(   r)   rC   s      r   _cleanuprK   b   s    	%+I;7R@E)%2.	!:!:
		)	!:!:
		) ";r   c                     [        5       u  p[        U 5        [        R                  R	                  S5      S Ln[        R                  R	                  S5      S Ln[        R                  R	                  S5      n[        R                  R	                  S5      n [        XXR5      u  pE[        XEU5        [        XU5        [        XEU5        g ! [        XEU5        f = f)NEDGE_PLAYBACK_DEBUGEDGE_PLAYBACK_KEEP_TEMPEDGE_PLAYBACK_MP3_FILEEDGE_PLAYBACK_SRT_FILE)	r   r'   rG   environgetr6   r=   rB   rK   )r   r   r*   rC   r(   r)   s         r   _mainrS   p   s    #GJJNN01=E::>>34D@D

78I

78I-1'iW	iH5G	2t,t,s   &C C__main__)r	   N)__doc__r   rG   r8   r   r/   shutilr   typingr   r   r   utilr   boolstrr   r'   r6   r=   rB   rK   rS   __name__ r   r   <module>r]      s'   4  	  
   ( ( U4c?+   $    &sm 8@ NR 
3 ,'}8<S		 # (3- D & (3- t PT -" z	G r   