# `sndhdr` — Determinar el tipo de archivo de sonido

Código fuente: Lib/sndhdr.py

El `sndhdr` proporciona funciones de utilidad que intentan determinar el tipo de datos de sonido que hay en un archivo. Cuando estas funciones son capaces de determinar qué tipo de datos sonoros se almacenan en un archivo, retornan un `namedtuple()`, que contiene cinco atributos: (`filetype`, `framerate`, `nchannels`, `nframes`, `sampwidth`). El valor de type indica el tipo de datos y será una de las cadenas siguientes cadenas: `'aifc'`, `'aiff'`, `'au'`, `'hcom'`, `'sndr'`, `'sndt'`, `'voc'`, `'wav'`, `'8svx'`, `'sb'`, `'ub'`, o `'ul'`. El sampling_rate será el valor actual o `0` si es desconocido o difícil de decodificar. De forma similar, channels será el número de canales o `0` si no se puede determinar o si el valor es difícil de decodificar. El valor de frames será el número de fotogramas o `-1`. El último elemento de la tupla, bits_per_sample, será el tamaño de la muestra en bits, `'A'` para A-LAW o `'U'` para u-LAW.

`sndhdr.``what`(filename)

  Determina el tipo de datos de sonido almacenados en el archivo filename usando `whathdr()`. Si se tiene éxito, retorna una namedtuple como se describe arriba, de lo contrario retorna `None`.

  Distinto en la versión 3.5: El resultado cambió de una tupla a una namedtuple.

`sndhdr.``whathdr`(filename)

  Determina el tipo de dato de sonido almacenado en un archivo basado en el encabezado del archivo. El nombre del archivo viene dado por filename. Esta función retorna una namedtuple como se ha descrito anteriormente en caso de éxito o `None`.

  Distinto en la versión 3.5: El resultado cambió de una tupla a una namedtuple.