sndhdr – Определение типа звукового файла¶sndhdr – Determine type of sound file
Исходный код: Lib/sndhdr.py
Устарело с версии 3.11, будет удалено в версии 3.13: Модуль sndhdr устарел (см. PEP 594 для получения подробностей и альтернатив).
Модуль sndhdr предоставляет вспомогательные функции, которые пытаются определить тип звуковых данных в файле. Если этим функциям удаётся определить тип звуковых данных, хранящихся в файле, они возвращают именованный кортеж namedtuple(), содержащий пять атрибутов: (filetype, framerate, nchannels, nframes, sampwidth). Значение type указывает тип данных и может быть одной из строк: 'aifc', 'aiff', 'au', 'hcom', 'sndr', 'sndt', 'voc', 'wav', '8svx', 'sb', 'ub' или 'ul'. Значение sampling_rate будет либо фактическим значением, либо 0, если частота неизвестна или её сложно декодировать. Аналогично channels будет либо количеством каналов, либо 0, если определить количество каналов невозможно или значение сложно декодировать. Значение frames будет либо количеством фреймов, либо -1. Последний элемент кортежа, bits_per_sample, будет либо размером выборки в битах, либо 'A' для A-LAW, либо 'U' для u-LAW.
- sndhdr.what(filename)¶
Определяет тип звуковых данных, хранящихся в файле filename, с помощью
whathdr(). В случае успеха возвращает именованный кортеж, как описано выше, в противном случае возвращаетсяNone.Изменено в версии 3.5: Результат изменён с кортежа на именованный кортеж.
- sndhdr.whathdr(filename)¶
Определяет тип звуковых данных, хранящихся в файле, на основе заголовка файла. Имя файла задаётся параметром filename. Эта функция возвращает именованный кортеж, как описано выше, в случае успеха, или
None.Изменено в версии 3.5: Результат изменён с кортежа на именованный кортеж.
Распознаются следующие типы заголовков звуковых файлов, перечисленные ниже с возвращаемым значением
из whathdr(): и what():
Значение |
Формат заголовка звукового файла |
|---|---|
|
Сжатые файлы Audio Interchange |
|
Файлы Audio Interchange |
|
Файлы Au |
|
Файлы HCOM |
|
Звуковые файлы Sndtool |
|
Аудиофайлы Creative Labs |
|
Файлы Waveform Audio File Format |
|
8-битные файлы голосовых семплов |
|
Файлы звуковых данных со знаковым байтом |
|
Файлы UB |
|
Аудиофайлы u-LAW |
- sndhdr.tests¶
Список функций, выполняющих отдельные тесты. Каждая функция принимает два аргумента: поток байтов и открытый файлоподобный объект. Когда
what()вызывается с потоком байтов, файлоподобный объект будетNone.Тестовая функция должна возвращать строку с описанием типа изображения, если тест успешен, или
None, если нет.
Пример:
>>> import sndhdr
>>> imghdr.what('bass.wav')
'wav'
>>> imghdr.whathdr('bass.wav')
'wav'