
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
U
    ¡ê,a.€  ã                
   @   s>  d dl Z d dlZd dlZdddgZG dd„ deƒZdZdd„ Zd	d
„ Zdd„ Z	dd„ Z
dd„ ZdZdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zd d lmZ d d!lmZ ed"d#ƒZd$ej_d%ej_d&ej_d'ej_d(ej_d)ej_G d*d+„ d+ƒZ G d,d-„ d-ƒZ!d@d.d„Z"dAd/d„Z#e$d0k�r:d dl%Z%e%j&d1d… �sJe%j& 'd2¡ e%j&d1 Z(e"e(d3ƒ�ÖZ)e*d4e(ƒ e*d5e) +¡ ƒ e*d6e) ,¡ ƒ e*d7e) -¡ ƒ e*d8e) .¡ ƒ e*d9e) /¡ ƒ e*d:e) 0¡ ƒ e%j&d;d… �r0e%j&d; Z1e*d<e1ƒ e"e1d=ƒ�6Z2e2 3e) 4¡ ¡ e) 5d>¡Z6e6�s�qe2 7e6¡ �qüW 5 Q R X e*d?ƒ W 5 Q R X dS )Bé    NÚErrorÚopenÚopenfpc                   @   s   e Zd ZdS )r   N)Ú__name__Ú
__module__Ú__qualname__© r   r   ú)/opt/alt/python38/lib64/python3.8/aifc.pyr   �   s   l   @Q E c                 C   s:   zt  d|  d¡¡d W S  t jk
r4   td ‚Y nX d S )Nú>lé   r   ©ÚstructZunpackÚreadÚerrorÚEOFError©Úfiler   r   r	   Ú
_read_long”   s    r   c                 C   s:   zt  d|  d¡¡d W S  t jk
r4   td ‚Y nX d S )Nú>Lr   r   r   r   r   r   r	   Ú_read_ulongš   s    r   c                 C   s:   zt  d|  d¡¡d W S  t jk
r4   td ‚Y nX d S )Nú>hé   r   r   r   r   r   r	   Ú_read_short    s    r   c                 C   s:   zt  d|  d¡¡d W S  t jk
r4   td ‚Y nX d S )Nú>Hr   r   r   r   r   r   r	   Ú_read_ushort¦   s    r   c                 C   s@   t |  d¡ƒ}|dkrd}n
|  |¡}|d@ dkr<|  d¡}|S )Né   r   ó    )Úordr   )r   ÚlengthÚdataÚdummyr   r   r	   Ú_read_string¬   s    

r!   gâÿÿÿÿÿïc                 C   s�   t | ƒ}d}|dk r d}|d }t| ƒ}t| ƒ}||  krN|  krNdkrXn nd} n0|dkrft} n"|d }|d | td	|d
 ƒ } ||  S )Nr   r   éÿÿÿÿé €  g        éÿ  iÿ?  l        g       @é?   )r   r   Ú	_HUGE_VALÚpow)ÚfÚexponÚsignÚhimantÚlomantr   r   r	   Ú_read_float¸   s    "r-   c                 C   s   |   t d|¡¡ d S )Nr   ©Úwriter   Úpack©r(   Úxr   r   r	   Ú_write_shortÉ   s    r3   c                 C   s   |   t d|¡¡ d S )Nr   r.   r1   r   r   r	   Ú_write_ushortÌ   s    r4   c                 C   s   |   t d|¡¡ d S )Nr
   r.   r1   r   r   r	   Ú_write_longÏ   s    r5   c                 C   s   |   t d|¡¡ d S )Nr   r.   r1   r   r   r	   Ú_write_ulongÒ   s    r6   c                 C   sR   t |ƒdkrtdƒ‚|  t dt |ƒ¡¡ |  |¡ t |ƒd@ dkrN|  d¡ d S )Néÿ   z%string exceeds maximum pstring lengthÚBr   r   ó    )ÚlenÚ
ValueErrorr/   r   r0   )r(   Úsr   r   r	   Ú_write_stringÕ   s    
r=   c           	      C   sú   dd l }|dk rd}|d }nd}|dkr8d}d}d}n | |¡\}}|dks^|dks^||krp|dB }d}d}nh|d }|dk r�| ||¡}d}||B }| |d¡}| |¡}t|ƒ}| || d¡}| |¡}t|ƒ}t| |ƒ t| |ƒ t| |ƒ d S )	Nr   r#   r"   i @  r   r$   iþ?  é    )ÚmathZfrexpZldexpZfloorÚintr4   r6   )	r(   r2   r?   r*   r)   r+   r,   ZfmantZfsmantr   r   r	   Ú_write_floatÝ   s8    




