foobar2000をiTunesに寄せるメモ

foobar2000がver.2になって既存のコンポーネントを見直す必要が生じたので、この機に自分用カスタマイズ覚え書きを残そうと思います。
“作業用BGMにiTunesはちょっと重い→foobar2000の外見と使い心地を寄せる”ちょっと検索すれば山ほど存在するパターンですが、私自身バックアップを消失したり忘れた時にあちこち調べ直すのが面倒臭いので。機器の同期には何となくiTunesを使う方が安心出来るのであくまでもプレイヤーとしてのみ使う前提です。なお、ソフトそのものの使い方についてはwiki等充実している上私自身理解がまだまだなので割愛します。

準備

まず目標となるiTunesのレイアウトを確認します。
iTunesレイアウト確認
アルバム一覧形式やプレイリスト形式など表示方式は幾つかありますが、私はCD主流時代から慣れ親しんだ“左にプレイリスト・上にカラムブラウザ下に曲表示“から離れられないのでこれです。以前はもっと立体的で凝ったデザインだったのでシンプル&フラットに変わった当初はやや残念に感じましたが、今となってはこの方がデザインを寄せ易くて良いかもしれません。
メニューやウィンドウの縦並びと横並び、今回は組み込まない或いは他の機能を当てるパーツを図解するとこんな感じ。
VerticalとHolizontal割り振り
最初にVertical Splitterで構成してHolizontal Splitterで分けて…と。
ストアはこのソフトでは使わないので違う機能を付けましょうか。

言わずもがなですが最新版のColumns UIを入れます。
初期状態
初期状態でもシンプルで良いですが、そこを敢えてのこの作業ですからね。

操作パネル

[File]→[Preferences]→[Display]→[Columns UI]→[Layout]から上記の配置になるように仮に並べ、各パネルのcaptionを非表示にしつつサイズを簡単に調整します。
並び一覧 ざっと並べた図
一番上のメニューバーは今回使わないので右クリック→[Toolbars]等からチェックを外し非表示に。タイトルバーを非表示にする手段はまだ知らないのでそのままで。 個人的に再生中の曲名がタイトルに表示されるのが落ち着かないので[Columns UI]の[Main]タブ、[Main window title formatting script]に
foobar2000 - $if(%ispaused%,❚❚ ,▶) [%TITLE%]
と書き込んでおきます。
Artwork viewやItem details、つまり再生曲情報が見事に潰れて隠れてしまっていますが、これは左上の再生ボタン群に画像を読み込んで改善を図ります。
prevplaynext
↑作りました。再生と一時停止でボタン画像が入れ替わる仕様にしたかったものの、方法が不明だったので[Play or pause]を割り当てただけです。
再生ボタンの並び
最初に[Blanking button]を入れておくことで左の空間が上手いこと整います。このボタンはレイアウトを整えるのに地味に便利で、隣の存在感有り過ぎるボリュームバーの上下に配置することで(このために上図のレイアウト4行目の[Volume]を[Vertical splitter[Buttons][Volume][Buttons]]に書き換え)適度なサイズに抑えることが出来ます。ボリュームに限りませんがウィンドウサイズによって軽くレイアウト崩れを起こすのでパネル同士の間隔はちょくちょく境界をドラッグして微調整すると良いでしょう。

再生曲表示とシークバー、以前はPanel Stack Splitterを使用していたのですがver.2で使えなくなってしまっていたのでVertical splitterで対応です。何か惜しい感じですが今のところはこれで。もっと突き詰めるならこの辺りにiTunesの方にはランダム/リピート再生のボタンが有りますが、ここはいくつか数ある妥協ポイントの一つなので、その機能についてはまた後ほど。
再生曲表示(Item Details)のTitle formatには
$set_font(Meiryo UI,9,)[%title%]$crlf()
$rgb(128,128,128)$set_font(Meiryo UI,8,)[%artist%] ― [%album%]
$set_font(Meiryo UI,7,)$crlf() [%playback_time% / %playback_time_remaining%] 
で、実際に表示されたパネル上で右クリック→[Word wrapping]のチェックを外します。フォントは何でも良いですがサイズは大体8か9。再生時間/残り時間はそれぞれ左右端に配したいところですがこれも妥協。
「次はこちら/履歴/歌詞」のボタンも早々に妥協して、先程スルーしたランダム再生やリピート再生を可能にする[Playback order]をレイアウト9行目の [Button]の代わりに付けます。見た目は遠ざかりましたが機能は一緒なので…。そして検索の代用は特に何も考えずFilter search。この二つが横並びになると嵩張るのでvertical splitterで上下に並べます。そしてこの段の右端にはまた[Blanking button]を足して形を整えます。
素人の変装感
ここまででこれ。上がfoobar2000で下がiTunes。ボリュームの右と検索の左にもう少し余白足したり足さなかったり、パネルをドラッグして良い感じの配置を探して一段目終わりです。前述の通りウィンドウサイズ変えるだけでもかなり変動するので右クリック→[Lock panel]で適宜抑えると良いかもしれません。

