ttの日記: 予告 3
日記 by
tt
この日記でもちらちらと話をしてきたlibssrc(仮名称)だが、やっとライブラリっぽいものができた。
柴田さんオリジナルのSSRCを元に、アルゴリズムはそのままだが、こまかい計算順序の入れ替えなどで、オリジナルを上回る精度と速度を実現している。
例として、44.1kHzの-10dBの1kHz正弦波を32kHzにダウンサンプリングしたときの周波数スペクトラムは以下のようになる(なおこれは高精度版ssrc_hpではなく、通常版である)。
libssrc 現時点での最新版
柴田さんオリジナル(ssrc 1.28)
(一部の人は見てすぐわかるだろうけど、スペアナにはefuさんのws.exeを使用させていただきました)。
15kHzの折り返しが見えないのがわかる。またこの画面からはわからないが、SNRにすると0.2dBほど改善されている。速度のほうは、現時点でDuron1GHzでIntelCompiler5を使って44.1->32がだいたいリアルタイムの9倍速というところである。
と、ここまで作ったところで、この週末は時間切れ。
来週には公開できるようがんばります。 うまくこいつを使えば、へたれWindowsのカーネル内蔵SRCを使わずに48kHz出力などができるので、かなり音質の改善が期待できとおもう。LAMEの低サンプルレートにおける音質もかなり改善できるだろう。乞うご期待。
2/4追記:両者のわかりやすい(?)比較 (上がssrc 1.28、下が最新版)
libssrc (スコア:1)
Re:libssrc (スコア:1)
# ところで、NVさんって、/|/ |/さんですよね?
-- Takehiro TOMINAGA // may the source be with you!
Re:libssrc (スコア:1)
>Lilith プラグインという形で
>実装したいと思います(半分冗談だけど半分本気)
この件ですね。もうあれから3ヶ月も経つのか……
月日の経つのは早いものです(;´Д`)
Liveとかの48kHz出力系で、
kmixerとかによる変換ではない高品質な変換を行って
再生できるプログラムなのかなぁ、と思ったのですが。
しかし、それは無理かも……
実はkmixerは44.1kHzでのミキシングしか
行ってくれないのでわないかとゆう疑惑が出て来ました。
GraphEditでkmixerのプロパティをみると、
44.1kHz/16bitInt と44.1kHz/32bitIEEEFloatしか
載ってないんですよね(;´Д`)
今日行った48kHzのループバック実験も失敗したし……