AlkantarClanX12

Your IP : 3.15.14.245


Current Path : /opt/alt/python37/lib64/python3.7/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib64/python3.7/__pycache__/sunau.cpython-37.opt-2.pyc

B

YI~d�G�@s�ddlmZddlZedd�ZdZdZdZdZd	Zd
Z	dZ
dZd
ZdZ
dZdZdZdZeeeee	egZGdd�de�Zdd�Zdd�ZGdd�d�ZGdd�d�Zd!dd�Zd"dd �ZdS)#�)�
namedtupleN�
_sunau_paramsz7nchannels sampwidth framerate nframes comptype compnameidns.������������l��c@seZdZdS)�ErrorN)�__name__�
__module__�__qualname__�rr�*/opt/alt/python37/lib64/python3.7/sunau.pyr�srcCs<d}x2td�D]&}|�d�}|s$t�|dt|�}qW|S)Nrrr�)�range�read�EOFError�ord)�file�x�iZbyterrr�	_read_u32�s
rcCsJg}x2td�D]&}t|d�\}}|�dt|��|}qW|�t|��dS)Nrrr)r�divmod�insert�int�write�bytes)rr�datar�d�mrrr�
_write_u32�sr'c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)S)*�Au_readcCs@t|�td�kr,ddl}|�|d�}d|_nd|_|�|�dS)N�r�rbTF)�type�builtins�open�_opened�initfp)�self�fr,rrr�__init__�szAu_read.__init__cCs|jr|��dS)N)�_file�close)r0rrr�__del__�szAu_read.__del__cCs|S)Nr)r0rrr�	__enter__�szAu_read.__enter__cGs|��dS)N)r4)r0�argsrrr�__exit__�szAu_read.__exit__c	Cs�||_d|_tt|��}|tkr(td��tt|��|_|jdkrHtd��|jdkrZtd��t|�|_|jtkrzt|j�|_tt|��|_	|j	t
kr�td��|j	ttfkr�d|_
d	|_nj|j	tkr�d	|_|_
nR|j	tkr�d|_|_
n:|j	tkr�d
|_|_
n"|j	tk�rd|_|_
ntd��tt|��|_tt|��|_|j�sLtd
��|j|j|_|jdk�r�|�|jd�|_|j�d�\|_}}nd|_y|��|_Wn ttfk
�r�d|_YnXdS)Nrzbad magic numberrzheader size too small�dzheader size ridiculously largezencoding not (yet) supportedrrrrzunknown encodingzbad # of channels��)r3�	_soundposr!r�AUDIO_FILE_MAGICrZ	_hdr_size�
_data_size�AUDIO_UNKNOWN_SIZE�	_encoding�_simple_encodings�AUDIO_FILE_ENCODING_MULAW_8�AUDIO_FILE_ENCODING_ALAW_8�
_sampwidth�
_framesize�AUDIO_FILE_ENCODING_LINEAR_8�AUDIO_FILE_ENCODING_LINEAR_16�AUDIO_FILE_ENCODING_LINEAR_24�AUDIO_FILE_ENCODING_LINEAR_32�
_framerate�
_nchannelsr�_info�	partition�tell�	_data_pos�AttributeError�OSError)r0r�magic�_rrrr/�sT







zAu_read.initfpcCs|jS)N)r3)r0rrr�getfp�sz
Au_read.getfpcCs|jS)N)rK)r0rrr�getnchannels�szAu_read.getnchannelscCs|jS)N)rD)r0rrr�getsampwidth�szAu_read.getsampwidthcCs|jS)N)rJ)r0rrr�getframerate�szAu_read.getframeratecCs(|jtkrtS|jtkr$|j|jSdS)Nr)r>r?r@rArE)r0rrr�
getnframes�s


zAu_read.getnframescCs$|jtkrdS|jtkrdSdSdS)N�ULAW�ALAW�NONE)r@rBrC)r0rrr�getcomptype�s


