オーディオコーデックは、オーディオをエンコードまたはデコードするデジタルデータストリーム(コーデック)をエンコードまたはデコードできるデバイスまたはコンピュータプログラムです。[ 1 ] [ 2 ] [ 3 ] [ 4 ]ソフトウェアでは、オーディオコーデックは、指定されたオーディオファイルまたはストリーミングメディアオーディオコーディング形式に従ってデジタルオーディオデータを圧縮および解凍するアルゴリズムを実装するコンピュータプログラムです。アルゴリズムの目的は、品質を維持しながら最小限のビット数で高忠実度オーディオ信号を表現することです。これにより、保存されたオーディオファイルの送信に必要なストレージスペースと帯域幅を効果的に削減できます。ほとんどのソフトウェアコーデックは、1 つ以上のマルチメディアプレーヤーとインターフェースするライブラリとして実装されています。最新のオーディオ圧縮アルゴリズムのほとんどは、修正離散コサイン変換(MDCT)コーディングと線形予測コーディング(LPC)に基づいています。
ハードウェアでは、オーディオコーデックとは、アナログオーディオをデジタル信号にエンコードし、デジタル信号をアナログ信号にデコードする単一のデバイスを指します。つまり、同じクロック信号で動作するアナログ-デジタルコンバータ(ADC)とデジタル-アナログコンバータ(DAC)の両方を備えています。これは、たとえばオーディオ入出力両方をサポートするサウンドカードで使用されます。ハードウェアオーディオコーデックは、 AC'97、SoundWire、[ 5 ] I²S、SPI、I²Cなどのバスを使用してデジタルデータを送受信します。最も一般的なデジタルデータはリニアPCMであり、ほとんどのコーデックがサポートする唯一のフォーマットですが、一部のレガシーコーデックは、電話用のG.711などの他のフォーマットをサポートしています。