現在開発中・・・エンコードよりデコードが遅いって微妙・・・

1. はじめに

True Audio Codec Software - The World of True Audioにて公開されている、
True Audio (TTA) という音声の可逆圧縮フォーマットのエンコード・デコードライブラリです。
本家で公開されているttalibというダイナミックリンクライブラリがC++インターフェイスしかもっておらず
AudioEncoderから利用できないため、開発をスタートしました。
本家版との差別化を図るため、幾つか変更を加えてあります。

2. 本家との違い

  • C++クラスではない関数インターフェイス
    • C#からC++クラスが呼び出せるか知らないので・・・ぇ
  • もっともよく使われるであろう、ステレオエンコードの最適化
  • SSE4に対応
  • マルチスレッドに対応 (現在はC#版フロントエンドを用いたエンコードのみ)
  • 僕はAMD派です(謎

3. 性能評価

エンコーダOpteron 2212HE (2.0GHz)Core2Duo T9300 (2.5GHz)
エンコードデコードエンコードデコード
公式版41秒43秒29秒29秒
libtta27秒30秒21秒23秒
libtta (SSE4)未対応未対応16秒20秒
libtta + 2-thread12.2秒未対応7.9秒未対応
libtta + 4-thread6.7秒未対応9秒未対応

※1: C2Dでのマルチスレッド版の評価結果はSSE4を有効にしたものです
※2: 実際のスレッド数は変換スレッド数+読み込みスレッド+書き込みスレッドとなります (2-thread → 実際は2+1+1=4スレッド)

4. ダウンロード

5. 性能評価 (使ってくれた人からの報告によると)

環境WAVEサイズTTAサイズ公式版libtta版
エンコードデコードエンコードデコードマルチスレッド
AthlonX2 BE2350 (XP 32bit)703,800,764360,814,81237秒29.804秒27.437秒
Core i7 920 (Vista 64bit)791,146,988518,344,83326秒26秒14.572秒16.836秒2.7924秒

※マルチスレッド版のスレッド数は、CPUコア数と同じです