これは、オーディオファイルに対して高度な音響効果を適用し、音質を向上させるためのC++製サウンドプロセッシングツールです。内部では192kHzのサンプリングレートで処理を行い、最終的に高品質な96kHz/24bitの音声ファイルとして出力します。
本ツールは、以下の高品質なオーディオプロセッシング機能を提供します。
- M/S ボーカル・楽器分離: Mid/Side処理を利用してボーカルと楽器の成分を動的に分離・強調し、ミックス内での明瞭度を向上させます。
- プレミアム・グロス・エンハンサー: 音楽的な倍音を付加し、プレゼンス(存在感)とエアー(空気感)を調整することで、サウンドに艶と輝きを与えます。高度なノイズ制御機能も内蔵しています。
- エンハンスド・ハーモニック・エキサイター: 高周波数帯域に特化した倍音を生成し、失われた明瞭度やディテールを復元します。
- 6バンド・パラメトリックEQ: 音楽的なカーブを持つ6バンドのイコライザーで、サウンドのトーンを細かく調整します。
- マスタリング・リミッター: 最終段で音圧を最適化し、ピークを抑えつつ全体のレベルを均一化します。
- 高品質リサンプリング:
libsamplerateを利用して、内部処理用の192kHzへのアップサンプリングと、最終出力用の96kHzへのダウンサンプリングを最高の品質で実行します。
- 192kHz 内部処理: すべてのオーディオ処理は192kHzのサンプリングレートで行われ、非常に高い解像度での音質改善を実現します。
- 2パス・プロセッシング・ワークフロー:
- 第1パス: 入力ファイルを192kHzにアップサンプリングし、主要なエンハンス処理を実行後、一時ファイルに書き出します。
- 第2パス: 一時ファイルを読み込み、マスタリング処理(リミッター、ノーマライズ)を適用した後、最終的な96kHzの音声ファイルとして出力します。
- JSONによるパラメータ設定:
params.jsonファイルを通じて、各エフェクトの詳細なパラメータを柔軟にカスタマイズできます。
- 入力:
libsndfileがサポートする主要なオーディオファイル (WAV, FLAC, AIFF, Ogg/Vorbisなど)。 - 出力: 入力ファイルと同じコンテナ形式で、高品質な24-bit PCM / 96kHzの音声ファイル。
ビルドには以下のライブラリが必要です。
- libsndfile: 音声ファイルの読み書き
- libsamplerate: 高品質なサンプリングレート変換
- nlohmann/json: 設定ファイルのJSONパース
- CMake (3.15以上)
- C++17対応コンパイラ
- pkg-config
-
リポジトリをクローン:
git clone <repository_url> cd soundenhancerC-main
-
依存関係のインストールとビルド: リポジトリに含まれる
build.shスクリプトが、依存関係のインストールとビルドを自動的に行います。chmod +x build.sh ./build.sh
スクリプトは、お使いのOS(Ubuntu/DebianまたはmacOS)を検出し、適切なパッケージマネージャー(
apt-getまたはbrew)を使用して必要なライブラリをインストールします。ビルドが完了すると、
buildディレクトリ内に実行ファイルenhanced_sound_processorが生成されます。
以下のコマンドでプログラムを実行します。
./build/enhanced_sound_processor <入力ファイル名>