rA   )ÚChunk)Ú
namedtupleÚ_aifc_paramsz7nchannels sampwidth framerate nframes comptype compnamez3Number of audio channels (1 for mono, 2 for stereo)zSample width in byteszSampling frequencyzNumber of audio framesz(Compression type ("NONE" for AIFF files)zRA human-readable version of the compression type
('not compressed' for AIFF files)c                   @   sÐ   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ Z	dd„ Z
dd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zd d!„ Zd"d#„ Zd$d%„ Zd&d'„ Zd(d)„ Zd*d+„ Zd,d-„ Zd.d/„ Zd0d1„ ZdS )2Ú	Aifc_readNc                 C   s8  d| _ d | _g | _d| _|| _t|ƒ}| ¡ dkr:tdƒ‚| d¡}|dkrTd| _	n|dkrdd| _	ntdƒ‚d| _
d | _d| _zt| jƒ}W n tk
r¦   Y �qY nX | ¡ }|d	krÊ|  |¡ d| _
nH|d
krê|| _| d¡}d| _n(|dkrþt|ƒ| _ n|dk�r|  |¡ | ¡  qx| j
�r,| j�s4tdƒ‚d S )Nr   ó   FORMz file does not start with FORM idr   ó   AIFFó   AIFCr   znot an AIFF or AIFF-C fileó   COMMó   SSNDé   ó   FVERó   MARKz$COMM chunk and/or SSND chunk missing)Ú_versionÚ_convertÚ_markersÚ	_soundposÚ_filerB   Zgetnamer   r   Ú_aifcZ_comm_chunk_readÚ_ssnd_chunkÚ_ssnd_seek_neededr   Ú_read_comm_chunkr   Ú	_readmarkÚskip)Úselfr   ÚchunkZformdataZ	chunknamer    r   r   r	   Úinitfp4  sH    





