• ESP-Audio-Effects

    プロフェッショナルな高性能オーディオエフェクトライブラリ

ESP-Audio-Effects は、Espressif が ESP32 シリーズ SoC 向けに開発したプロフェッショナルな オーディオ処理ライブラリです。オーディオ形式変換、ダイナミクス制御、音響効果処理などの主要機能を備え、スマートスピーカー、ヘッドホン、音声インタラクション機器などの組み込みオーディオ用途に適しています。

本ライブラリは、リソース消費を最小限に抑える設計を採用し、すべてのモジュールで一貫した API を提供します。各モジュールは単独で組み込むことも、構成可能な処理チェーンとして組み合わせることもでき、製品要件に応じた柔軟なオーディオパイプラインを構築できます。

機能紹介

  • フォーマット変換
  • オーディオルーティング
  • ダイナミクス処理
  • オーディオエフェクト
Input Channels LRC LR
  • サンプリングレート変換
  • ビット深度変換
  • チャネル変換

サンプリングレート変換

オーディオを対象のサンプリングレートへ変換し、デバイス、コーデック、処理パイプライン間の互換性を確保します。

詳細仕様

  • 4 kHz ~ 192 kHz
  • 4 kHz または 11.025 kHz の整数倍に対応
  • s16、s24、s32 フォーマットに対応
  • 3 段階の複雑度レベルに対応

ビット深度変換

u8、s16、s24、s32 間でオーディオのビット深度を変換し、異なる音源やデバイスとの互換性を実現します。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • u8、s16、s24、s32 フォーマットに対応
  • インターリーブ/非インターリーブレイアウトに対応

チャネル変換

重み付けマトリクスを用いて、異なるチャネル構成間でオーディオを変換し、多様なチャネルレイアウトに対応します。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • u8、s16、s24、s32 フォーマットに対応
  • インターリーブ/非インターリーブレイアウトに対応
Ch A Ch B Interleave Deinterleave
Audio 1 Audio 2 Audio 3
  • オーディオインターリーバー
  • オーディオミキサー

オーディオインターリーバー

各チャネルの独立バッファを連続マルチチャネルストリームへインターリーブし、またはストリームを各チャネルの独立バッファへデインターリーブします。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • s16、s24、s32 サンプルフォーマットに対応

オーディオミキサー

複数のオーディオ入力を 1 系統の出力へミックスします。各入力の重みは個別に設定でき、スムーズなフェード遷移にも対応します。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • s16、s24、s32 フォーマットに対応
  • 2 組の重みセットを設定可能
  • 重みセット間のスムーズな切り替えに対応
  • インターリーブ/非インターリーブレイアウトに対応
Raw Gain ALC
LowLow MidHigh MidHigh
  • 自動レベル制御
  • ダイナミックレンジ制御
  • マルチバンドコンプレッサー

自動レベル制御

入力音量の変化に応じてゲインを自動調整し、出力レベルを安定化します。チャネルごとのゲイン制御に対応し、マイクなど入力レベルが変動するソースに適しています。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • s16、s24、s32 サンプルフォーマットに対応
  • ゲイン範囲: [−64, 63] dB
  • インターリーブ/非インターリーブレイアウトに対応

ダイナミックレンジ制御

設定可能なゲインカーブにより、圧縮、リミッティング、エクスパンション、ノイズゲートなどのダイナミクス処理を行います。最大 6 点のカーブポイント、独立した時間制御、ハードニー/ソフトニー遷移に対応します。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • s16、s24、s32 サンプルフォーマットに対応
  • 最大 6 点のカーブポイントを設定可能
  • メイクアップゲイン: −10.0 ~ 10.0 dB
  • アタックタイム: 0 ~ 500 ms
  • リリースタイム: 0 ~ 500 ms
  • ホールドタイム: 0 ~ 100 ms
  • ニー幅: 0.0 ~ 10.0 dB
  • インターリーブ/非インターリーブレイアウトに対応

マルチバンドコンプレッサー

オーディオを 4 つの設定可能な周波数帯域に分割し、各帯域に独立して圧縮処理を適用します。クロスオーバー周波数および圧縮設定は帯域ごとに調整でき、より精密なダイナミクス制御のために各帯域でソロおよびバイパス制御に対応しています。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • s16、s24、s32 サンプルフォーマットに対応
  • 4 つの周波数帯域を設定可能
  • 帯域ごとに独立した圧縮設定
  • 閾値: −100 ~ 0 dB
  • 圧縮比: 1:1 ~ ∞:1
  • メイクアップゲイン: −10 ~ 10 dB
  • アタックタイム: 0 ~ 500 ms
  • リリースタイム: 0 ~ 500 ms
  • ホールドタイム: 0 ~ 100 ms
  • ニー幅: 0 ~ 10 dB
  • 帯域ごとのソロおよびバイパス制御に対応
  • インターリーブ/非インターリーブレイアウトに対応