zAu_read.getcomptypecCs$|jtkrdS|jtkrdSdSdS)NzCCITT G.711 u-lawzCCITT G.711 A-lawznot compressed)r@rBrC)r0rrr�getcompname�s


zAu_read.getcompnamecCs*t|��|��|��|��|��|���S)N)rrUrVrWrXr\r])r0rrr�	getparamsszAu_read.getparamscCsdS)Nr)r0rrr�
getmarkersszAu_read.getmarkerscCstd��dS)Nzno marks)r)r0�idrrr�getmarkszAu_read.getmarkcCsp|jtkrl|tkr|j��}n|j�||j�}|jt|�|j7_|jtkrhddl	}|�
||j�}|SdS)Nr)r@rAr?r3rrEr<�lenrB�audioopZulaw2linrD)r0�nframesr$rcrrr�
readframess

zAu_read.readframescCs*|jdkrtd��|j�|j�d|_dS)Nzcannot seekr)rOrQr3�seekr<)r0rrr�rewinds
zAu_read.rewindcCs|jS)N)r<)r0rrrrN!szAu_read.tellcCsP|dks||��krtd��|jdkr.td��|j�|j||j�||_dS)Nrzposition not in rangezcannot seek)rXrrOrQr3rfrEr<)r0�posrrr�setpos$s
zAu_read.setposcCs"|j}|rd|_|jr|��dS)N)r3r.r4)r0rrrrr4,s
z
Au_read.closeN)rrrr2r5r6r8r/rTrUrVrWrXr\r]r^r_rarergrNrir4rrrrr(�s(	.
r(c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3S)4�Au_writecCs@t|�td�kr,ddl}|�|d�}d|_nd|_|�|�dS)Nr)r�wbTF)r+r,r-r.r/)r0r1r,rrrr25szAu_write.__init__cCs|jr|��d|_dS)N)r3r4)r0rrrr5>szAu_write.__del__cCs|S)Nr)r0rrrr6CszAu_write.__enter__cGs|��dS)N)r4)r0r7rrrr8FszAu_write.__exit__cCsF||_d|_d|_d|_d|_t|_d|_d|_d|_	d|_
d|_dS)Nrr;rY)r3rJrKrDrEr?�_nframes�_nframeswritten�_datawritten�_datalengthrL�	_comptype)r0rrrrr/IszAu_write.initfpcCs(|jrtd��|dkrtd��||_dS)Nz0cannot change parameters after starting to write)rrrz"only 1, 2, or 4 channels supported)rmrrK)r0�	nchannelsrrr�setnchannelsVs
zAu_write.setnchannelscCs|jstd��|jS)Nznumber of channels not set)rKr)r0rrrrU]szAu_write.getnchannelscCs(|jrtd��|dkrtd��||_dS)Nz0cannot change parameters after starting to write)rrrrzbad sample width)rmrrD)r0�	sampwidthrrr�setsampwidthbs
zAu_write.setsampwidthcCs|jstd��|jS)Nzsample width not specified)rJrrD)r0rrrrViszAu_write.getsampwidthcCs|jrtd��||_dS)Nz0cannot change parameters after starting to write)rmrrJ)r0�	frameraterrr�setframeratenszAu_write.setframeratecCs|jstd��|jS)Nzframe rate not set)rJr)r0rrrrWsszAu_write.getframeratecCs(|jrtd��|dkrtd��||_dS)Nz0cannot change parameters after starting to writerz# of frames cannot be negative)rmrrl)r0rdrrr�
setnframesxs
zAu_write.setnframescCs|jS)N)rm)r0rrrrXszAu_write.getnframescCs|dkr||_ntd��dS)N)r[rYzunknown compression type)rpr)r0r+�namerrr�setcomptype�szAu_write.setcomptypecCs|jS)N)rp)r0rrrr\�szAu_write.getcomptypecCs$|jdkrdS|jdkrdSdSdS)NrYzCCITT G.711 u-lawrZzCCITT G.711 A-lawznot compressed)rp)r0rrrr]�s


