# 22.8. `sndhdr` — Determina o tipo de arquivos de som

Código Fonte: Lib/sndhdr.py

O `sndhdr` fornece funções de utilitário que tentam determinar o tipo de dados de som que estão em um arquivo. Quando estas funções são capazes de determinar que tipo de dados de som são armazenados em um arquivo, eles retornam um `namedtuple()`, contendo cinco atributos: (`filetype`, `framerate`, `nchannels`, `nframes`, `sampwidth`). O valor para type indica o tipo de dados e será uma das strings `'aifc'`, `'aiff'`, `'au'`, `'hcom'`, `'sndr'`, `'sndt'`, `'voc'`, `'wav'`, `'8svx'`, `'sb'`, `'ub'`, or `'ul'`. O sample_rate será o valor real ou `0` se desconhecido ou difícil de decodificar. Similarmente, channels será o número de canais ou `0` se não puder ser determinado ou se o valor for difícil de decodificar. O valor para frames será o número de quadros ou `-1`. O último item na tupla, bits_per_sample, será o tamanho da amostra em bits ou `'A'` para A-LAW ou `'U'` para u-LAW.

`sndhdr.``what`(filename)

  Determina o tipo de dados de som armazenados no arquivo filename usando `whathdr()`. Se tiver sucesso, retorna um tupla nomeada conforme descrito acima, caso contrário, `None` será retornado.

  Alterado na versão 3.5: Resultado alterado de uma tupla para uma namedtuple.

`sndhdr.``whathdr`(filename)

  Determina o tipo de dados de som armazenados em um arquivo com base no cabeçalho do arquivo. O nome do arquivo é dado por filename. Esta função retorna um namedtuple como descrito acima ao obter sucesso, ou `None`.

  Alterado na versão 3.5: Resultado alterado de uma tupla para uma namedtuple.