メニューバーの段はメニューバー[Menu]があればそれでOKです。

一覧表示

三段目はiTunes独自機能のエリアなので後で考えるとして、左側のプレイリスト。このカスタマイズに関しては特に書くことも無いのですが、iTunesからインポートしたい場合は(*.m3u8)で書き出しておかないと文字化けします。また、foobar2000(或いは他のソフト)でメディアライブラリ内の曲から作成したプレイリストをiTunesに読み込ませる時、iTunesの環境設定詳細で[ライブラリへの追加時にファイルをiTunesのメディアフォルダにコピー]にチェックが入っていると、さらっと重複ファイルが発生するので注意です(経験談)。

カラムブラウザに相当する[Filter]の箇所を弄ってみましょう。v2からは[ReFacets]を利用する方法もあるようですが、慣れてる方でやります。初期状態では[Genre][Artist][Album]の三項目が表示されていますが、個人的には
  1. 他に作曲、作詞、グループ(私は編曲者情報記入用にしているので“編曲”)の項目も適宜加えたい
  2. アルバム名やアーティスト名等“読み”を設定したものはそちらでソートしたい
といった欲求があるのでそれを叶えるべく[Preferences]→[Display]→[Columns UI]→[Filters]の設定を少々弄ります。
[Fields]タブに
NameField
ジャンルGenre
作曲者$char(3)000000$if3(%COMPOSERSORTORDER%,%COMPOSER%,)$char(3)%COMPOSER%
編曲contentgroup
作詞者Lyricist
アーティスト$char(3)000000$if3(%ARTISTSORTORDER%,%artist%,)$char(3)%artist%
アルバム$char(3)000000$if3(%ALBUMSORTORDER%,%ALBUM%,)$char(3)%ALBUM%
…と書き込みます。そして上記レイアウト19行目辺りの[Filter][Filter][Filter]は使う分だけ足して(とは言え通常は3つ程度で十分かと)パネル上で右クリックして使うフィルターを選びます。
使うフィルターを選ぶ
これでiTunesのカラムブラウザに相当する部分出来上がりです。

次は曲リストの部分です。そのままでも困らない箇所ですが個人的にグループ表示は不要と思うので[Preferences]→[Display]→[Columns UI]→[Playlist view]の[Grouping]タブで[Show groups]のチェックを外します。そのままGlobalsタブに移動、中の[Styles]タブに書いてある通り、2行目の「//」を消すとiTunesと同じ、白とグレーで色分けされたリストになります。
ついでに[Columns UI]→[Colours and fonts]の[Colours]タブで
Element: Global
Scheme: Custom
Selected itemのBackgroundをR38/G135/B251
Inactive selected itemの同箇所をR216/G216/B216
にすると、よりiTunesに近付きます。

ステータスバーは[Preferences]→[Display]→[Columns UI]内の[Status bar]タブから設定。ボリューム以外は表示にチェックを入れて、Title formatting scriptは必要に応じて。デフォルトで合計曲数・時間・サイズが出るのは良いですが、センタリング出来ないのが不満ではあります。

続・操作パネル

ここまでの過程でほったらかしにして来た箇所を何とかしましょう。
まず歌詞表示ですが、レイアウト最下行・[Playlist view]の位置に[Holizontal splitter]を入れ、[Playlist view]と[Item details]が並ぶようにします。この[Item details]の[Create left toggle area]にチェックを入れて、[Configure panel...]では
$set_font(F910新コミック体,9,)[$crlf()%lyrics%][$crlf()%UNSYNCED LYRICS%]
[$crlf()$crlf()$crlf()Lyrics by %LYRICIST%]
とします。フォントの書体やサイズはもちろんお好みで。これで曲リストの右隣に出し入れ自在な歌詞表示欄が出来ました。スイッチ部分を見失っても慌てずに。

そして長らく仮ボタンにしていた三段目のセレクタ―とストアボタンの代替です。
まず、ムービー/動画ファイルを扱えるようにしたいのでYoutube Sourceをインストールします。Youtubeをfoobar2000から見られるようにするコンポーネントなのですが、これを利用すればローカルファイルも(対応形式なら)見られるようになります。
三段目右側の[Buttons](上のレイアウト図で13行目)を編集して[View/Visualizations/Video]を呼び出すボタンを作ります。
並ぶボタンは“|<|>|🎞Movie|”。“<”と“>”についてはiTunes的な体裁を整えるために入れただけなので好きな機能を割り当てれば良いと思います。
一回保存

