Python Glossary English

все Python 3до 3.13Удалено из стандартной библиотекипонятие

audioop

удалённые модули

Операции над сырыми звуковыми сэмплами: громкость, смешивание, кодеки. Удалён в Python 3.13, замены в стандартной библиотеке нет — пакет audioop-lts.

Синтаксис

import audioop  # до 3.13

audioop работал с байтами звука как с массивом сэмплов: max() и rms() давали громкость, mul() и add() меняли её и смешивали дорожки, lin2ulaw() и ratecv() перекодировали. Убран по PEP 594: модуль на C почти не сопровождался. Стандартной замены нет. Простые вещи переписываются через array: array('h', data) превращает 16-битный звук в числа, а max(map(abs, samples)) заменяет audioop.max(data, 2). Для серьёзной обработки берут numpy или pydub. Пакет audioop-lts на PyPI возвращает модуль целиком — его, например, тянет pydub на 3.13.

Примеры

# Python 3.13+
try:
    import audioop
except ModuleNotFoundError as e:
    print(type(e).__name__)  # → ModuleNotFoundError
# Python 3.13+
from array import array
data = array('h', [100, -3000, 250]).tobytes()
samples = array('h', data)
print(max(map(abs, samples)))  # → 3000
import audioop
from array import array
data = array('h', [100, -3000, 250]).tobytes()
print(audioop.max(data, 2))  # → 3000

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности