CDをより高音質に!
〜 WaveUpConverter 〜  ...powered by FUSE
web拍手
管理人が喜びますw↑



[ 2006.2.5. Ver1.16 Release ]  Dither, FFTW3.1対応


■何をするソフト?■

 このソフトは、CDをより良い音質で聴きたい!、というオーディオマニアの飽くなき探求によりできました。(笑)
これは、CDの音質(44.1kHz 16bits)を、DVD-Audio音質(88.2kHz/176.4kHz 24bits)にまで引き上げるアップサンプリングソフトです。とは言ってもDVD-Audioと同じレベルが実現するわけではありませんが・・・。ちなみに、PCのサウンドカードがハイサンプリング(88.2kHz/176.4kHz 24bits)対応か、もしくはDVD-Audioを焼いて試聴できる環境にある方でないと意味がありませんのであしからず。
 ちなみに、効果の程は・・・、正直、めっさ感動します。 曲にもよりますが、こんなにはっきり、くっきり、音の粒立ちが良くなっていいの? こんなにCDって音クリアだったっけ? という感じです(決して高域を強調しているわけではありません)。 静かな音楽だと、その静寂さ、そこから聞こえる音、声がすごく綺麗に聞こえてきます。 今までノイズの靄に埋もれていた原音の艶やかさも出てくる印象です(いわゆるノイズというよりは原音と相関性のある歪みですが)。 DVD-AudioやSACDほどの音の深み、空気感はありませんが、通常のCDに比べると、そのベールを脱いだ音には目を見張る(耳か?)ものがあります。


■アップサンプリングで音が良くなる?■

 通常、CDには22kHzまでの音声データが記録されています。これをCDプレイヤ等で再生する際、ディジタルデータをアナログデータへ変換するのですが、ここで22kHz以上の「ノイズ」(折り返しノイズ)が原理上発生してしまいます。CDプレイヤではこのノイズを何らかの方法で除去してアナログデータを作成しなければなりません。しかし、22kHz以下の音声は完全に再現し、22kHzを超える音声をノイズとして完全の除去することは困難です。本ソフトウェアは、PCの莫大なリソースを利用し、可能な限りの高精度な除去を実現しました。この高精度なノイズ除去は、2倍、または4倍のアップサンプリングを伴い、4倍の場合は、176.4kHz 24bitsの高精度ディジタルデータへと変換されます。次にこれを(サウンドカード、DVD-Audioプレイヤ等で)アナログデータへと変換する際には、88kHzを超える周波数領域にノイズ成分がシフトします。音声データは22kHzまでしか収録されていませんから、このノイズ成分と音声成分とを分離することは容易で、低リソースで非常に高精度にノイズ除去を行うことが可能となります。そのため、CDをそのままプレイヤで再生するよりもより原音に近い、高音質な音楽再生が実現できるのです。


■高速・高音質アップサンプリングエンジン「FUSE」を採用■

 実は、このアップサンプリングのコアエンジンには、choi様作成のオープンソース(GPL)ソフトウェア、「FUSE」を採用させていただきました。WaveUpConverter Ver1.1xは、FUSE v0.1.1をベースに、細部のバグFix、GUI環境整備を行い、誰でも簡単に(ほんとか?)、を目指して開発いたしました。最大約400万タップという高精度なフィルタを用いてノイズ成分と音声成分を分離し、アップサンプリングを実現しています。さらに変換速度はほぼ実時間相当となっています(CPUクロックと実装メモリ量に大きく依存します)。


■推奨スペック■

 ・CPU:Pentium4/Celeron 1.6GHz以上
 ・メインメモリ:512MB以上(1GB以上がベスト)
 ・OS:Windows 2000 / XP以降

 もちろんコレを下回っても動作はすると思いますが、遅いと思います。特にメモリは多めにしてください。
ちなみに私はPentium4 2.4GHz メモリ2GBですが・・・。(419万タップフィルタ・88.2kHzで、変換速度は2倍速弱)


■特長■

・アップコンバート中に急遽別作業を優先したい時に便利な、「一時停止・再開」機能
・変換元ファイルのフォルダ構造を、出力先でも再現可能な「出力フォルダ階層」機能
   ※アーティスト名\アルバム名\曲名.wav のようなフォルダ構造を、出力先(別フォルダ内)でも再現可能
