python (3.12.0)

(root)/
lib/
python3.12/
__pycache__/
wave.cpython-312.opt-2.pyc

ˑeX	ddlmZddlZddlZddlZgdZGddeZdZdZ	dZ
d	Zed
dZdZ
Gd
dZGddZGddZddZy))
namedtupleN)openError	Wave_read
Wave_writeceZdZy)rN)__name__
__module____qualname__8/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/wave.pyrrRsr
ris8q)NbhNi_wave_paramsz7nchannels sampwidth framerate nframes comptype compnamectt|}tdt||D]&}t|D]}|||z|||zdz
|z
<(t|S)Nrr)	bytearraylenrangebytes)datawidthswapped_datarjs     r	_byteswapr`skSY'L
1c$i
':u	:A.21q5kLUQ*+	::r
c<eZdZd	dZdZdZd
dZdZddZdZ	y)_Chunkcd|_||_|rd}nd}||_|jd|_t|jdkrt	tj|dz|jdd|_	|r|jdz
|_	d|_	|jj|_
d|_y#tj$rtdwxYw#tt f$r
d|_YywxYw)	NF><LrT)closedalignfileread	chunknamerEOFErrorstructunpack_from	chunksizeerror	size_readtelloffsetseekableAttributeErrorOSError)selfr(r'	bigendian
inclheaderstrflags      r__init__z_Chunk.__init__ks
GG	1t~~"N	%#//TYYq\J1MDN!^^a/DN	!))..*DK!DM||	%$	%(	"!DM	"s0C C%C"%C>=C>c	|jSN)r*r6s rgetnamez_Chunk.getnames8~~r
cf|js	|jd|_yy#d|_wxYw)NT)r&skipr=s rclosez_Chunk.closes.{{
#		"	#s'	0cH	|jrtd|jstd|dk(r||jz}n|dk(r||j
z}|dks||j
kDrt|jj|j|zd||_y)NI/O operation on closed filezcannot seekrr)
r&
ValueErrorr3r5r0r.RuntimeErrorr(seekr2)r6poswhences   rrGz_Chunk.seeks	
;;;<<}}-((Q;&C
q[&C7cDNN*		t{{S(!,r
cH|jrtd|jS)NrC)r&rEr0r=s rr1z_Chunk.tells;;;<<~~r
cX	|jrtd|j|jk\ry|dkr|j|jz
}||j|jz
kDr|j|jz
}|jj|}|jt
|z|_|j|jk(rS|jrG|jdzr8|jjd}|jt
|z|_|S)NrCr
rr)r&rEr0r.r(r)rr')r6sizerdummys    rr)z_Chunk.reads	
;;;<<>>T^^+!8>>DNN2D$..4>>11>>DNN2Dyy~~d##d)3>>T^^+::NNQIINN1%E!^^c%j8DNr
c 	|jrtd|jrk	|j|jz
}|j
r|jdzr|dz}|jj|d|j|z|_y|j|jkrWtd|j|jz
}|j|}|st|j|jkrVyy#t$rY|wxYw)NrCri )r&rEr3r.r0r'r(rGr5minr)r+)r6nrMs   rr@z_Chunk.skips	;;;<<==	
NNT^^3::4>>A#5AA		q!$!%!!3nnt~~-D$..4>>9:AIIaLE	nnt~~-

sA)D	D
D
N)TTF)r))
r	r
rr:r>rArGr1r)r@rr
rrrjs%!2#&
.r
rceZdZ	dZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZy)rcd|_d|_t|d|_|jj	dk7rtd|jj
ddk7rtdd|_d|_	d|_		t|jd}|j	}|d	k(r|j|d|_nI|d
k(rD|jstd||_|j|jz|_d|_	n|j|jr|jstdy#t$rY/wxYw)
Nr)r7RIFFz file does not start with RIFF idr#WAVEznot a WAVE filerfmt datazdata chunk before fmt chunkz#fmt chunk and/or data chunk missing)_convert	_soundposr_filer>rr)_fmt_chunk_read_data_chunk_data_seek_neededr+_read_fmt_chunkr.
_framesize_nframesr@)r6r(chunkr*s    rinitfpzWave_read.initfpsE
Da0
::7*:;;::??1()** %&D"
tzzq9

IG#$$U+'($g%++ =>>#(  %4?? B
)*&JJL#$##4+;+;=>>,<

s	E	EEcd|_t|trtj|d}||_	|j|y#|jr|j
xYw)Nrb_i_opened_the_file
isinstancestrbuiltinsrrbrAr6fs  rr:zWave_read.__init__sX"&a

a&A&'D#	KKN	&&	AA'c$|jyr<rAr=s r__del__zWave_read.__del__$

r
c|Sr<rr=s r	__enter__zWave_read.__enter__'r
c$|jyr<rnr6argss  r__exit__zWave_read.__exit__*rpr
c|jSr<)rZr=s rgetfpzWave_read.getfp0szzr
c d|_d|_y)Nrr)r]rYr=s rrewindzWave_read.rewind3s!"r
c^d|_|j}|rd|_|jyyr<)rZrfrAr6r(s  rrAzWave_read.close7s-
&&&*D#JJLr
c|jSr<)rYr=s rr1zWave_read.tell>~~r
c|jSr<)
_nchannelsr=s rgetnchannelszWave_read.getnchannelsAr
c|jSr<)r`r=s r
getnframeszWave_read.getnframesDs}}r
c|jSr<)
_sampwidthr=s rgetsampwidthzWave_read.getsampwidthGrr
c|jSr<)
_framerater=s rgetframeratezWave_read.getframerateJrr
c|jSr<	_comptyper=s rgetcomptypezWave_read.getcomptypeMrr
c|jSr<	_compnamer=s rgetcompnamezWave_read.getcompnamePrr
c	t|j|j|j|j	|j|j
Sr<)rrrrrrrr=s r	getparamszWave_read.getparamsSsQD--/1B1B1D((*DOO,='')4+;+;+=?	?r
cyr<rr=s r
getmarkerszWave_read.getmarkersXr
ctdNzno marksrr6ids  rgetmarkzWave_read.getmark[
Jr
c^|dks||jkDrtd||_d|_y)Nrzposition not in ranger)r`rrYr])r6rHs  rsetposzWave_read.setpos^s/7cDMM)/00!"r
cJ|jrZ|jjdd|j|jz}|r|jj|dd|_|dk(ry|jj||jz}|jdk7r)tjdk(rt||j}|jr|r|j|}|jt||j|jzzz|_|S)Nrr
rbig)
r]r\rGrYr_r)rsys	byteorderrrXrr)r6nframesrHrs    r
readframeszWave_read.readframesds!!!!!Q'..4??2C  %%c1-%&D"a<$$Wt%>???aCMMU$:T4??3D==T==&D#d)$//8Y*ZZr
c	tjd|jd\}|_|_}}|tk7r|tk7rtd|	tjd|jdd}|tk(r~	tjd|jd\}}}|jd	}	t|	d	krt	|	tk7r%	ddl}
d
|
j|	}t||d
zdz|_|jstd|jstd|j|jz|_d|_d|_y#tj
$rtdwxYw#tj
$rtdwxYw#tj
$rtdwxYw#t$rd}Yt|wxYw)Nz<HHLLHzunknown format: z<HrDrz<HHLr%zunknown extended format: )bytes_lezunknown extended formatbad sample widthbad # of channelsNONEznot compressed)r,r-r)rrr/r+WAVE_FORMAT_PCMWAVE_FORMAT_EXTENSIBLErrKSDATAFORMAT_SUBTYPE_PCMuuidUUID	Exceptionrr_rr)r6ra
wFormatTagdwAvgBytesPerSecwBlockAlign	sampwidthcbSizewValidBitsPerSample
dwChannelMask	SubFormatr
subformat_msgs            rr^zWave_read._read_fmt_chunkys	%Z`ZlZlmuw|xBxBCExF[GWJ:JK(Z;Q-Q
<==	%**4A?BI//
)=C=O=OPVX]XbXbcdXe=f:+]!JJrN	y>B&"N'44>&?		S\	@]?^$_MM**$q=Q.*+++,,//DOO;)?||	%$	%||	%$	%<<
)D(
)!>$=MM**>s65E/(F

AF+#G	/F

F(+G	G! G!N)r	r
rrbr:rorrrwryr{rAr1rrrrrrrrrrrr^rr
rrrsp<?>?
 #*"*r
rceZdZ	dZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZy)rcd|_t|trtj|d}||_	|j|y#|jr|j
xYw)Nwbrerjs  rr:zWave_write.__init__sX"&a

