+
    Ui                        ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIHtHtH	t	H
t
HtHtHt ^ RIHtHt ^RIHtHt ^RIHtHt ]'       d   ^ RIHt Rt]! R]P8                  R	7      t ! R
 R]
],          4      tR# )    )annotationsN)AnyTypeUnionGenericTypeVarCallableoverload)TYPE_CHECKINGLiteral)	FileTypesFileContent)numpysounddevicei]  DType)boundc                      ] tR t^t^]P
                  RR3R R lltR R lt]R R l4       t	]R R	 l4       t	]RR
 R ll4       t	RR R llt	Rt
R# )
MicrophoneNc               (    V ^8  d   QhRRRRRRRR/# )	   channelsintdtypezType[DType]should_recordzUnion[Callable[[], bool], None]timeoutzUnion[float, None] )formats   "X/home/ubuntu/hermes-agent/venv/lib/python3.14/site-packages/openai/helpers/microphone.py__annotate__Microphone.__annotate__   s2     ; ;; ; 7	;
 $;    c                	d    Wn         W n        W0n        . V n        W@n        \        V4      V n        R # N)r   r   r   buffer_chunksr   callablehas_record_function)selfr   r   r   r   s   &&&&&r   __init__Microphone.__init__   s.     !
*#+M#: r!   c                    V ^8  d   QhRRRR/# )r   
audio_datanpt.NDArray[DType]returnr   r   )r   s   "r   r   r    %   s     2 2*< 2 2r!   c                	   \         P                  ! 4       p\        P                  ! VR 4      ;_uu_ 4       pVP	                  V P
                  4       VP                  \        P                  ! V P                  4      P                  4       VP                  \        4       VP                  VP                  4       4       RRR4       VP                  ^ 4       RVR3#   + '       g   i     L&; i)wNz	audio.wavz	audio/wav)ioBytesIOwaveopensetnchannelsr   setsampwidthnpr   itemsizesetframerateSAMPLE_RATEwriteframestobytesseek)r'   r+   bufferwav_files   &&  r   _ndarray_to_wavMicrophone._ndarray_to_wav%   s     jjlYYvs##x!!$--0!!"((4::"6"?"?@!!+.  !3!3!56	 $
 	AV[11 $#s   B	CC,	c                    V ^8  d   QhRRRR/# )r   return_ndarrayzLiteral[True]r-   r,   r   )r   s   "r   r   r    0   s    TT=T=OTr!   c                	   "   R # 5ir#   r   r'   rB   s   &&r   recordMicrophone.record/   s     QT   c                    V ^8  d   QhRRRR/# )r   rB   zLiteral[False]r-   r   r   )r   s   "r   r   r    3   s    LL>LiLr!   c                	   "   R # 5ir#   r   rD   s   &&r   rE   rF   2   s     ILrG   c                    V ^8  d   QhRRRR/# )r   rB   Noner-   r   r   )r   s   "r   r   r    6   s    HH4H)Hr!   c                	   "   R # 5ir#   r   rD   s   &&r   rE   rF   5   s     EHrG   c                    V ^8  d   QhRRRR/# )r   rB   zUnion[bool, None]r-   z$Union[npt.NDArray[DType], FileTypes]r   )r   s   "r   r   r    8   s     ,= ,=+< ,=Im ,=r!   c                	  a aaa"   \         P                  ! 4       o\         P                  ! 4       o. S n        \        P
                  ! 4       oR  VVV V3R llp\        P                  ! VS P                  \        S P                  R7      pT;_uu_ 4        SP                  4       G Rj  xL
  RRR4       \        S P                  4      ^ 8  d#   \        P                  ! S P                  ^ R7      M!\        P                  ! . S P                  R7      pV'       d   V# S P!                  V4      #  L  + '       g   i     L; i5i)c               (    V ^8  d   QhRRRRRRRR/# )r   indatar,   _frame_countr   
_time_infor   _statusr   )r   s   "r   r   'Microphone.record.<locals>.__annotate__>   s0     	5 	5&	5	5 	5 		5r!   c                  < \         P                  ! 4       S
,
          pS	P                  e   VS	P                  8  MRpV'       d,   SP                  SP                  4       \
        P                  h\        S	P                  4      '       d   S	P                  4       MRpV'       g,   SP                  SP                  4       \
        P                  hS	P                  P                  V P                  4       4       R # )NFT)timeperf_counterr   call_soon_threadsafesetsdCallbackStopr%   r   r$   appendcopy)rP   rQ   rR   rS   execution_timereached_recording_timeoutshould_be_recordingeventloopr'   
start_times   &&&&   r   callback#Microphone.record.<locals>.callback>   s     "..0:=NIMIa(Egl%())%))4oo%:B4CUCU:V:V$"4"4"6\`&))%))4oo%%%fkkm4r!   )rd   r   
samplerater   N)axis)r   )asyncioget_event_loopEventr$   rV   rW   rZ   InputStreamr   r9   r   waitlenr6   concatenatearrayr?   )r'   rB   rd   streamconcatenated_chunksra   rb   rc   s   f&   @@@r   rE   rF   8   s     %%'79&&(
	5 	5& **"]]	
 V**,  4%%&* NN4--A6"DJJ/ 	 &&''(;<<  Vs7   BED1)D/*D1.A-EE/D11E	<E)r$   r   r   r&   r   r   ).)F)__name__
__module____qualname____firstlineno__r6   int16r(   r?   r
   rE   __static_attributes__r   r!   r   r   r      sT     XX9=&*;2 T TL LH H,= ,=r!   r   )
__future__r   r0   rV   r2   rh   typingr   r   r   r   r   r	   r
   typing_extensionsr   r   _typesr   r   _extrasr   r6   r   rZ   numpy.typingnptr9   genericr   r   r   r!   r   <module>r      sS    " 	    I I I 4 + 4rzz*N= N=r!   