zAifc_read.initfpc                 C   sL   t |tƒr>t |d¡}z|  |¡ W qH   | ¡  ‚ Y qHX n
|  |¡ d S )NÚrb)Ú
isinstanceÚstrÚbuiltinsr   r[   Úclose©rY   r(   Zfile_objectr   r   r	   Ú__init__\  s    

zAifc_read.__init__c                 C   s   | S ©Nr   ©rY   r   r   r	   Ú	__enter__h  s    zAifc_read.__enter__c                 G   s   |   ¡  d S rc   ©r`   ©rY   Úargsr   r   r	   Ú__exit__k  s    zAifc_read.__exit__c                 C   s   | j S rc   )rR   rd   r   r   r	   Úgetfpq  s    zAifc_read.getfpc                 C   s   d| _ d| _d S )Nr   r   )rU   rQ   rd   r   r   r	   Úrewindt  s    zAifc_read.rewindc                 C   s    | j }|d k	rd | _ | ¡  d S rc   )rR   r`   ©rY   r   r   r   r	   r`   x  s    zAifc_read.closec                 C   s   | j S rc   )rQ   rd   r   r   r	   Útell~  s    zAifc_read.tellc                 C   s   | j S rc   )Ú
_nchannelsrd   r   r   r	   Úgetnchannels�  s    zAifc_read.getnchannelsc                 C   s   | j S rc   )Ú_nframesrd   r   r   r	   Ú
getnframes„  s    zAifc_read.getnframesc                 C   s   | j S rc   )Ú
_sampwidthrd   r   r   r	   Úgetsampwidth‡  s    zAifc_read.getsampwidthc                 C   s   | j S rc   )Ú
_frameraterd   r   r   r	   ÚgetframerateŠ  s    zAifc_read.getframeratec                 C   s   | j S rc   ©Ú	_comptyperd   r   r   r	   Úgetcomptype�  s    zAifc_read.getcomptypec                 C   s   | j S rc   ©Ú	_compnamerd   r   r   r	   Úgetcompname�  s    zAifc_read.getcompnamec                 C   s*   t |  ¡ |  ¡ |  ¡ |  ¡ |  ¡ |  ¡ ƒS rc   )rD   ro   rs   ru   rq   rx   r{   rd   r   r   r	   Ú	getparams–  s      þzAifc_read.getparamsc                 C   s   t | jƒdkrd S | jS ©Nr   ©r:   rP   rd   r   r   r	   Ú
getmarkers›  s    zAifc_read.getmarkersc                 C   s2   | j D ]}||d kr|  S qtd |¡ƒ‚d S ©Nr   zmarker {0!r} does not exist©rP   r   Úformat©rY   ÚidÚmarkerr   r   r	   Úgetmark   s    

zAifc_read.getmarkc                 C   s*   |dk s|| j krtdƒ‚|| _d| _d S )Nr   zposition not in ranger   )rp   r   rQ   rU   )rY   Úposr   r   r	   Úsetpos¦  s    zAifc_read.setposc                 C   s–   | j rD| j d¡ | j d¡}| j| j }|r>| j |d ¡ d| _ |dkrPdS | j || j ¡}| jrv|rv|  |¡}| jt|ƒ| j| j	   | _|S )Nr   rK   r   )
rU   rT   Úseekr   rQ   Ú
_framesizerO   r:   rn   rr   )rY   Únframesr    r‡   r   r   r   r	   Ú
readframes¬  s     

ÿ
zAifc_read.readframesc                 C   s   dd l }| |d¡S ©Nr   r   )ÚaudioopZalaw2lin©rY   r   rŽ   r   r   r	   Ú	_alaw2linÁ  s    zAifc_read._alaw2linc                 C   s   dd l }| |d¡S r�   )rŽ   Zulaw2linr�   r   r   r	   Ú	_ulaw2linÅ  s    zAifc_read._ulaw2linc                 C   s2   dd l }t| dƒsd | _| |d| j¡\}| _|S ©Nr   Ú_adpcmstater   )rŽ   Úhasattrr“   Z	adpcm2linr�   r   r   r	   Ú
_adpcm2linÉ  s
    
zAifc_read._adpcm2linc                 C   sV  t |ƒ| _t|ƒ| _t |ƒd d | _tt|ƒƒ| _| jdkrFtdƒ‚| jdkrXtdƒ‚| j| j | _	| j
�rFd}|jdkr�d}t d¡ d	|_| d
¡| _|rÞt|j d¡ƒ}|d@ dkrÄ|d }|j| |_|j dd¡ t|ƒ| _| jdk�rR| jdk�r
| j| _n4| jdk�r | j| _n| jdk�r6| j| _ntdƒ‚d| _nd| _d| _d S )Né   rK   r   úbad sample widthúbad # of channelsé   r   zWarning: bad COMM chunk sizeé   r   r"   ó   NONEó   G722©ó   ulawó   ULAW©ó   alawó   ALAWúunsupported compression typer   ó   not compressed)r   rn   r   rp   rr   r@   r-   rt   r   rŠ   rS   Z	chunksizeÚwarningsÚwarnr   rw   r   r   r‰   r!   rz   r•   rO   r‘   r�   )rY   rZ   Zkludger   r   r   r	   rV   Ñ  sD    









zAifc_read._read_comm_chunkc                 C   s–   t |ƒ}zDt|ƒD ]6}t |ƒ}t|ƒ}t|ƒ}|s6|r| j |||f¡ qW nD tk
r�   dt| jƒt| jƒdkrxdnd|f }t 	|¡ Y nX d S )Nz;Warning: MARK chunk contains only %s marker%s instead of %sr   Ú r<   )
r   Úranger   r!   rP   Úappendr   r:   r¥   r¦   )rY   rZ   ZnmarkersÚir„   r‡   ÚnameÚwr   r   r	   rW   û  s    ÿÿzAifc_read._readmark)r   r   r   rR   r[   rb   re   ri   rj   rk   r`   rm   ro   rq   rs   ru   rx   r{   r|   r   r†   rˆ   rŒ   r�   r‘   r•   rV   rW   r   r   r   r	   rE     s2   $(*rE   c                   @   s0  e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ Z	dd„ Z
dd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zd d!„ Zd"d#„ Zd$d%„ Zd&d'„ Zd(d)„ Zd*d+„ Zd,d-„ Zd.d/„ Zd0d1„ Zd2d3„ Zd4d5„ Zd6d7„ Zd8d9„ Zd:d;„ Z d<d=„ Z!d>d?„ Z"d@dA„ Z#dBdC„ Z$dDdE„ Z%dFdG„ Z&dHdI„ Z'dS )JÚ
Aifc_writeNc                 C   s\   t |tƒrNt |d¡}z|  |¡ W n   | ¡  ‚ Y nX | d¡rXd| _n
|  |¡ d S )NÚwbz.aiffr   )r]   r^   r_   r   r[   r`   ÚendswithrS   ra   r   r   r	   rb   /  s    

zAifc_write.__init__c                 C   s^   || _ t| _d| _d| _d | _d| _d| _d| _d| _	d| _
d| _d| _g | _d| _d| _d S )Nr›   r¤   r   r   )rR   Ú_AIFC_versionrN   rw   rz   rO   rn   rr   rt   rp   Ú_nframeswrittenÚ_datawrittenÚ_datalengthrP   Ú_marklengthrS   rl   r   r   r	   r[   ?  s    zAifc_write.initfpc                 C   s   |   ¡  d S rc   rf   rd   r   r   r	   Ú__del__P  s    zAifc_write.__del__c                 C   s   | S rc   r   rd   r   r   r	   re   S  s    zAifc_write.__enter__c                 G   s   |   ¡  d S rc   rf   rg   r   r   r	   ri   V  s    zAifc_write.__exit__c                 C   s   | j rtdƒ‚d| _d S )Nú0cannot change parameters after starting to writer   ©r±   r   rS   rd   r   r   r	   Úaiff\  s    zAifc_write.aiffc                 C   s   | j rtdƒ‚d| _d S )Nr¶   r   r·   rd   r   r   r	   Úaifca  s    zAifc_write.aifcc                 C   s(   | j rtdƒ‚|dk rtdƒ‚|| _d S )Nr¶   r   r˜   )r±   r   rn   )rY   Ú	nchannelsr   r   r	   Úsetnchannelsf  s
    zAifc_write.setnchannelsc                 C   s   | j stdƒ‚| j S )Nznumber of channels not set)rn   r   rd   r   r   r	   ro   m  s    zAifc_write.getnchannelsc                 C   s0   | j rtdƒ‚|dk s|dkr&tdƒ‚|| _d S )Nr¶   r   r   r—   )r±   r   rr   )rY   Ú	sampwidthr   r   r	   Úsetsampwidthr  s
    zAifc_write.setsampwidthc                 C   s   | j stdƒ‚| j S )Nzsample width not set)rr   r   rd   r   r   r	   rs   y  s    zAifc_write.getsampwidthc                 C   s(   | j rtdƒ‚|dkrtdƒ‚|| _d S )Nr¶   r   zbad frame rate)r±   r   rt   )rY   Ú	framerater   r   r	   Úsetframerate~  s
    zAifc_write.setframeratec                 C   s   | j stdƒ‚| j S )Nzframe rate not set)rt   r   rd   r   r   r	   ru   …  s    zAifc_write.getframeratec                 C   s   | j rtdƒ‚|| _d S )Nr¶   )r±   r   rp   )rY   r‹   r   r   r	   Ú
setnframesŠ  s    zAifc_write.setnframesc                 C   s   | j S rc   ©r±   rd   r   r   r	   rq   �  s    zAifc_write.getnframesc                 C   s.   | j rtdƒ‚|dkrtdƒ‚|| _|| _d S ©Nr¶   )r›   rž   rŸ   r¡   r¢   rœ   r£   )r±   r   rw   rz   )rY   ÚcomptypeÚcompnamer   r   r	   Úsetcomptype’  s    zAifc_write.setcomptypec                 C   s   | j S rc   rv   rd   r   r   r	   rx   ›  s    zAifc_write.getcomptypec                 C   s   | j S rc   ry   rd   r   r   r	   r{   ž  s    zAifc_write.getcompnamec                 C   sf   |\}}}}}}| j rtdƒ‚|dkr.tdƒ‚|  |¡ |  |¡ |  |¡ |  |¡ |  ||¡ d S rÂ   )r±   r   r»   r½   r¿   rÀ   rÅ   )rY   Zparamsrº   r¼   r¾   r‹   rÃ   rÄ   r   r   r	   Ú	setparams¦  s    



zAifc_write.setparamsc                 C   s8   | j r| jr| jstdƒ‚t| j | j| j| j| j| jƒS )Nznot all parameters set)rn   rr   rt   r   rD   rp   rw   rz   rd   r   r   r	   r|   ³  s      ÿzAifc_write.getparamsc                 C   s„   |dkrt dƒ‚|dk r t dƒ‚t|tƒs2t dƒ‚tt| jƒƒD ],}|| j| d kr@|||f| j|<  d S q@| j |||f¡ d S )Nr   zmarker ID must be > 0zmarker position must be >= 0zmarker name must be bytes)r   r]   Úbytesr¨   r:   rP   r©   )rY   r„   r‡   r«   rª   r   r   r	   Úsetmark¹  s    
zAifc_write.setmarkc                 C   s2   | j D ]}||d kr|  S qtd |¡ƒ‚d S r€   r�   rƒ   r   r   r	   r†   Æ  s    

zAifc_write.getmarkc                 C   s   t | jƒdkrd S | jS r}   r~   rd   r   r   r	   r   Ì  s    zAifc_write.getmarkersc                 C   s   | j S rc   rÁ   rd   r   r   r	   rm   Ñ  s    zAifc_write.tellc                 C   sz   t |ttfƒst|ƒ d¡}|  t|ƒ¡ t|ƒ| j| j  }| j	rN|  	|¡}| j
 |¡ | j| | _| jt|ƒ | _d S )Nr8   )r]   rÇ   Ú	bytearrayÚ
memoryviewÚcastÚ_ensure_header_writtenr:   rr   rn   rO   rR   r/   r±   r²   )rY   r   r‹   r   r   r	   ÚwriteframesrawÔ  s    
zAifc_write.writeframesrawc                 C   s.   |   |¡ | j| jks"| j| jkr*|  ¡  d S rc   )rÍ   r±   rp   r³   r²   Ú_patchheader)rY   r   r   r   r	   Úwriteframesß  s
    

ÿzAifc_write.writeframesc                 C   sŽ   | j d krd S z^|  d¡ | jd@ r<| j  d¡ | jd | _|  ¡  | j| jksb| j	| jksb| j
rj|  ¡  W 5 d | _| j }d | _ | ¡  X d S )Nr   r   r9   )rR   rO   r`   rÌ   r²   r/   Ú_writemarkersr±   rp   r³   r´   rÎ   )rY   r(   r   r   r	   r`   å  s$    



ÿþzAifc_write.closec                 C   s   dd l }| |d¡S r�   )rŽ   Zlin2alawr�   r   r   r	   Ú	_lin2alawþ  s    zAifc_write._lin2alawc                 C   s   dd l }| |d¡S r�   )rŽ   Zlin2ulawr�   r   r   r	   Ú	_lin2ulaw  s    zAifc_write._lin2ulawc                 C   s2   dd l }t| dƒsd | _| |d| j¡\}| _|S r’   )rŽ   r”   r“   Z	lin2adpcmr�   r   r   r	   Ú
_lin2adpcm  s
    
zAifc_write._lin2adpcmc                 C   sf   | j sb| jdkr.| jsd| _| jdkr.tdƒ‚| js<tdƒ‚| jsJtdƒ‚| jsXtdƒ‚|  |¡ d S )N©rŸ   rž   r¢   r¡   rœ   r   zRsample width must be 2 when compressing with ulaw/ULAW, alaw/ALAW or G7.22 (ADPCM)z# channels not specifiedzsample width not specifiedzsampling rate not specified)r±   rw   rr   r   rn   rt   Ú_write_header)rY   Zdatasizer   r   r	   rÌ     s    

z!Aifc_write._ensure_header_writtenc                 C   s>   | j dkr| j| _n&| j dkr(| j| _n| j dkr:| j| _d S )Nrœ   r�   r    )rw   rÓ   rO   rÒ   rÑ   rd   r   r   r	   Ú_init_compression  s    




zAifc_write._init_compressionc              	   C   sJ  | j r| jdkr|  ¡  | j d¡ | js<|| j| j  | _| j| j | j | _| jd@ rf| jd | _| j rÊ| jdkrš| jd | _| jd@ rÊ| jd | _n0| jdkrÊ| jd d | _| jd@ rÊ| jd | _z| j 	¡ | _
W n ttfk
rø   d | _
Y nX |  | j¡}| j �rB| j d	¡ | j d
¡ t| jdƒ t| j| jƒ n| j d¡ | j d¡ t| j|ƒ t| j| jƒ | j
d k	�rŒ| j 	¡ | _t| j| jƒ | jdk�r´t| jdƒ nt| j| jd ƒ t| j| jƒ | j �rø| j | j¡ t| j| jƒ | j d¡ | j
d k	�r| j 	¡ | _t| j| jd ƒ t| jdƒ t| jdƒ d S )Nr›   rF   r   )rž   rŸ   r¡   r¢   r   rœ   é   r   rH   rL   rG   rI   rÔ   rK   rJ   r   )rS   rw   rÖ   rR   r/   rp   rn   rr   r³   rm   Ú_form_length_posÚAttributeErrorÚOSErrorÚ_write_form_lengthr6   rN   r3   Ú_nframes_posrA   rt   r=   rz   Ú_ssnd_length_pos)rY   Z
initlengthÚ
commlengthr   r   r	   rÕ   %  s^    




zAifc_write._write_headerc                 C   s\   | j r*dt| jƒ }|d@ r$|d }d}nd}d}t| jd| | j d | d | ƒ |S )	Nrš   r   é   r™   r   r   rK   é   )rS   r:   rz   r6   rR   r´   )rY   Ú
datalengthrÞ   Z
verslengthr   r   r	   rÛ   X  s"    ÿÿÿÿzAifc_write._write_form_lengthc                 C   sÜ   | j  ¡ }| jd@ r,| jd }| j  d¡ n| j}|| jkrd| j| jkrd| jdkrd| j  |d¡ d S | j  | j	d¡ |  
|¡}| j  | jd¡ t| j | jƒ | j  | jd¡ t| j |d ƒ | j  |d¡ | j| _|| _d S )Nr   r9   r   rK   )rR   rm   r²   r/   r³   rp   r±   r´   r‰   rØ   rÛ   rÜ   r6   rÝ   )rY   Zcurposrá   r    r   r   r	   rÎ   e  s*    




ÿþ
zAifc_write._patchheaderc                 C   sÊ   t | jƒdkrd S | j d¡ d}| jD ]:}|\}}}|t |ƒ d d }t |ƒd@ dkr(|d }q(t| j|ƒ |d | _t| jt | jƒƒ | jD ]2}|\}}}t| j|ƒ t| j|ƒ t| j|ƒ q’d S )Nr   rM   r   r   é   rK   )r:   rP   rR   r/   r6   r´   r3   r=   )rY   r   r…   r„   r‡   r«   r   r   r	   rÐ   {  s"    





zAifc_write._writemarkers)(r   r   r   rR   rb   r[   rµ   re   ri   r¸   r¹   r»   ro   r½   rs   r¿   ru   rÀ   rq   rÅ   rx   r{   rÆ   r|   rÈ   r†   r   rm   rÍ   rÏ   r`   rÑ   rÒ   rÓ   rÌ   rÖ   rÕ   rÛ   rÎ   rÐ   r   r   r   r	   r­     sJ   	3r­   c                 C   sJ   |d krt | dƒr| j}nd}|dkr.t| ƒS |dkr>t| ƒS tdƒ‚d S )NÚmoder\   )Úrr\   )r¬   r®   z$mode must be 'r', 'rb', 'w', or 'wb')r”   rã   rE   r­   r   ©r(   rã   r   r   r	   r   Ž  s    
c                 C   s   t jdtdd� t| |d�S )NzBaifc.openfp is deprecated since Python 3.7. Use aifc.open instead.r   )Ú
stacklevel)rã   )r¥   r¦   ÚDeprecationWarningr   rå   r   r   r	   r   ›  s
     ÿÚ__main__r   z/usr/demos/data/audio/bach.aiffrä   ZReadingznchannels =znframes   =zsampwidth =zframerate =zcomptype  =zcompname  =r   ZWritingr¬   i   zDone.)N)N)8r   r_   r¥   Ú__all__Ú	Exceptionr   r°   r   r   r   r   r!   r&   r-   r3   r4   r5   r6   r=   rA   rZ   rB   ÚcollectionsrC   rD   rº   Ú__doc__r¼   r¾   r‹   rÃ   rÄ   rE   r­   r   r   r   ÚsysÚargvr©   Úfnr(   Úprintro   rq   rs   ru   rx   r{   ZgnÚgrÆ   r|   rŒ   r   rÏ   r   r   r   r	   Ú<module>‰   sz   

!ÿ     







