最近はPCにFOSTEXのPC100USB(USB DACとヘッドホンアンプ・ライン出力を搭載したボリュームコントローラー)経由でアンプにつないだオーディオスピーカーをfoobar2000の再生に使っていた。
久々にUSBDAC内蔵のJBL PEBBLESに接続してfoobar2000で音楽を再生しようとしたら、選択した曲がことごとく再生エラーになってしまった。
「Unrecordable Playback Error : Sample Rate of 44100 Hz not supported by this device」という具合に非情なエラーメッセージが楽曲をクリックする度に流れる…
以前はちゃんと再生できていたはずだが、最近、PCにWindows10をクリーンインストールしてfoobar2000を再インストールしたことと関係があるのだろうかとも考えたが、WASAPI 排他モードを使わなければちゃんと再生できるのでfoobar2000自体の問題ではないようだった。
それで「JBL Pebbles Wasapi エラー」と入力してネットで検索したら、同じような悩みを抱えるユーザーの声と共に私のブログ記事が引っかかって来たのでちょっと驚いた。
(注)後から気付いたが、この価格コムのクチコミ掲示板の議論は私のミスとは別の問題でJBL PEBBLESのSample rateがメーカーの仕様変更で48000Hzから44100Hzに変更になっていたことによるものだった。メーカーのサイトの下の方に掲載されているFAQに「出力サンプリング周波数はいくつですか? 44.1kHz,16bit固定です。」と書かれている。
👉PCでいい音で音楽を楽しむことができるかという実験(完結編)をちょっと訂正!
何で私のブログ記事が検索で引っかかって来たのだろうかと怪訝に思って読んでみた。しかし、そこに問題解決のヒントが書いてあった。自分の記事が備忘録としては役立っていることが証明されたみたいでちょっとうれしかった。
結論から書くと私の単純な設定ミスであることが分かった。再インストール後の設定で一つ設定を忘れていたものがあったのだ。
ブログの中に『Foobar2000の設定画面「Preferences」で「Resampler(PPHS)」という機能を有効化することで使っているUSBDACのサンプリングレートを超える音源は自動的にダウンサンプリングしてくれる。一方、USBDACのサンプリングレートより低い音源は自動的にアップサンプリングしてくれる。私の使っているUSBDACを内蔵しているスピーカー「JBL Pebbles」(48khz/16bit)のサンプリングレートは48khz(48,000hz)なので以下の画面の「Target sampling Rate」の値を48000に設定すればOKだった。』と書かれていた。
foobar2000にはDSP(再生中の音楽データをデジタル的に処理し、擬似的な音響効果、チャンネル数の増減、無音部分の削除などができる。音楽データ自体には改変を行わない。)という設定がある。無論、DSPの設定をしなくてもfoobar2000で音楽を再生することは可能だ。
しかし、いい音(人によっていい音は異なるかもしれないが…)で音楽を再生したいという目的でfoobar2000を導入するなら最低限の設定をする必要がある。とりわけPCの内部の雑音を排除するためにUSBDAC(もしくはUSBDACが内蔵されたスピーカー等のデバイス)につないでWASAPI排他モードの設定をすることは必須条件だ。
WASAPI排他モードでハイレゾ等の様々な音源を楽しむためには使用するUSBDACが対応していないSampling rate(Sample rateとも表記)の音源を聴くための設定が必要だ(無論、音源ごとにUSBDACを使い分けるなら話は別だが…)。その機能を担っているのがResamplerだ。Resampler は使用するUSBDACのSampling rateを超える音源は自動的にダウンサンプリングしてくれる。そして、USBDACのSampling rateより低い音源は自動的にアップサンプリングしてくれる優れモノだ。
そのためにはUSBDACのSampling rateを予め設定しておく必要がある。その設定こそTarget sampling rateの周波数の選択だ。私がfoobar2000の再インストール後の設定で失念していたのがこのTarget sampling rateの設定だった。
(注)ちょっと言い訳をするとDSP Managerの画面の上部に「Configure selected」という項目が以前のバージョンでは存在していてそこをクリックしてResampler Settingsの画面に変遷するようになっていたのだ。現在はResamplerの横の「…」をクリックする仕様に変更されている。だからどうしたと言われれば、「言い訳です。すいません。」と答えるしかない。
ResamplerのTarget sampling rateがデフォルトの44100 Hzとなっていたために「このデバイス(JBL Pebbles)でサポートされていない」Sample rateだというエラーメッセージが流れたのだ。
今回、エラーの原因究明をする過程で今まで使っていたResamplerより評判の高いResampler(SoX)というコンポーネントがあることを知り、導入してみた。結果は満足のいくものだった。
(注)Resampler(SoX)もSoX Resamplerも同じ。
私の感想ではResampler(dBpower/SSRC)やResampler(PPHS)よりResampler(SoX)を使ったときの方が音質がいいと感じた。
Resampler(SoX)にはResampler(SoX)mod2という複数のSample rateを設定できるより高度な設定が可能なバージョンもある。好みで利用してもいいと思うが、私にはちょっと高度過ぎる。今回の件で結果的にfoobar2000の音質が向上したのだから怪我の功名とも言える。
Resampler(SoX)もしくはSoX Resampler(mod2)をfoobar2000に追加する方法は次の記事に詳しい。
👉フリー高音質音楽プレイヤー『foobar2000』を使ってみない? Part.2
*Resampler(Sox)mod2(リサンプラーの設定)
Resampler(SoX)のfoobar2000へのインストールは「foo_dsp_resampler_0.8.3.zip」という圧縮ファイルをデスクトップにダウンロードした後はファイルを解凍せずにfoobar2000を起動してPreferencesを開いてComponents画面の下の「Install…」ボタンを押下して直接インストールした方が簡単だ。
新規インストールするための手順の備忘録
私は時間が経ってfoobar2000を別のPCにインストールしようとするといつもインストール後の設定方法が思い出せない。いい機会なのでその手順の備忘録を将来の自分のために書くことにした。このブログはいわば私のタイムカプセルだ。将来、foobar2000を新規インストールする自分のための記憶としてこの記事を残すことにした。
(1)foobar2000本体のソフトのダウンロードとインストール
👉foobar2000の詳細情報 : Vector ソフトを探す!
(2)必要なコンポーネントの追加インストール
①Columns UI~プレーヤーのレイアウト、デザインを変更すためのツール
②Playlist revive~楽曲データの保存場所を変えたときや別のPCに同じ楽曲データとプレイリストを移植したときにプレイリストの関連付けを修復するツール
👉foobar2000のプレイリストを修復する(ファイルパスを直す)方法
③Resampler(SoX)~USBDACに採用されている Sample rateに合わせて楽曲の Sample rateをダウンサンプリングもしくはアップサンプリングするツール
(注)Resampler(SoX)もSoX Resamplerも同じ。
④WASAPI output support~音質を上げるためにfoobar2000の排他モードを優先させるツール
👉Windows 10でハイレゾ再生するなら「WASAPI排他モード」をマスターせよ!
(3)foobar2000とコンポーネントのアップデート
foobar2000のインストール後はときどきHelpタグでfoobar2000のバージョンとコンポーネントのアップデートをチェックして変更があったときにアップデートを行えばいい。
(4)設定のポイントと詳細
①レイアウトについて
②曲データの保存場所の設定とプレイリストへの曲の登録について
③プレイリストの保存とパスの修復について
(4)おまけ
アートワークの入手について
CDからリッピングした曲でアートワークがないものはアマゾン等のサイトで画像を探して入手する方法がある。画像があれば簡単に後からfoobar2000に取り込むことができる。画像の取り込みは以下の記事に詳しい。