zAu_write.getcompnamecCsH|\}}}}}}|�|�|�|�|�|�|�|�|�||�dS)N)rrrtrvrwry)r0�paramsrqrsrurdZcomptypeZcompnamerrr�	setparams�s



zAu_write.setparamscCs*t|��|��|��|��|��|���S)N)rrUrVrWrXr\r])r0rrrr^�szAu_write.getparamscCs|jS)N)rm)r0rrrrN�sz
Au_write.tellcCs~t|ttf�st|��d�}|��|jdkrDddl}|�||j	�}t
|�|j}|j�
|�|j||_|jt
|�|_dS)N�BrYr)�
isinstancer#�	bytearray�
memoryview�cast�_ensure_header_writtenrprcZlin2ulawrDrbrEr3r"rmrn)r0r$rcrdrrr�writeframesraw�s
zAu_write.writeframesrawcCs.|�|�|j|jks"|j|jkr*|��dS)N)r�rmrlrorn�_patchheader)r0r$rrr�writeframes�s
zAu_write.writeframescCs^|jrZz6|��|j|jks(|j|jkr0|��|j��Wd|j}d|_|jrX|�	�XdS)N)
r3r�rmrlrornr��flushr.r4)r0rrrrr4�szAu_write.closecCs<|js8|jstd��|js"td��|js0td��|��dS)Nz# of channels not specifiedzsample width not specifiedzframe rate not specified)rmrKrrDrJ�
_write_header)r0rrrr��szAu_write._ensure_header_writtenc	Cs�|jdkrl|jdkr t}d|_q�|jdkr6t}d|_q�|jdkrLt}d|_q�|jdkrbt}d|_q�td��n|jdkr�t}d|_ntd��|j|j	|_t
|jt�dt
|j�}|d	d
@}t
|j|�|jtkr�t}n|j|j}y|j��|_Wn ttfk
�rd|_YnXt
|j|�||_t
|j|�t
|j|j�t
|j|j	�|j�|j�|j�d|t
|j�d�dS)
Nr[rrrrzinternal errorrYr
r
i����r:r)rprDrFrErGrHrIrrBrKr'r3r=rbrLrlr?rN�_form_length_posrPrQrorJr")r0�encodingZheader_size�lengthrrrr��sJ







zAu_write._write_headercCsH|jdkrtd��|j�|j�t|j|j�|j|_|j�dd�dS)Nzcannot seekrr)r�rQr3rfr'rnro)r0rrrr��s
zAu_write._patchheaderN)rrrr2r5r6r8r/rrrUrtrVrvrWrwrXryr\r]r{r^rNr�r�r4r�r�r�rrrrrj3s2	

*rjcCsJ|dkrt|d�r|j}nd}|dkr.t|�S|dkr>t|�Std��dS)N�moder*)�rr*)�wrkz$mode must be 'r', 'rb', 'w', or 'wb')�hasattrr�r(rjr)r1r�rrrr-s
r-cCstjdtdd�t||d�S)NzDsunau.openfp is deprecated since Python 3.7. Use sunau.open instead.r)�
stacklevel)r�)�warnings�warn�DeprecationWarningr-)r1r�rrr�openfps
r�)N)N)�collectionsrr�rr=rBrFrGrHrIZAUDIO_FILE_ENCODING_FLOATZAUDIO_FILE_ENCODING_DOUBLEZAUDIO_FILE_ENCODING_ADPCM_G721ZAUDIO_FILE_ENCODING_ADPCM_G722Z AUDIO_FILE_ENCODING_ADPCM_G723_3Z AUDIO_FILE_ENCODING_ADPCM_G723_5rCr?rA�	Exceptionrrr'r(rjr-r�rrrr�<module>js@	Q