・DigiOn社製ソフトウェアDigiOnAudio2を使って高音質DVD-Audioを作成することが可能
   ※DigiOnAudio2でCDからリッピングしたWAVEファイルの拡張データ(曲名情報)に対応(アップコンバート後も情報が保持されます)


■ダウンロード■

 前置きが長くなりましたが、アプリケーション起動までの手順についてご説明します。まず、WaveUpConverterの本体を以下からダウンロードします。zipファイルなので適当な場所に解凍してください。


[ WaveUpConverter Ver1.16 ] (zip圧縮書庫 / 570kB) [ NEW ]
   (※ウイルスバスターオンラインスキャン 2006.2.5最新パターンファイルによるウイルスチェック済み)


(旧バージョン)
[ WaveUpConverter Ver1.14 ] (zip圧縮書庫 / 134kB)
   (※ウイルスバスターオンラインスキャン 2005.1.10最新パターンファイルによるウイルスチェック済み)


[ WaveUpConverter Ver1.12 ] (zip圧縮書庫 / 131kB)
   (※ウイルスバスターオンラインスキャン 2005.1.10最新パターンファイルによるウイルスチェック済み)


     Ver1.16 (2006/2/5):・FFTW 3.1対応により高速化(DLL同梱)
     Ver1.15 (2006/2/5):・FUSE v0.1.8のDitherに対応
     Ver1.14 (2005/1/15):・独自チャンクのあるWAVEファイルに一部非対応だった点を修正
・空きメモリ容量次第では、最大1677万タップのフィルタまで選択できるよう変更
・フォルダのドラッグ&ドロップに対応(指定フォルダ以下全階層をスキャン)
・裏設定で変更可能な項目を追加
・Windows XP用に、XPビジュアルスタイルを採用
・リスト表示を微変更
・変換中に一時停止・中断ボタンを押す際フォーカスが奪われることがあった問題を解消
     Ver1.12 (2005/1/10):・FUSE v0.1.1とマージ。省メモリオプションに対応しました