a&A&'D#	KKN	&&	rlc||_d|_d|_d|_d|_d|_d|_d|_d|_d|_	y)NrF)
rZrXrrrr`_nframeswritten_datawritten_datalength_headerwrittenr}s  rrbzWave_write.initfpsL


 #r
c$|jyr<rnr=s rrozWave_write.__del__rpr
c|Sr<rr=s rrrzWave_write.__enter__rsr
c$|jyr<rnrus  rrwzWave_write.__exit__rpr
c`|jrtd|dkrtd||_y)N0cannot change parameters after starting to writerr)rrr)r6	nchannelss  rsetnchannelszWave_write.setnchannelss1JKKq=+,,#r
cH|jstd|jS)Nznumber of channels not set)rrr=s rrzWave_write.getnchannelss455r
cj|jrtd|dks|dkDrtd||_y)Nrrr#r)rrr)r6rs  rsetsampwidthzWave_write.setsampwidths7JKKq=IM*++#r
cH|jstd|jS)Nzsample width not set)rrr=s rrzWave_write.getsampwidths.//r
c|jrtd|dkrtdtt||_y)Nrrzbad frame rate)rrintroundr)r6	framerates  rsetframeratezWave_write.setframerates;JKK>())eI./r
cH|jstd|jS)Nzframe rate not set)rrr=s rrzWave_write.getframerates,--r
c@|jrtd||_yNr)rrr`)r6rs  r
setnframeszWave_write.setnframessJKK
r
c|jSr<rr=s rrzWave_write.getnframes###r
cl|jrtd|dvrtd||_||_y)Nr)rzunsupported compression type)rrrr)r6comptypecompnames   rsetcomptypezWave_write.setcomptypes9JKK9$677!!r
c|jSr<rr=s rrzWave_write.getcomptyperr
c|jSr<rr=s rrzWave_write.getcompnamerr
c|\}}}}}}|jrtd|j||j||j	||j||j
||yr)rrrrrrr)r6paramsrrrrrrs        r	setparamszWave_write.setparamssoGMD	9i(HJKK)$)$)$ 8,r
c|jr|jr|jstdt	|j|j|j|j
|j|jS)Nznot all parameters set)rrrrrr`rrr=s rrzWave_write.getparams sSdooT__011DOOT__doommT^^T^^=	=r
ctd)Nzsetmark() not supportedr)r6rrHnames    rsetmarkzWave_write.setmark&s-..r
ctdrrrs  rrzWave_write.getmark)rr
cyr<rr=s rrzWave_write.getmarkers,rr
c|jSr<rr=s rr1zWave_write.tell/rr
c&t|ttfst|j	d}|jt
|t
||j|jzz}|jr|j|}|jdk7r)tjdk(rt||j}|jj||xjt
|z
c_|j |z|_y)NBrr)rgrr
memoryviewcast_ensure_header_writtenrrrrXrrrrZwriterr)r6rrs   rwriteframesrawzWave_write.writeframesraw2s$	 23d#((-D##CI.d)$// AB====&D??aCMMU$:T4??3D

