"sndhdr" — Détermine le type d'un fichier audio
***********************************************

**Code source :** Lib/sndhdr.py

Obsolète depuis la version 3.11, sera supprimé dans la version 3.13:
The "sndhdr" module is deprecated (see **PEP 594** for details and
alternatives).

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

Le module "sndhdr" fournit des fonctions permettant d'essayer de
déterminer le type de données audio contenues dans un fichier. Lorsque
ces fonctions parviennent à déterminer le format de données, elles
renvoient un "namedtuple()", contenant cinq attributs : ("filetype",
"framerate", "nchannels", "nframes", "sampwidth"). La valeur de *type*
indique le format de données parmi  "'aifc'", "'aiff'", "'au'",
"'hcom'", "'sndr'", "'sndt'", "'voc'", "'wav'", "'8svx'", "'sb'",
"'ub'", et "'ul'". La valeur de *sampling_rate* sera soit la vraie
valeur, soit, si elle est inconnue ou compliquée à obtenir, "0". De
même, *channels* vaut soit le nombre de canaux soit "0" s'il ne peut
pas être déterminé ou si la valeur est compliquée à décoder. La valeur
de *frames* sera soit le nombre de *frames* soit "-1". Le dernier
élément du *n*-uplet, *bits_per_sample* sera soit la taille d'un
échantillon en bits, soit "'A'" pour *A-LAW* ou "'U'" pour *u-LAW*.

sndhdr.what(filename)

   Détermine le type de données audio stockée dans le fichier
   *filename* en utilisant "whathdr()". Si elle y parvient, le
   *namedtuple* décrit plus haut est renvoyé, sinon, "None".

   Modifié dans la version 3.5: Le type renvoyé passe d'un *n*-uplet à
   un *n*-uplet nommé.

sndhdr.whathdr(filename)

   Détermine le type de données audio contenue dans un fichier, en se
   basant sur ses entêtes. Le nom du fichier est donné par *filename*.
   Cette fonction renvoie un *namedtuple* tel que décrit plus haut, si
   elle y parvient, sinon "None".

   Modifié dans la version 3.5: Le type renvoyé passe d'un *n*-uplet à
   un *n*-uplet nommé.

The following sound header types are recognized, as listed below with
the return value from "whathdr()": and "what()":

+--------------+--------------------------------------+
| Value        | Sound header format                  |
|==============|======================================|
| "'aifc'"     | Compressed Audio Interchange Files   |
+--------------+--------------------------------------+
| "'aiff'"     | Audio Interchange Files              |
+--------------+--------------------------------------+
| "'au'"       | Au Files                             |
+--------------+--------------------------------------+
| "'hcom'"     | HCOM Files                           |
+--------------+--------------------------------------+
| "'sndt'"     | Sndtool Sound Files                  |
+--------------+--------------------------------------+
| "'voc'"      | Creative Labs Audio Files            |
+--------------+--------------------------------------+
| "'wav'"      | Waveform Audio File Format Files     |
+--------------+--------------------------------------+
| "'8svx'"     | 8-Bit Sampled Voice Files            |
+--------------+--------------------------------------+
| "'sb'"       | Signed Byte Audio Data Files         |
+--------------+--------------------------------------+
| "'ub'"       | UB Files                             |
+--------------+--------------------------------------+
| "'ul'"       | uLAW Audio Files                     |
+--------------+--------------------------------------+

sndhdr.tests

   A list of functions performing the individual tests.  Each function
   takes two arguments: the byte-stream and an open file-like object.
   When "what()" is called with a byte-stream, the file-like object
   will be "None".

   The test function should return a string describing the image type
   if the test succeeded, or "None" if it failed.

Example:

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