] @ sp d d g Z d d l m Z e d d Z d d Z d d Z g Z d d Z e j e d d Z e j e d d Z e j e d d Z e j e d d Z e j e d d Z e j e d d Z e j e d d Z e j e d d Z d d Z d d Z d d Z d d! Z d" d# Z e d$ k rle d% S)&whatwhathdr ) namedtuple SndHeadersz.filetype framerate nchannels nframes sampwidthc C s t | } | S)N)r )filenameres r +/opt/alt/python35/lib64/python3.5/sndhdr.pyr ( s c C s` t | d J } | j d } x- t D]% } | | | } | r( t | Sq( Wd SWd QRXd S)Nrbi )openreadtestsr )r fhZtfr r r r r . s c C s d d l } | j d s d S| d d d k r> d } n# | d d d k r] d } n d S| j d y | j | d } Wn t | j f k r d SYn X| | j | j | j d | j f S) Nr s FORM s AIFCaifcs AIFFZaiffr) r startswithseekr EOFErrorErrorgetframerategetnchannels getnframesgetsampwidth)r r r fmtar r r test_aifc? s r c C s6 | j d r t } n# | d d d k r7 t } n d Sd } | | d d } | | d d } | | d d } | | d d } | | d d } d } | d k r d } n6 | d k r d } n! | d k r d } d } n d } | | } | r| | } n d } | | | | | f S)Ns .snd ds. dns.Zaur r U ?)r r! )r get_long_beget_long_le) r r funcZfiletypeZhdr_sizeZ data_sizeencodingrateZ nchannelsZsample_sizeZsample_bits frame_sizeZnframer r r test_auT s2 r1 c C sr | d d d k s, | d d d k r0 d St | d d } | rY d | } n d } d | d d d f S)NA E s FSSD s HCOM i"V r Zhcomr% r r* )r+ )r r Zdivisorr/ r r r test_hcomu s , r8 c C s | j d s d St | d d } d } d | k oF d k n r | | d k r d | | d } | r t d | } d | d d d f S) Ns Creative Voice Filer# r i r% r g .AZvocr r* )r get_short_leint)r r Zsbseekr/ Zratecoder r r test_voc s ,r= c C s d d l } | j d sH | d d d k sH | d d d k rL d S| j d y | j | d } Wn t | j f k r d SYn Xd | j | j | j d | j f S) Nr s RIFFr r s WAVEr" s fmt r Zwav) waver r Zopenfpr r r r r r )r r r> wr r r test_wav s < r@ c C s. | j d s&