・空きメモリ容量を見てメモリが足りない場合は省メモリモードで動作します
・その他、Ver1.10→Ver1.11で細部の仕様改善あり
 (ゲイン・窓関数の設定を解放しました→[裏設定]
     Ver1.01 (2005/1/7):・最適化処理に手違いがあったため、修正しました(最適化オプション追加)
・拡張子が大文字の".WAV"ファイルをはじいてしまうバグを修正しました
・進捗状況にテキストで詳細説明を表示するようにしました


 次に、FFTWのHPにて、「FFTW 3.01 Windows binaries」をダウンロードします。そしてDLしたzipファイルの中のfftw3.dllのみを取り出します。これを上でDL、解凍したWaveUpConverterのexeファイルと同じ場所に置いて下さい。

 ・FFTWホームページ
   +-- FFTW 3.01 Windows binaries(上の方の「Windows binaries」のリンクをクリック)
     <ftp://ftp.fftw.org/pub/fftw/fftw-3.0.1-w32-pl1.zip>

   ※Ver1.16以降では、FFTWはWaveUpConverterに同梱しています

 WaveUpConvert.exeを実行すると、以下のような画面のアプリケーションが起動します。


WaveUpConverter



■使用方法■

1.まず、アップコンバートのための環境、条件の設定をします。
 
  
一時フォルダ・・・一時ファイルの保存先を指定
([入力ファイル]→[一時ファイル]→[出力ファイル] の順で変換される)
出力フォルダ・・・ 出力ファイルの保存先を指定
ここを空白にすると、変換元のWAVEファイルと同じ場所に変換後のファイルが作成される(下図「使用例1」参照)
出力フォルダの階層・・・出力フォルダを指定している場合のみ、指定フォルダの下に自動でフォルダを作成して変換後ファイルを出力。その際のフォルダ階層を指定(下図「使用例2」参照)
フィルタタップ数・・・アップサンプリングする際のフィルタのタップ数を指定
(例:2^[18]+1 tap →218+1=262,145タップ)
大きければ大きいほど高精度なノイズ分離が可能ですが、より多くのメモリ・処理時間が必要
 ただし、起動時に空きメモリ容量を取得し、メモリが足りない場合は省メモリモードとなる(タップ数選択時「2^[22]+1 tap <ms>」のように表示) さらに、空きメモリに対して使用メモリ量が極端に大きいフィルタは起動時にリストから除外されます。

フィルタタップ数使用メモリ量 (省メモリモード)
2^[18]+1 tap (26万タップ) 90MB (55MB)
2^[19]+1 tap (52万タップ) 90MB (55MB)
2^[20]+1 tap (105万タップ)172MB (110MB)
2^[21]+1 tap (210万タップ)336MB (200MB)
2^[22]+1 tap (419万タップ)664MB (400MB)
2^[23]+1 tap (838万タップ)1.33GB (750MB)
2^[24]+1 tap (1677万タップ) NA (1.5GB)
 ※省メモリモードではアップサンプリングに60〜70%多く時間がかかります
 ※1667万タップフィルタは省メモリモードでしか実行できません
処理最適化・・・フィルタ処理速度最適化の有無
最初のアップサンプリング前にPCの演算能力を解析し、フィルタ処理の高速化設定を行います(最大20%程度高速化)。
ただし、この解析自体が最大数十分(フィルタタップ数に依存)かかります。
最適化のための解析は各フィルタタップ数に対して一度のみで、それ以降はその解析した最適化情報を用いてアップサンプリングします。
そのため一度最適化したフィルタに対しては、この最適化チェックボックスはチェックON固定になります。
ディザ拡散処理・・・ディザ拡散を行うことで、24ビット精度(出力ビット数)で埋もれてしまう情報の表現を可能にします。ただし、聴感上知覚できるかできない程度のわずかなホワイトノイズが付加されます。
アップサンプリング倍率・・・サンプリング周波数を何倍にアップサンプリングするかを指定
CDのサンプリング周波数が44.1kHzなので、x2→88.2kHz x4→176.4kHz
出力ファイル名にアップ
サンプリング条件を付加
・・・出力ファイル名の付け方を選択
チェックなし入力ファイル名と同じ名前がつきます
チェックあり入力ファイル名を元にアップサンプリング条件を反映した名前がつきます
・filename.wav→filename_t18_x2_tpdf40.wav
  t18:フィルタタップ数
  x2:アップサンプリング倍率
  tpdf40:ディザレベル(x100倍)


(裏設定)
 GUIにないその他の設定は、WaveUpConverter.exeを一度起動・終了してできるwuc_settings.iniファイルで変更可能です。必ずWaveUpConverterを終了してから変更してください。(項目詳細説明は省略)

   GainLevel=0   // ゲインレベル 0:自動 0.xx(小数表記)固定ゲイン値を指定
   WinFunc=0    // 窓関数の有無 0:なし 1:あり
   DitherEnable=1  // ディザ拡散処理の有無 0:なし 1:あり
   DitherLevel=4096 // ディザ拡散処理時のディザ強度(上記DitherEnable=0の時は内部で0に置換)
   FileNamingRule=%filename%_t%FilterTap%_x%FreqRatio%_tqdf%DitherLevel%.wav
            // ファイル命名規則(他に%GainLevel%、%WinFunc%等を使用可能)


2.次に、アップコンバートしたいファイルをリストボックスへドラッグ&ドロップします。
  ※ドラッグ&ドロップした時に1で設定されていた条件でアップコンバートされます
   後から1で条件を変更しても、それは反映されません(以降にD&Dしたファイルに対しては反映されます)
  ※フォルダのドラッグ&ドロップには対応していません(Ver1.13から対応)


3.「アップサンプリング開始」ボタンを押すとアップサンプリングが実行されます。
  ※処理実行中に、一時停止(再開可能)、中断も可能です




〜使用例1〜

WaveUpConverter



〜使用例2〜

WaveUpConverter





■ライセンス■

 本ソフトウェアはchoi様のソフトウェア「FUSE」を利用しております。「FUSE」はGPLに基づいてソースコードを公開されており、従って本ソフトウェアもGPLに基づいて公開いたします。 ソースコードはMicrosoft Visual C++ 6.0で作成されたものを以下に公開いたします。なお、Escute/水沢たくみの著作権は放棄いたしませんが、本ソースコードを用いての改変・コード公開等はGPLに基づき許可いたします。

   [ WaveUpConverter Ver1.16 ソースコード] (zip圧縮書庫 / 91kB)



■サポート・免責事項■

  不具合報告やバージョンアップ希望等は、掲示板もしくはメールにてお願いします。なお、本プログラムをご使用になられての不具合による二次的損害等は一切責任を負いかねますのであらかじめご了承くださいませ。
 




[ HOME ]