o
    i                     @   st   d dl Z d dlZd dlZd dlZd dlZd dlZejejd e	e
Zd	ddZe
dkr8dZe ee dS dS )
    N)level	localhost'  c              
      s   t  t jt j t d  j|t|fI d H  t d  fdd}zDz|  	d}t d  j
|I d H  | I d H  W n ty^ } ztd|  W Y d }~nd }~ww W    d S W    d S    w )Nc                     s   t  } | jt jddddd}zA	 t d  jdI d H }|s"n"|dkr,t	d nt
j|t
jd	}||  d u rCt qW |  |  |   n|  |  |   w t	d
t  dd d S )N   i]  Ti   )formatchannelsrateoutputframes_per_bufferi    s   ENDzEnd of audio received.)dtypezTotal time taken: z.4fz seconds)pyaudioPyAudioopen	paFloat32asyncioget_event_looprun_in_executorrecvloggerinfonp
frombufferfloat32writetobytestimestop_streamclose	terminate)pstreamdataaudio_arrayclient_socketfirst_chunk_time
start_time H/home/ubuntu/.local/lib/python3.10/site-packages/f5_tts/socket_client.pyplay_audio_stream   s0   


 z*listen_to_F5TTS.<locals>.play_audio_streamzutf-8zError in listen_to_F5TTS: )socketAF_INETSOCK_STREAMr   r   r   connectintr   encodesendall	Exceptionr   errorr   )text	server_ipserver_portr)   data_to_sender'   r#   r(   listen_to_F5TTS   s$   "r8   __main__zAs a Reader assistant, I'm familiar with new technology. which are key to its improved performance in terms of both training speed and inference efficiency. Let's break down the components)r   r   )r   loggingr*   r   numpyr   r   basicConfigINFO	getLogger__name__r   r8   text_to_sendrunr'   r'   r'   r(   <module>   s    

.