Viewing File: /opt/alt/python35/lib64/python3.5/__pycache__/sunau.cpython-35.opt-2.pyc



]F@sddlmZeddZdZdZdZdZdZd	Zd
Z	dZ
dZd
ZdZ
dZdZdZeeeeeegZGdddeZddZddZGdddZGdddZdddZeZdS))
namedtuple
_sunau_paramsz7nchannels sampwidth framerate nframes comptype compnameidns.lc@seZdZdS)ErrorN)__name__
__module____qualname__rr*/opt/alt/python35/lib64/python3.5/sunau.pyrsrcCsPd}xCtdD]5}|jd}|s4t|dt|}qW|S)Nrrr)rangereadEOFErrorord)filexiZbyterrr	_read_u32srcCseg}xEtdD]7}t|d\}}|jdt||}qW|jt|dS)Nrrr)rdivmodinsertintwritebytes)rrdatardmrrr
_write_u32s
r'c@seZdZddZddZddZddZd	d
ZddZd
dZ	ddZ
ddZddZddZ
ddZddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)S)*Au_readcCs\t|tdkrBddl}|j|d}d|_n	d|_|j|dS)NrrbTF)typebuiltinsopen_openedinitfp)selffr,rrr__init__s	zAu_read.__init__cCs|jr|jdS)N)_fileclose)r0rrr__del__s	zAu_read.__del__cCs|S)Nr)r0rrr	__enter__szAu_read.__enter__cGs|jdS)N)r4)r0argsrrr__exit__szAu_read.__exit__cCso||_d|_tt|}|tkr<tdtt||_|jdkrltd|jdkrtdt||_|jtkrt|j|_tt||_	|j	t
krtd|j	ttfkrd|_
d	|_n|j	tkr3d	|_|_
nr|j	tkrUd|_|_
nP|j	tkrwd
|_|_
n.|j	tkrd|_|_
ntdtt||_tt||_|j|j|_|jdkr+|j|jd|_|jjd
\|_}}n	d|_y|j|_Wn!ttfk
rjd|_YnXdS)Nrzbad magic numberrzheader size too smalldzheader size ridiculously largezencoding not (yet) supportedrrrrzunknown encodings)r3	_soundposr!rAUDIO_FILE_MAGICrZ	_hdr_size
_data_sizeAUDIO_UNKNOWN_SIZE	_encoding_simple_encodingsAUDIO_FILE_ENCODING_MULAW_8AUDIO_FILE_ENCODING_ALAW_8
_sampwidth
_framesizeAUDIO_FILE_ENCODING_LINEAR_8AUDIO_FILE_ENCODING_LINEAR_16AUDIO_FILE_ENCODING_LINEAR_24AUDIO_FILE_ENCODING_LINEAR_32
_framerate
_nchannelsr_info	partitiontell	_data_posAttributeErrorOSError)r0rmagic_rrrr/sP				!	zAu_read.initfpcCs|jS)N)r3)r0rrrgetfpsz
Au_read.getfpcCs|jS)N)rJ)r0rrrgetnchannelsszAu_read.getnchannelscCs|jS)N)rC)r0rrrgetsampwidthszAu_read.getsampwidthcCs|jS)N)rI)r0rrrgetframerateszAu_read.getframeratecCs4|jtkrtS|jtkr0|j|jSdS)Nr)r=r>r?r@rD)r0rrr
getnframess
zAu_read.getnframescCs.|jtkrdS|jtkr&dSdSdS)NULAWALAWNONE)r?rArB)r0rrrgetcomptypes
zAu_read.getcomptypecCs.|jtkrdS|jtkr&dSdSdS)NzCCITT G.711 u-lawzCCITT G.711 A-lawznot compressed)r?rArB)r0rrrgetcompnames
zAu_read.getcompnamecCs=t|j|j|j|j|j|jS)N)rrTrUrVrWr[r\)r0rrr	getparamsszAu_read.getparamscCsdS)Nr)r0rrr
getmarkersszAu_read.getmarkerscCstddS)Nzno marks)r)r0idrrrgetmarkszAu_read.getmarkcCs|jtkr|tkr-|jj}n|jj||j}|jt||j7_|jtkrddl	}|j
||j}|SdS)Nr)r?r@r>r3rrDr;lenrAaudioopZulaw2linrC)r0nframesr$rbrrr
readframesszAu_read.readframescCs;|jdkrtd|jj|jd|_dS)Nzcannot seekr)rNrPr3seekr;)r0rrrrewindszAu_read.rewindcCs|jS)N)r;)r0rrrrMszAu_read.tellcCsp|dks||jkr*td|jdkrEtd|jj|j||j||_dS)Nrzposition not in rangezcannot seek)rWrrNrPr3rerDr;)r0posrrrsetpos!szAu_read.setposcCs/|j}|r+d|_|jr+|jdS)N)r3r.r4)r0rrrrr4)s
			z