Fade InFull LevelFade Out
Howl
Input Waveform Feedback Delay Tail
  • イコライザー
  • フェード
  • タイムストレッチ/ピッチシフト
  • ハウリング抑制
  • リバーブ
  • ディレイ

イコライザー

複数のフィルタータイプを組み合わせ、異なる周波数帯域を個別に調整できます。中心周波数、Q 値、ゲインは再初期化なしで実行時に更新可能です。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • s16、s24、s32 サンプルフォーマットに対応
  • 単一または複数のフィルター構成に対応
  • フィルタータイプ: High-Pass、Low-Pass、High-Shelf、Low-Shelf、Peaking
  • フィルターパラメータのリアルタイム更新に対応
  • インターリーブ/非インターリーブレイアウトに対応

フェード

線形または曲線による遷移で音量を滑らかに上げ下げし、ストリーム切り替えやミュート制御に適しています。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • s16、s24、s32 サンプルフォーマットに対応
  • モード: Fade-In / Fade-Out
  • カーブ: Linear / Quadratic / Square Root
  • インターリーブ/非インターリーブレイアウトに対応

タイムストレッチ/ピッチシフト

再生速度とピッチを個別または同時に調整できます。速度を変更してもピッチは維持され、ピッチを変更しても再生速度は維持されます。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • s16、s24、s32 サンプルフォーマットに対応
  • 速度調整範囲: 0.5× ~ 2.0×
  • ピッチ調整範囲: 0.5× ~ 2.0×

ハウリング抑制

マイクとスピーカー間で発生する音響フィードバックをリアルタイムで検出・抑制します。検出閾値は設定可能で、各チャネルを独立して処理できます。

詳細仕様

  • サンプリングレート: 8、16、32、44.1、48 kHz
  • s16、s24、s32 サンプルフォーマットに対応
  • 任意のチャネル数に対応し、チャネルごとの独立処理が可能
  • 検出閾値を設定可能
  • インターリーブ/非インターリーブレイアウトに対応

リバーブ

室内反射や音の拡散を再現し、空間的な広がりや臨場感を付加します。Freeverb (Schroeder–Moorer) アルゴリズムをベースに、自然なリバーブと高いリソース効率を両立しています。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • S16、S24、S32 ビット深度に対応
  • ルームサイズ係数:[0.0, 1.0]
  • 高周波減衰係数:[0.0, 1.0]
  • ウェット信号(リバーブ)レベル:[96.0, 0.01] dB
  • ドライ信号(原音)レベル:[96.0, 0.01] dB
  • リバーブのプリディレイ時間:[0, 200] ms
  • インターリーブ/非インターリーブレイアウトに対応

ディレイ

入力信号の遅延コピーを生成することで、自然なエコー効果を実現します。軽量なフィードバックディレイラインにより、エコーの反復回数、減衰、および空間的な広がりを調整できます。

詳細仕様

  • マルチチャネルオーディオ
  • 任意のサンプリングレートに対応
  • s16、s24、s32 サンプルフォーマットに対応
  • 最大遅延時間を設定可能:[0, 1000] ms
  • 遅延時間範囲:[0, max_delay_ms] ms
  • フィードバック係数範囲:[0.0, 0.95]
  • インターリーブ/非インターリーブレイアウトに対応

特長

極めて低いリソース使用量

多くのモジュールは、ESP32-S3 (240 MHz) 上で CPU 使用率 1% 未満、メモリ使用量は KB オーダーに抑えられます。最も負荷の高いモジュールであるマルチバンドコンプレッサーでも、CPU 使用率は 5% 未満です。

柔軟なパラメータ制御

各種パラメータは実行時に調整可能です。イコライザーではフィルター、周波数、ゲインを個別に設定でき、DRC とマルチバンドコンプレッサーではゲインカーブや時間パラメータを柔軟に設定できます。

シンプルで統一された API

14 のモジュールすべてが一貫した API パターンを採用しており、組み込み、モジュール置き換え、処理パイプライン拡張を容易にします。

柔軟なモジュール構成

各モジュールは単独でも動作し、チェーン接続にも対応します。幅広いサンプリングレートおよびチャネル構成をサポートし、音声処理から高忠実度オーディオまで幅広い用途に対応します。

ESP32 シリーズ全体をサポート

Espressif の ESP32 シリーズ SoC 全体をサポートし、既存の ESP-IDF および ESP-GMF プロジェクトへシームレスに統合できます。