SY&#33g=r
cz|j||j|jk7r|jyyr<)rrr_patchheader)r6rs  rwriteframeszWave_write.writeframes?s5D!t0001r
c	|jrT|jd|j|jk7r|j	|jjd|_|j}|rd|_|jyy#d|_|j}|rd|_|jwwxYw)Nr)rZrrrrflushrfrAr}s  rrAzWave_write.closeDs	zz++A.##t'8'88%%'

  "DJ**D*.'

DJ**D*.'

sA B/B?c|jsW|jstd|jstd|jstd|j|yy)Nz# channels not specifiedzsample width not specifiedzsampling rate not specified)rrrrr
_write_header)r6datasizes  rrz!Wave_write._ensure_header_writtenVsW""??677??899??9::x(#r
c|jjd|js!||j|jzz|_|j|jz|jz|_	|jj
|_|jjtjdd|j
zdddt|j|j|j|jz|jz|j|jz|jdzd|j|jj
|_|jjtjd	|j
d
|_y#ttf$rd|_Y+wxYw)NrTz<L4s4sLHHLLHH4s$rUrVrr%rW<LT)rZrr`rrrr1_form_length_posr4r5r,packrr_data_length_posr)r6
initlengths  rrzWave_write._write_header`sP

!}}&4??T__+LMDM==4??:T__L	)$(JJOO$5D!	

%6!!!7GRT__dooOOdoo-?OOdoo-OOa*	+  ,$(JJOO$5D!

T4+;+;<="(	)$(D!	)s5F&&G?GcH|j|jk(ry|jj}|jj	|j
d|jj
tjdd|jz|jj	|jd|jj
tjd|j|jj	|d|j|_y)Nrrr)
rrrZr1rGrrr,rr)r6curposs  rrzWave_write._patchheaderus 0 00"

--q1

T20A0A+ABC

--q1

T4+<+<=>

",,r
N)r	r
rr:rbrorrrwrrrrrrrrrrrrrrrrr1rrrArrrrr
rrrs2

$$
$
0
 
$"-=/ $> 
$)#*
-r
rc|t|dr
|j}nd}|dvrt|S|dvrt|St	d)Nmoderd)rrd)wrz$mode must be 'r', 'rb', 'w', or 'wb')hasattrrrrr)rkrs  rrrsO|1f66DD{|	
	!}:;;r
r<)collectionsrrir,r__all__rrrrr_array_fmtsrrrrrrrr
r<module>rsGR#

7	I	X'.NPll^B*B*Ja-a-H<r