Au_read.closeN)rrrr2r5r6r8r/rSrTrUrVrWr[r\r]r^r`rdrfrMrhr4rrrrr(s(	,
r(c@s<eZdZddZddZddZddZd	d
ZddZd
dZ	ddZ
ddZddZddZ
ddZddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1d2Zd3S)4Au_writecCs\t|tdkrBddl}|j|d}d|_n	d|_|j|dS)Nr)rwbTF)r+r,r-r.r/)r0r1r,rrrr22s	zAu_write.__init__cCs |jr|jd|_dS)N)r3r4)r0rrrr5;s	
zAu_write.__del__cCs|S)Nr)r0rrrr6@szAu_write.__enter__cGs|jdS)N)r4)r0r7rrrr8CszAu_write.__exit__cCsg||_d|_d|_d|_d|_t|_d|_d|_d|_	d|_
d|_dS)Nrr:rX)r3rIrJrCrDr>_nframes_nframeswritten_datawritten_datalengthrK	_comptype)r0rrrrr/Fs										zAu_write.initfpcCs:|jrtd|dkr-td||_dS)Nz0cannot change parameters after starting to writerrrz"only 1, 2, or 4 channels supported)rrr)rlrrJ)r0	nchannelsrrrsetnchannelsSs
	zAu_write.setnchannelscCs|jstd|jS)Nznumber of channels not set)rJr)r0rrrrTZs	zAu_write.getnchannelscCs:|jrtd|dkr-td||_dS)Nz0cannot change parameters after starting to writerrrrzbad sample width)rrrr)rlrrC)r0	sampwidthrrrsetsampwidth_s
	zAu_write.setsampwidthcCs|jstd|jS)Nzsample width not specified)rIrrC)r0rrrrUfs	zAu_write.getsampwidthcCs"|jrtd||_dS)Nz0cannot change parameters after starting to write)rlrrI)r0	frameraterrrsetframerateks	zAu_write.setframeratecCs|jstd|jS)Nzframe rate not set)rIr)r0rrrrVps	zAu_write.getframeratecCs:|jrtd|dkr-td||_dS)Nz0cannot change parameters after starting to writerz# of frames cannot be negative)rlrrk)r0rcrrr
setnframesus
	zAu_write.setnframescCs|jS)N)rl)r0rrrrW|szAu_write.getnframescCs(|dkr||_ntddS)NrZrXzunknown compression type)rZrX)ror)r0r+namerrrsetcomptypeszAu_write.setcomptypecCs|jS)N)ro)r0rrrr[szAu_write.getcomptypecCs.|jdkrdS|jdkr&dSdSdS)NrXzCCITT G.711 u-lawrYzCCITT G.711 A-lawznot compressed)ro)r0rrrr\s
zAu_write.getcompnamecCs`|\}}}}}}|j||j||j||j||j||dS)N)rqrsrurvrx)r0paramsrprrrtrcZcomptypeZcompnamerrr	setparamss



zAu_write.setparamscCs=t|j|j|j|j|j|jS)N)rrTrUrVrWr[r\)r0rrrr]szAu_write.getparamscCs|jS)N)rl)r0rrrrMsz
Au_write.tellcCst|ttfs*t|jd}|j|jdkrdddl}|j||j	}t
||j}|jj
||j||_|jt
||_dS)NBrXr)
isinstancer#	bytearray
memoryviewcast_ensure_header_writtenrorbZlin2ulawrCrarDr3r"rlrm)r0r$rbrcrrrwriteframesraws
zAu_write.writeframesrawcCs?|j||j|jks1|j|jkr;|jdS)N)rrlrkrnrm_patchheader)r0r$rrrwriteframess
zAu_write.writeframescCs|jr{zI|j|j|jks:|j|jkrD|j|jjWd|j}d|_|jrz|j	XdS)N)
r3rrlrkrnrmrflushr.r4)r0rrrrr4s	

			zAu_write.closecCsV|jsR|jstd|js3td|jsHtd|jdS)Nz# of channels not specifiedzsample width not specifiedzframe rate not specified)rlrJrrCrI
_write_header)r0rrrrs				zAu_write._ensure_header_writtenc
Cs|jdkr|jdkr0t}d|_q|jdkrQt}d|_q|jdkrrt}d|_q|jdkrt}d|_qtdn-|jdkrt}d|_ntd|j|j	|_t
|jtdt
|j}|d	d@}t
|j||jtkr;t}n|j|j}y|jj|_Wn!ttfk
rd|_YnXt
|j|||_t
|j|t
|j|jt
|j|j	|jj|j|jjd
|t
|jddS)
NrZrrrrzinternal errorrXr
r
sri)rorCrErDrFrGrHrrArJr'r3r<rarKrkr>rM_form_length_posrOrPrnrIr")r0encodingZheader_sizelengthrrrrsJ		zAu_write._write_headercCsd|jdkrtd|jj|jt|j|j|j|_|jjdddS)Nzcannot seekrr)rrPr3rer'rmrn)r0rrrrszAu_write._patchheaderN)rrrr2r5r6r8r/rqrTrsrUrurVrvrWrxr[r\rzr]rMrrr4rrrrrrrri0s2	

*riNcCsi|dkr-t|dr'|j}nd}|dkrCt|S|dkrYt|StddS)	Nmoder*rwrjz$mode must be 'r', 'rb', 'w', or 'wb')rr*)rrj)hasattrrr(rir)r1rrrrr-s

r-)collectionsrrr<rArErFrGrHZAUDIO_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_5rBr>r@	Exceptionrrr'r(rir-Zopenfprrrr<module>js:			
Back to Directory File Manager