Аудиокодек или аудиодекодер — это устройство или компьютерная программа, способные кодировать или декодировать цифровой поток данных ( кодек ), который кодирует или декодирует аудио. [ 1] [2] [3] [4] В программном обеспечении аудиокодек — это компьютерная программа, реализующая алгоритм, который сжимает и распаковывает цифровые аудиоданные в соответствии с заданным форматом кодирования аудиофайла или потокового мультимедиа . Цель алгоритма — представить высококачественный аудиосигнал с минимальным количеством бит при сохранении качества. Это может эффективно сократить объем памяти и полосу пропускания , необходимые для передачи сохраненного аудиофайла. Большинство программных кодеков реализованы в виде библиотек , которые взаимодействуют с одним или несколькими мультимедийными проигрывателями . Большинство современных алгоритмов сжатия звука основаны на кодировании с модифицированным дискретным косинусным преобразованием (MDCT) и линейном предсказательном кодировании (LPC).
В аппаратном обеспечении аудиокодек относится к одному устройству, которое кодирует аналоговый звук в цифровые сигналы и декодирует цифровой обратно в аналоговый. Другими словами, он содержит как аналого-цифровой преобразователь (АЦП), так и цифро-аналоговый преобразователь (ЦАП), работающие от одного и того же тактового сигнала . Это используется, например, в звуковых картах , которые поддерживают как вход, так и выход звука. Аппаратные аудиокодеки отправляют и получают цифровые данные с помощью шин, таких как AC-Link , I²S , SPI , I²C и т. д. Чаще всего цифровые данные представляют собой линейную PCM , и это единственный формат, который поддерживает большинство кодеков, но некоторые устаревшие кодеки поддерживают другие форматы, такие как G.711 для телефонии.