"sndhdr" --- Determinar el tipo de archivo de sonido
****************************************************

**Código fuente:** Lib/sndhdr.py

Obsoleto desde la versión 3.11, se eliminará en la versión 3.13: El
módulo "sndhdr" está en desuso (consulte **PEP 594** para obtener
detalles y alternativas).

======================================================================

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*.

Se reconocen los siguientes tipos de encabezados de sonido, como se
indica a continuación con el valor de retorno de "whathdr()": y
"what()":

+--------------+--------------------------------------+
| Valor        | Formato de encabezado de sonido      |
|==============|======================================|
| "'aifc'"     | Archivos de intercambio de audio     |
|              | comprimido                           |
+--------------+--------------------------------------+
| "'aiff'"     | Archivos de intercambio de audio     |
+--------------+--------------------------------------+
| "'au'"       | Archivos Au                          |
+--------------+--------------------------------------+
| "'hcom'"     | HCOM de archivos                     |
+--------------+--------------------------------------+
| "'sndt'"     | Archivos de sonido Sndtool           |
+--------------+--------------------------------------+
| "'voc'"      | Archivos de audio de Creative Labs   |
+--------------+--------------------------------------+
| "'wav'"      | Archivos de formato de archivo de    |
|              | audio de forma de onda               |
+--------------+--------------------------------------+
| "'8svx'"     | Archivos de voz muestreados de 8     |
|              | bits                                 |
+--------------+--------------------------------------+
| "'sb'"       | Archivos de datos de audio de bytes  |
|              | firmados                             |
+--------------+--------------------------------------+
| "'ub'"       | Archivos UB                          |
+--------------+--------------------------------------+
| "'ul'"       | Archivos de audio uLAW               |
+--------------+--------------------------------------+

sndhdr.tests

   Una lista de funciones que realizan las pruebas individuales. Cada
   función toma dos argumentos: el flujo de bytes y un objeto similar
   a un archivo abierto. Cuando se llama a "what()" con un flujo de
   bytes, el objeto similar a un archivo será "None".

   La función de prueba debe devolver una cadena que describa el tipo
   de imagen si la prueba tuvo éxito, o "None" si falló.

Ejemplo:

   >>> import sndhdr
   >>> imghdr.what('bass.wav')
   'wav'
   >>> imghdr.whathdr('bass.wav')
   'wav'