レイアウト切替

ここで一度[Preferences]→[Display]→[Columns UI][Main]タブの[Export configuration]から設定を保存しておきましょう。後で読み込めるよう、ここまでのレイアウトに何でも良いので名前を付けます。ここでは仮に“MusicPlayer”とでもしておきましょうか。
[Duplicate]でこのレイアウトをコピー、その名前を仮に“ExtraPlayer”とします。そしてすぐに“MusicPlayer”に戻り、三段目の未だ手付かずの[Buttons]に[View/Layout/ExtraPlayer]を呼び出すボタンを作ります。これのテキストを“Ex(ExtraPlayerを呼び出すことが判れば何でも)”、もう一つ[Blanking button]を並べ、これのテキストを“Music(同上)”とします。“ExtraPlayer”のレイアウト設定に移動し、同箇所に同じようにボタンを作り、[View/Layout/MusicPlayer]を呼び出すボタンの方を“Music”、空ボタンの方を“Ex”とします。両レイアウトとも中央辺りにこの二つのボタンを配し、出来ればレイアウトを切り替えた時に同じ位置に来ると気持ち良いです。iTunesの[ライブラリ][ストア]の切替を模すように。

ここから更にコンポーネントを追加し“ExtraPlayer”の方にiTunesに無い/遊べる要素を盛り込むことになりますが、単にiTunes代理を求めるならレイアウトコピーする前で終了しても差し支え無いと思います。

最終的なレイアウトはこんな感じになりました(印付きのボタンは空ボタンのみ)。
レイアウト全貌

後は気分で微調整です。
iTunesではない何か

趣味で足すあれこれ

ここまでiTunes似のレイアウトを作ってきたfoobar2000ですが、折角色々な機能が足せるので少々遊んでみるカスタマイズを施します。
追加するコンポーネントはEffect DSPWaveform Minibar (mod)です。

選択しているのが“ExtraPlayer”の方であることを確認してレイアウトを編集します。端的に言うと、ツールボタンとリストの間に機能をねじ込んでいく形となります。お洒落とかスタイリッシュとか一切抜きです。もっと言うと、ほぼEffect DSPです。v2になる前はSoundTouch DSPを使ってましたが今はこちら。
基本的に[Preferences]→[Playback]→[DSP Manager]でプリセット作成・保存してそれを呼び出すボタンを配置する作業です。この値はバックアップしたfoobar2000の設定を読み込んでも復元されない(方法を知らない)のでこの機に記録するのも良いかと思いました。が、数値は複雑ではないけれど消える度にプリセット作り直す手数が単純に面倒でたまりません。
Default
Active DSPsが空欄の状態
PitchUp
[Pitch Shift] - Pitch:+4.00 semitones
PitchDown
[Pitch Shift] - Pitch:-3.50 semitones
TempoUp
[Tempo Shift] - Tempo:+30.00 %
TempoDown
[Tempo Shift] - Tempo:-25.00 %
Rough
[Pitch Shift] - Pitch:-3.50 semitones
[Tempo Shift] - Tempo:+30.00 %
Smooth
[Pitch Shift] - Pitch:+2.50 semitones
[Tempo Shift] - Tempo:-20.00 %
[Reverb] - Dry-50/Wet-50/Daming-90/RSize-70/RWidth-80
で、これらはボタンのコマンド一覧の中に[Playback/DSP Setting/Default]等として並んでいるのでボタン化してしまいます。配置先は三段目のボタンの並びの下。真ん中にしたかったので左右に空ボタンを置いています。
操作エリアとリストの間
このページで書いているのは図の青枠の中についてだけとも言えます。
曲調を変化させる上記のボタンの下には↑のように動画パネル+音声波形付きシークバー、イコライザ、スペアナを並べていますが、そんなに深い意味は無く、折角有るんだから付けておこう、くらいの感覚です。

完成品がこれ↓。イコライザが付いてるだけで何か音楽を編集してる人気分を味わえます。実際は完成した曲にあまりEQ使わない派ですが。
何らかの機能付きプレイヤー

ごちゃごちゃした内容に最後までお付き合い下さいましてありがとうございました。
今回構築した設定ファイルはこちら(zip/7.29KB)。文中紹介させて頂いたコンポーネントをインストール後にインポートすると同じものが使えます(Effect DSPの設定は保持出来ない模様)ので、試してみたい方・これを元に改造したい方は御自由にお持ち下さい。