Ë
    Gü´jš  ã                   ó,   — d Z ddlZddlmZ deddfd„Zy)z:Functions to play audio on Windows using native win32 APIsé    Né   )Úpr_errÚ	mp3_fnameÚreturnc                 ó¾  ‡‡‡— t         j                  dk7  rt        d«      ‚ddlmŠm}m} |j                  j                  Š|j                  |j                  |j                  g‰_        |j                  ‰_        dt        dt        fˆˆfd„}|j                  j                   Šdt        dd	fˆfd
„} || «      } |d«        |d|› d�«        |d«        |d«       y	)z-Play mp3 file with given path using win32 APIÚwin32z"Function only available on Windowsr   )Úcreate_unicode_bufferÚwindllÚwintypesÚ	long_namer   c                 óV   •— d}	  ‰|«      } ‰| ||«      }||k\  r|j                   S |}Œ&)z|
        Gets the DOS-safe short path name of a given long path.
        http://stackoverflow.com/a/23598461/200291
        r   )Úvalue)r   Úoutput_buf_sizeÚ
output_bufÚneededÚ_get_short_path_name_wr	   s       €€úZ/root/workspace/ytshorts/venv/lib/python3.12/site-packages/edge_playback/win32_playback.pyÚget_short_path_namez+play_mp3_win32.<locals>.get_short_path_name   sC   ø€ ð
 ˆØÙ.¨Ó?ˆJÙ+¨I°zÀ?ÓSˆFØ &Ò(Ø!×'Ñ'Ð'Ø$ˆOð ó    ÚmsgNc                 óv   •—  ‰| ddd«      }|dk7  r(t        d|› d| › d�«       t        j                  d«       yy)zSend MCI command stringr   zError z in mciSendString z
. Exiting.r   N)r   ÚsysÚexit)r   ÚresultÚmci_send_string_ws     €r   Úmci_sendz play_mp3_win32.<locals>.mci_send(   sB   ø€ á" 3¨¨1¨aÓ0ˆØ�QŠ;Ü�V˜F˜8Ð#5°c°U¸*ÐEÔFÜ�H‰H�Q�Kð r   z	Close AllzOpen "z" Type MPEGVideo Alias theMP3zPlay theMP3 WaitzClose theMP3)r   ÚplatformÚNotImplementedErrorÚctypesr	   r
   r   Úkernel32ÚGetShortPathNameWÚLPCWSTRÚLPWSTRÚDWORDÚargtypesÚrestypeÚstrÚwinmmÚmciSendStringW)	r   r
   r   r   r   Úmp3_shortnamer   r	   r   s	         @@@r   Úplay_mp3_win32r+      sÕ   ú€ ô ‡|�|�wÒÜ!Ð"FÓGÐG÷ ?Ñ>à#Ÿ_™_×>Ñ>Ðà×ÑØ�‰Ø�‰ð'ÐÔ#ð
 &.§^¡^ÐÔ"ð%¤sð %¬sö %ð Ÿ™×3Ñ3Ðð”cð ˜dõ ñ (¨	Ó2€Máˆ[ÔÙˆv�m�_Ð$AÐBÔCÙÐÔ Ùˆ^Õr   )Ú__doc__r   Úutilr   r'   r+   © r   r   ú<module>r/      s!   ðÙ @ã 
å ð,˜cð , dô ,r   