+SSKJr SSKrSSKrSSKr/SQr"SS\5rSrSr Sr S r \"S S 5r S r "S S5r"SS5r"SS5rSSjrg)) namedtupleN)openError Wave_read Wave_writec\rSrSrSrg)rRN)__name__ __module__ __qualname____firstlineno____static_attributes__r +/opt/alt/python313/lib64/python3.13/wave.pyrrRsrris8q)NbhNi _wave_paramsz7nchannels sampwidth framerate nframes comptype compnamec[[U55n[S[U5U5H'n[U5HnXU-X#U-S- U- 'M M) [U5$)Nrr) bytearraylenrangebytes)datawidth swapped_datarjs r _byteswapr `s]SY'L 1c$i 'uA.2q5kLUQ* +(  rcJ\rSrSrS SjrSrSrS SjrSrS Sjr Sr S r g )_ChunkjcSUlX lU(aSnOSnXlURS5Ul[ UR5S:a[ e[R"US-URS55SUl U(aURS- Ul SUl URR5Ul SUlg![Ra [ Sef=f![[ 4a SUlgf=f) NF><LrT)closedalignfileread chunknamerEOFErrorstruct unpack_from chunksizeerror size_readtelloffsetseekableAttributeErrorOSError)selfr,r+ bigendian inclheaderstrflags r__init___Chunk.__init__ks  GG 1 t~~  "N %#// TYYq\J1MDN !^^a/DN !))..*DK!DM|| % $ %( "!DM "s1C*C0C-0D  D cUR$N)r.r:s rgetname_Chunk.getnames ~~rcpUR(dUR5 SUlgg!SUlf=f)NT)r*skiprBs rclose _Chunk.closes.{{ # " # s, 5cZUR(a [S5eUR(d [S5eUS:XaXR-nOUS:XaXR -nUS:dXR :a[ eURRURU-S5 Xlg)NI/O operation on closed filez cannot seekrr) r* ValueErrorr7r9r4r2 RuntimeErrorr,seekr6)r:poswhences rrN _Chunk.seeks ;;;< <}}-( ( Q;&C q[&C 7cNN*  t{{S(!,rcRUR(a [S5eUR$)NrJ)r*rLr4rBs rr5 _Chunk.tells ;;;< <~~rczUR(a [S5eURUR:agUS:aURUR- nXRUR- :aURUR- nURR U5nUR[ U5-UlURUR:Xa]UR(aLURS-(a8URR S5nUR[ U5-UlU$)NrJrrr)r*rLr4r2r,r-rr+)r:sizerdummys rr- _Chunk.reads ;;;< < >>T^^ + !8>>DNN2D ..4>>1 1>>DNN2Dyy~~d##d)3 >>T^^ + :: NNQ IINN1%E!^^c%j8DN rcXUR(a [S5eUR(auURUR- nUR (aURS-(aUS-nUR RUS5 URU-UlgURUR:a^[SURUR- 5nURU5nU(d[eURUR:aM]gg![a Nf=f)NrJri ) r*rLr7r2r4r+r,rNr9minr-r/)r:nrVs rrF _Chunk.skips ;;;< < == NNT^^3::4>>A#5AA q!$!%!!3nnt~~-D$..4>>9:AIIaLE nnt~~-  sA3D D)(D))r+r.r2r*r,r6r7r4N)TTF)r)) r r r rr>rCrGrNr5r-rFrr rrr"r"js%!2#& .rr"c\rSrSrSrSrSrSrSrSr Sr S r S r S r S rS rSrSrSrSrSrSrSrSrSrSrg)rcSUlSUl[USS9UlURR 5S:wa [ S5eURR S5S:wa [ S5eSUlSUlSUl [URSS9nUR 5nUS :XaURU5 SUlONUS :XaHUR(d [ S 5eX lURUR-UlSUl OUR5 MUR(aUR(d [ S 5eg![a M;f=f) Nr)r;RIFFz 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"_filerCrr-_fmt_chunk_read _data_chunk_data_seek_neededr/_read_fmt_chunkr2 _framesize_nframesrF)r:r,chunkr.s rinitfpWave_read.initfpsC Da0 ::   7 *:; ; ::??1  ()* * %&D " tzzq9 IG#$$U+'($g%++ =>>#( %4?? B )*& JJL#$##4+;+;=> >,<  sE E'&E'cSUl[U[5(a[R"US5nXlUR U5 g! UR(aUR 5 e=f)Nrb_i_opened_the_file isinstancestrbuiltinsrrnrGr:fs rr>Wave_read.__init__sY"& a   a&A&' #  KKN &&  A $A1c$UR5 grArGrBs r__del__Wave_read.__del__$  rcU$rAr rBs r __enter__Wave_read.__enter__' rc$UR5 grAr|r:argss r__exit__Wave_read.__exit__*rrcUR$rA)rfrBs rgetfpWave_read.getfp0s zzrc SUlSUlg)Nrr)rirerBs rrewindWave_read.rewind3s!"rchSUlURnU(aSUlUR5 ggrA)rfrsrGr:r,s rrGWave_read.close7s- && &*D # JJL rcUR$rA)rerBs rr5Wave_read.tell> ~~rcUR$rA) _nchannelsrBs r getnchannelsWave_read.getnchannelsA rcUR$rA)rlrBs r getnframesWave_read.getnframesDs }}rcUR$rA) _sampwidthrBs r getsampwidthWave_read.getsampwidthGrrcUR$rA) _frameraterBs r getframerateWave_read.getframerateJrrcUR$rA _comptyperBs r getcomptypeWave_read.getcomptypeMrrcUR$rA _compnamerBs r getcompnameWave_read.getcompnamePrrc [UR5UR5UR5UR 5UR 5UR 55$rA)rrrrrrrrBs r getparamsWave_read.getparamsSsQD--/1B1B1D((*DOO,='')4+;+;+=? ?rc,SSKnURSSS9 g)NrzWave_read.getmarkersremovewarnings _deprecatedr:rs r getmarkersWave_read.getmarkersXs3GDrc@SSKnURSSS9 [S5e)NrzWave_read.getmarkrrno marksrrrr:idrs rgetmarkWave_read.getmark]s$0AJrc^US:dXR:a [S5eXlSUlg)Nrzposition not in ranger)rlrreri)r:rOs rsetposWave_read.setposbs+ 7cMM)/0 0!"rctUR(a_URRSS5 URUR-nU(aURRUS5 SUlUS:XagURR XR-5nUR S:wa)[RS:Xa[X0R 5nUR(aU(aURU5nUR[U5URUR ---UlU$)Nrrrbig) rirhrNrerkr-rsys byteorderr rdrr)r:nframesrOrs r readframesWave_read.readframeshs  ! !    ! !!Q '..4??2C  %%c1-%&D " a<$$W%>? ??a CMMU$:T??3D ==T==&D#d)$//8Y*ZZ rc[R"SURS55uo lUlp4U[:waU[:wa[SU<35e[R"SURS55SnU[:Xa}[R"SURS55upgnURS 5n [U 5S :a[ eU [:wa"SSK n S U RU S 93n [U 5eUS -S-UlUR(d [S5eUR(d [S5eURUR-UlSUlSUlg![R a [ Sef=f![R a [ Sef=f![R a [ Sef=f![a S n Nf=f)NzB&"N'44>&? S\ @]?^$_MM**$q=Q.*+ ++, ,//DOO;)?|| % $ % || % $ %<< )D( ) !>$=M>s64E<)FAF:)G<FF7:G G('G()rrrdrhrirfrgrrkrsrrlrreN)r r r rrnr>r}rrrrrGr5rrrrrrrrrrrrjrr rrrrsk>?>  ?   # *"*rrc\rSrSrSrSrSrSrSrSr Sr S r S r S r S rS rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr g) ricSUl[U[5(a[R"US5nXlUR U5 g! UR(aUR 5 e=f)Nwbrrrws rr>Wave_write.__init__sY"& a   a&A&' #  KKN && rzcXlSUlSUlSUlSUlSUlSUlSUlSUlSUl g)NrF) rfrdrrrrl_nframeswritten _datawritten _datalength_headerwrittenrs rrnWave_write.initfpsJ    #rc$UR5 grAr|rBs rr}Wave_write.__del__rrcU$rAr rBs rrWave_write.__enter__rrc$UR5 grAr|rs rrWave_write.__exit__rrcjUR(a [S5eUS:a [S5eXlg)N0cannot change parameters after starting to writerr)rrr)r: nchannelss r setnchannelsWave_write.setnchannelss/   JK K q=+, ,#rcRUR(d [S5eUR$)Nznumber of channels not set)rrrBs rrWave_write.getnchannelss45 5rcvUR(a [S5eUS:dUS:a [S5eXlg)Nrrr'r)rrr)r:rs r setsampwidthWave_write.setsampwidths5   JK K q=IM*+ +#rcRUR(d [S5eUR$)Nzsample width not set)rrrBs rrWave_write.getsampwidths./ /rcUR(a [S5eUS::a [S5e[[U55Ulg)Nrrzbad frame rate)rrintroundr)r: framerates r setframerateWave_write.setframerates;   JK K >() )eI./rcRUR(d [S5eUR$)Nzframe rate not set)rrrBs rrWave_write.getframerates,- -rcHUR(a [S5eXlgNr)rrrl)r:rs r setnframesWave_write.setnframess   JK K rcUR$rArrBs rrWave_write.getnframes ###rcvUR(a [S5eUS;a [S5eXlX lg)Nr)rzunsupported compression type)rrrr)r:comptypecompnames r setcomptypeWave_write.setcomptype s5   JK K 9 $67 7!!rcUR$rArrBs rrWave_write.getcomptyperrcUR$rArrBs rrWave_write.getcompnamerrcUup#pEpgUR(a [S5eURU5 URU5 UR U5 UR U5 UR Xg5 gr )rrrrrr r)r:paramsrrrrrrs r setparamsWave_write.setparamssgGMD i(   JK K )$ )$ )$   ,rcUR(a"UR(aUR(d [S5e[ URURURUR UR UR5$)Nznot all parameters set)rrrrrrlrrrBs rrWave_write.getparams$sSdooT__01 1DOOT__doommT^^T^^= =rc@SSKnURSSS9 [S5e)NrzWave_write.setmarkrrzsetmark() not supportedr)r:rrOnamers rsetmarkWave_write.setmark*s%1'B-..rc@SSKnURSSS9 [S5e)NrzWave_write.getmarkrrrrrs rrWave_write.getmark/s$1'BJrc,SSKnURSSS9 g)NrzWave_write.getmarkersrrrrs rrWave_write.getmarkers4s4WErcUR$rArrBs rr5Wave_write.tell9rrc<[U[[45(d[U5R S5nUR [ U55 [ U5URUR--nUR(aURU5nURS:wa)[RS:Xa[XR5nURRU5 U=R[ U5- slUR U-Ulg)NBrr)rtrr memoryviewcast_ensure_header_writtenrrrrdrrr rfwriterr)r:rrs rwriteframesrawWave_write.writeframesraw<s$ 233d#((-D ##CI.d)$// AB ====&D ??a CMMU$:T??3D  SY&#33g=rc|URU5 URUR:waUR5 ggrA)r2rr _patchheader)r:rs r writeframesWave_write.writeframesIs5 D!   t00 0     1rcUR(aUURS5 URUR:waUR 5 URR 5 SUlUR nU(aSUlUR5 gg!SUlUR nU(aSUlUR5 ff=f)Nr)rfr0rrr5flushrsrGrs rrGWave_write.closeNs zz++A.##t'8'88%%'   "DJ**D*.' DJ**D*.' s A&B4CcUR(dfUR(d [S5eUR(d [S5eUR(d [S5eUR U5 gg)Nz# channels not specifiedzsample width not specifiedzsampling rate not specified)rrrrr _write_header)r:datasizes rr0!Wave_write._ensure_header_written`sW""??677??899??9::   x (#rcURRS5 UR(d XRUR--UlURUR-UR-UlURR 5UlURR[R"SSUR -SSS[URURURUR-UR-URUR-URS-S5 5 URbURR 5UlURR[R"S UR 55 S Ulg![[4a SUlGN/f=f) Nr`z ",,r)rrrdrDrrrfrBrrrsrrlrrN)!r r r rr>rnr}rrrrrrrrr rrrrrrr$rrr5r2r6rGr0r<r5rr rrrrs4  $ $ $ 0  $"-= /   $ > $)#* -rrcUc [US5(a URnOSnUS;a [U5$US;a [U5$[ S5e)Nmoderq)rrq)wrz$mode must be 'r', 'rb', 'w', or 'wb')hasattrrKrrr)rxrKs rrrsR | 1f  66DD {|  !}:;;rrA) collectionsrrvr0r__all__rrrrr _array_fmtsrr r"rrrr rrrRsT#  7 I X' .NP ll^F*F*Rg-g-T