なげやりろぐ

フテイキコウシン

 覚え書き2


Columns UIのフォーマットはとりあえず出来たので、今回はパネルレイアウトをしてみる。


どの程度のコンポーネントを配置するのかでレイアウトも変わってはくるが、とりあえず前回のスタイルを踏襲してみることにする。
しかし、0.9.1では使えないコンポーネントもあったので、別のヤツを代わりに配置することにした。


出来上がりのイメージとしては、コントロール関係が中央に来るようにし、プレイリストは下部においてColumns UIの設定をすべて表示できるようにするってところかな。

まずは標準で表示されているメニューをすべて取っ払ってしまうことから開始する。

コンポーネント上で右クリックしてチェックをすべて外してしまう
http://i52.photobucket.com/albums/g33/Kei_F/Hatena/Snap1.png:image:w400

PlaylistTabだけ残るが、この後の設定で消えるのでキニシナイ
http://i52.photobucket.com/albums/g33/Kei_F/Hatena/Snap2.png:image:w400

Ctrl+Pを押すとPreferencesウインドウが現れるので、Columns UI→Layoutタブを選択。

PresetエリアのNewボタンを押して新しいプリセットを作成します
http://i52.photobucket.com/albums/g33/Kei_F/Hatena/Snap3.png:image:w400

Columns UIと表示されている部分を右クリックしてコンテキストメニューを出し、Horizontal splitterに変更
http://i52.photobucket.com/albums/g33/Kei_F/Hatena/Snap4.png:image:w400

右クリックを繰り返し以下のようなツリーを作っていきます。

タイトルキャプションを表示したいときはShow captionをチェック
日本語にしたいときはUse custom titleをチェックし、下のボックスに好きなタイトルを入力します
http://i52.photobucket.com/albums/g33/Kei_F/Hatena/Capture069.png:image:w400

ツリーが枠からはみ出しているので一つ一つツリーを分解した画像を以下に貼っておきます
http://i52.photobucket.com/albums/g33/Kei_F/Hatena/Capture064.pnghttp://i52.photobucket.com/albums/g33/Kei_F/Hatena/Capture065.pnghttp://i52.photobucket.com/albums/g33/Kei_F/Hatena/Capture066.pnghttp://i52.photobucket.com/albums/g33/Kei_F/Hatena/Capture067.png

必要なコンポーネントが足りなくて設定できなかった場合は関連サイトから集めてComponentフォルダにぶち込んでfoobarを再起動後に設定します。
ここまで出来たらApplyボタンを押して適用してみます。


で、とりあえず完成画像。

ここまでの設定ではまだこうはなりません。この状態にするにはもう少しパネルの設定を弄る必要があります。
http://i52.photobucket.com/albums/g33/Kei_F/Hatena/Capture070.png:image:w400

  • 色とかフォントなどは個人の好みによるところが大きいので、あえて設定画面は貼りません。
    • 左上のプレイリストスイッチャーの設定はColumns UIツリーにあります。
    • その下のアルバムリストはMedia libraryツリーの中に設定があります。
    • 真ん中のジャケットを表示するAlbum Art PanelはDisplayツリーに設定があります。
    • その下のVisualizerの設定はパネル上で右クリックです。
    • ボタンのカスタマイズ設定もパネル上で右クリックです。
      • 出来合いのボタン用画像などを適用するときなどに、この設定画面のToolsから読み込みます。
    • 右側にあるトラック情報パネルも右クリックで設定画面にアクセスできます。
      • ここではfoobarの公式フォーラムでLycox氏が公開されているフォーマットテキストを多少改造して使用しています。ここのコードエリアはコピペするとCSVみたいに繋がってしまうのでそのまま使えないのがつらいところです。なのでシコシコと手作業で分解して適用しました。公開されているものと言うこともあり、再配布も可能かなとは思いましたが許可を得るのが面倒なので、テキストをここに貼り付けておくだけにします。

// Highly customizeable track information made by Lycox
// Credits:
// Peter Pawlowski for great fb2k// Free - for great progressbar
// upNorth - for filesize string
// Looks quite good with Arial, 8pt bold
// ==============================================
// Global Config Part
//
// Shows Song Info in track info panel
// 0 = No, 1 = Yes
$puts(show_songinfo,1)
// Show various informations in Song Info
// 0 = No, 1 = Yes
$puts(title,1)
$puts(artist,1)
$puts(mixartist,1)
$puts(band,1)
$puts(album,1)
$puts(tracknumber,1)
$puts(genre,1)
$puts(bpm,1)
$puts(date,1)
$puts(copyright,1)
// Shows Additional Info in track info panel
// 0 = No, 1 = Yes
$puts(show_additionalinfo,1)
// Show various informations in Additional Info
// 0 = No, 1 = Yes
$puts(comment,1)
$puts(wwwartist,1)
$puts(publisher,1)
$puts(language,1)
$puts(composer,1)
$puts(lyricist,1)
$puts(conductor,1)
$puts(recordingdates,1)
$puts(fileowner,1)
// Shows Technical Info in track info panel
// 0 = No, 1 = Yes
$puts(show_techinfo,1)
// Show various informations in Tech Info
// 0 = No, 1 = Yes
$puts(codec,1)
$puts(bitrate,1)
$puts(samplerate,1)
$puts(channels,1)
$puts(time_elapsed_total,1)
$puts(trackgain,1)
$puts(albumgain,1)
$puts(rating,1)
$puts(play_counter,1)
$puts(play_date,1)
$puts(encodedby,1)
$puts(encodersettings,1)
$puts(filesize,1)
// hidden, because not really needed
$puts(filename_ext,0)
$puts(mediatype,0)
$puts(size,0)
$puts(songlen,0)
$puts(time,0)
// Shows Web Info in track info panel
// 0 = No, 1 = Yes
$puts(show_webinfo,1)
// Shows Web Related Infos in Web Info
// 0 = No, 1 = Yes
$puts(show_webrelated,1)
// Show various informations in Web Info
// 0 = No, 1 = Yes
$puts(wwwaudiofile,1)
$puts(wwwcopyright,1)
$puts(wwwcommercialinfo,1)
$puts(wwwpayment,1)
$puts(wwwpublisher,1)
$puts(wwwuser,1)
// Shows NetRadio Info in Web Info
// 0 = No, 1 = Yes
$puts(show_netradioinfo,1)
// Show various informations in NetRadio Info
// 0 = No, 1 = Yes
$puts(wwwradiopage,1)
$puts(netradioowner,1)
$puts(netradiostation,1)
// Shows Misc Info in track info panel
// 0 = No, 1 = Yes
$puts(show_miscinfo,1)
// Show various informations in Misc Info
// 0 = No, 1 = Yes
$puts(subtitle,1)
$puts(involvedpeople,1)
$puts(playlistdelay,0)
$puts(initialkey,0)
$puts(isrc,0)
$puts(partinset,0)
// Shows Original Info in track info panel
// 0 = No, 1 = Yes
$puts(show_originalinfo,1)
// Show various informations in Original Info
// 0 = No, 1 = Yes
$puts(origartist,1)
$puts(origyear,1)
$puts(origlyricist,1)
$puts(origfilename,1)
// Spacer
$puts(spacer,d6d6d6------------------------------------------------------------------------------------------$char(10))
// color codes
$puts(headline,256d3d)
$puts(info,ec9184)
$puts(text,000000)
$puts(grayed,c8c8c8)
// chars
$puts(rating_char,♪)
$puts(progress_char,●)
// End Global Config
// ==============================================
DCAE8DMode: %_trackinfo_mode%$char(10)$if(%_trackinfo_notrack%,No track,
// progressbar config
$puts(theme,1)
$puts(progress_length,18)
$if($strcmp($get(theme),1),
$puts(progress_color1,ff6d66)
$puts(progress_color2,ffe1df))
// PREPARE COLOR-STRINGS
// =========================================
$puts(progress_color1a,$blend($get(progress_color1),000000,1,4.5))
$puts(progress_color2a,$blend($get(progress_color2),000000,1,5.7))
// progressbar
$puts(progressbar,
$if(%_length_seconds%,
$puts(progress,$muldiv(%_time_elapsed_seconds%,$get(progress_length),%_length_seconds%))
$transition($repeat($get(progress_char),$get(progress)),$get(progress_color1a),$get(progress_color1))
$transition($repeat($get(progress_char),$sub($get(progress_length),$get(progress))),$get(progress_color2a),$get(progress_color2))
$pad_right($muldiv(%_time_elapsed_seconds%,100,%_length_seconds%),3)'%'
,streaming...
))
$get(progressbar))$char(10)
// Song Info
$if($strcmp(1,$get(show_songinfo)),
$get(spacer)
$char(1)C$get(headline)Song Info$char(10)
$if($strcmp(1,$get(title)),$get(info)Title: $get(text)$if(%title%,%title%,$get(grayed)'['No Title']')$char(10))
$if($strcmp(1,$get(artist)),$get(info)Artist: $get(text)$if(%artist%,%artist%,$get(grayed)'['Unknown Artist']')$char(10))
$if($strcmp(1,$get(mixartist))
|$strcmp(1,$get(band))
,
$if($strcmp(1,$get(mixartist)),$if(%mixartist%,$get(info)MixArtist: $get(text)%mixartist%$char(10)))
$if($strcmp(1,$get(band)),$if(%band%,$get(info)Band: $get(text)%band%$char(10))))
$if($strcmp(1,$get(album)),$if(%album%,$get(info)Album: $get(text)%album%$char(10)))$if($strcmp(1,$get(tracknumber)),$if(%tracknumber%,$get(info)Track: $get(text)%tracknumber%$char(10)))
$if($strcmp(1,$get(genre)),$if(%genre%,$get(info)Genre: $get(text)%genre%$char(10)))$if($strcmp(1,$get(bpm)),$if(%bpm%,$get(info)bpm: $get(text)%bpm%$char(10)))
$if($strcmp(1,$get(date)),$if(%date%,$get(info)Date: $get(text)%date%$char(10)))
$if($strcmp(1,$get(copyright)),$if(%copyright%,$get(info)© $get(text)%copyright%$char(10))))
// End Song Info
// Additional Info
$if($strcmp(1,$get(show_additionalinfo)),$if($if(%comment%,$and($strcmp(1,$get(comment))))
|$if(%wwwartist%,$and($strcmp(1,$get(wwwartist))))
|$if(%publisher%,$and($strcmp(1,$get(publisher))))
|$if(%language%,$and($strcmp(1,$get(language))))
|$if(%composer%,$and($strcmp(1,$get(composer))))
|$if(%lyricist%,$and($strcmp(1,$get(lyricist))))
|$if(%conductor%,$and($strcmp(1,$get(conductor))))
|$if(%recordingdates%,$and($strcmp(1,$get(recordingdates))))
|$if(%fileowner%,$and($strcmp(1,$get(fileowner))))
,$get(spacer)
$char(1)C$get(headline)Additional Info$char(10)
$if($strcmp(1,$get(comment)),$if(%comment%,$get(info)Comment: $get(text)%comment%$char(10)))
$if($strcmp(1,$get(wwwartist)),$if(%wwwartist%,$get(info)Web: $get(text)%wwwartist%$char(10)))
$if($strcmp(1,$get(publisher)),$if(%publisher%,$get(info)Publisher: $get(text)%publisher%$char(10)))
$if($strcmp(1,$get(language)),$if(%language%,$get(info)Language: $get(text)%language%$char(10)))
$if($strcmp(1,$get(composer)),$if(%composer%,$get(info)Composer: $get(text)%composer%$char(10)))
$if($strcmp(1,$get(lyricist)),$if(%lyricist%,$get(info)Lyricist: $get(text)%lyricist%$char(10)))
$if($strcmp(1,$get(conductor)),$if(%conductor%,$get(info)Conductor: $get(text)%conductor%$char(10)))
$if($strcmp(1,$get(contentgroup)),$if(%contentgroup%,$get(info)Group: $get(text)%contentgroup%$char(10)))
$if($strcmp(1,$get(recordingdates)),$if(%recordingdates%,$get(info)Rec. Date: $get(text)%recordingdates%$char(10)))
$if($strcmp(1,$get(fileowner)),$if(%fileowner%,$get(info)Owner: $get(text)%fileowner%$char(10)))))
// End Additional Info
// Tech Info
$if($strcmp(1,$get(show_techinfo)),
$get(spacer)
$char(1)C$get(headline)Tech Info$char(10)
$if($strcmp(1,$get(codec)),$get(info)Codec: $get(text)%__codec%$char(10))
$if($strcmp(1,$get(bitrate)),$get(info)Bitrate: $get(text)%__bitrate% Kbit/s$char(10))
$if($strcmp(1,$get(samplerate)),$get(info)Samplerate: $get(text)%__samplerate% Hz$char(10))
$if($strcmp(1,$get(channels)),$get(info)Channels: $get(text)$if(%__channels%,$ifgreater(%__channels%,2,%__channels%ch,$ifgreater(%__channels%,1,' 'Stereo,''Mono)),)$char(10))
$if($strcmp(1,$get(time_elapsed_total)),$get(info)Time: $get(text)%_time_elapsed% / %_time_total%$char(10))
$puts(size,5)
$if($strcmp(1,$get(trackgain)),$if(%__replaygain_track_gain%,$get(info)RG Track: $get(text)$cut(%__replaygain_track_gain%,$get(size)) dB$char(10)))
$if($strcmp(1,$get(albumgain)),$if(%__replaygain_album_gain%,$get(info)RG Album: $get(text)$cut(%__replaygain_album_gain%,$get(size)) dB$char(10)))
$puts(rating,1)$puts(_rating,$repeat($get(rating_char),%rating%))
$if($strcmp(1,$get(rating)),$if(%rating%,$get(info)Rating: $get(text) $get(_rating) $get(grayed)'('%rating%')'$char(10)))
$if($strcmp(1,$get(play_counter)),$if(%play_counter%,$get(info)Played $get(text)%play_counter%$get(info) times.$char(10)))
$if($strcmp(1,$get(play_date)),$if(%play_date%,$get(info)Last played: $get(text)%play_date%$char(10)))
$if($strcmp(1,$get(encodedby)),$if(%encodedby%,$get(info)Encoded by: $get(text)%encodedby%$char(10)))
$if($strcmp(1,$get(encodersettings)),$if(%encodersettings%,$get(info)Encoder Settings: $get(text)%encodersettings%$char(10)))
// formating filesize string by upNorth
$if($strcmp(1,$get(filesize)),$get(info)Filesize: $get(text)$div(%_filesize%,1048576).$left($num($muldiv($mod(%_filesize%,1048576),1000,1048576),3),2)' MB'$char(10))
$if($strcmp(1,$get(filename_ext)),$get(info)File: $get(text)%_filename_ext%$char(10))
$if($strcmp(1,$get(mediatype)),$if(%mediatype%,$get(info)Mediatype: $get(text)%mediatype%$char(10)))
$if($strcmp(1,$get(size)),$if(%size%,$get(info)Size: $get(text)%size%$char(10)))
$if($strcmp(1,$get(songlen)),$if(%songlen%,$get(info)Length: $get(text)%songlen%$char(10)))
$if($strcmp(1,$get(time)),$if(%time%,$get(info)Time: $get(text)%time%$char(10))))
// End Tech Info
// Web Info
$if($strcmp(1,$get(show_webinfo)),
$if($if(%wwwaudiofile%,$and($strcmp(1,$get(wwwaudiofile))))
|$if(%wwwcopyright%,$and($strcmp(1,$get(wwwcopyright))))
|$if(%wwwcommercialinfo%,$and($strcmp(1,$get(wwwcommercialinfo))))
|$if(%wwwpayment%,$and($strcmp(1,$get(wwwpayment))))
|$if(%wwwpublisher%,$and($strcmp(1,$get(wwwpublisher))))
|$if(%wwwuser%,$and($strcmp(1,$get(wwwuser))))
|$if(%wwwradiopage%,$and($strcmp(1,$get(wwwradiopage))))
|$if(%netradioowner%,$and($strcmp(1,$get(netradioowner))))
|$if(%netradiostation%,$and($strcmp(1,$get(netradiostation))))
,$get(spacer)
// Web Related
$if($strcmp(1,$get(show_webrelated)),
$if($if(%wwwaudiofile%,$and($strcmp(1,$get(wwwaudiofile))))
|$if(%wwwcopyright%,$and($strcmp(1,$get(wwwcopyright))))
|$if(%wwwcommercialinfo%,$and($strcmp(1,$get(wwwcommercialinfo))))
|$if(%wwwpayment%,$and($strcmp(1,$get(wwwpayment))))
|$if(%wwwpublisher%,$and($strcmp(1,$get(wwwpublisher))))
|$if(%wwwuser%,$and($strcmp(1,$get(wwwuser))))
,
$char(1)C$get(headline)Web Info$char(10)
$if($strcmp(1,$get(wwwaudiofile)),$if(%wwwaudiofile%,$get(info)File: $get(text)%wwwaudiofile%$char(10)))
$if($strcmp(1,$get(wwwcopyright)),$if(%wwwcopyright%,$get(info)© $get(text)%wwwcopyright%$char(10)))
$if($strcmp(1,$get(wwwaudiosource)),$if(%wwwaudiosource%,$get(info)Source: $get(text)%wwwaudiosource%$char(10)))
$if($strcmp(1,$get(wwwcommercialinfo)),$if(%wwwcommercialinfo%,$get(info)Info: $get(text)%wwwcommercialinfo%$char(10)))
$if($strcmp(1,$get(wwwpayment)),$if(%wwwpayment%,$get(info)Payment: $get(text)%wwwpayment%$char(10)))
$if($strcmp(1,$get(wwwpublisher)),$if(%wwwpublisher%,$get(info)Publisher: $get(text)%wwwpublisher%$char(10)))
$if($strcmp(1,$get(wwwuser)),$if(%wwwuser%,$get(info)User: $get(text)%wwwuser%$char(10)))$char(10)))
// End Web Info
// Net Radio Ifno
$if($strcmp(1,$get(show_netradioinfo)),
$if($if(%wwwradiopage%,$and($strcmp(1,$get(wwwradiopage))))
|$if(%netradioowner%,$and($strcmp(1,$get(netradioowner))))
|$if(%netradiostation%,$and($strcmp(1,$get(netradiostation))))
,$char(1)C$get(headline)NetRadio Info$char(10)
$if($strcmp(1,$get(wwwradiopage)),$if(%wwwradiopage%,$get(info)Page: $get(text)%wwwradiopage%$char(10)))
$if($strcmp(1,$get(netradioowner)),$if(%netradioowner%,$get(info)Owner: $get(text)%netradioowner%$char(10)))
$if($strcmp(1,$get(netradiostation)),$if(%netradiostation%,$get(info)Station: $get(text)%netradiostation%$char(10)))))))
// End - Web Related
// Misc Info
$if($strcmp(1,$get(show_miscinfo)),
$if($if(%subtitle%,$and($strcmp(1,$get(subtitle))))
|$if(%involvedpeople%,$and($strcmp(1,$get(involvedpeople))))
|$if(%playlistdelay%,$and($strcmp(1,$get(playlistdelay))))
|$if(%initialkey%,$and($strcmp(1,$get(initialkey))))
|$if(%isrc%,$and($strcmp(1,$get(isrc))))
|$if(%partinset%,$and($strcmp(1,$get(partinset))))
,$get(spacer)
$char(1)C$get(headline)Misc Info$char(10)
$if($strcmp(1,$get(subtitle)),$if(%subtitle%,$get(info)Subtitle: $get(text)%subtitle%$char(10)))
$if($strcmp(1,$get(involvedpeople)),$if(%involvedpeople%,$get(info)Involved People: $get(text)%involvedpeople%$char(10)))
$if($strcmp(1,$get(playlistdelay)),$if(%playlistdelay%,$get(info)Playlistdelay: $get(text)%playlistdelay%$char(10)))
$if($strcmp(1,$get(initialkey)),$if(%initialkey%,$get(info)Initialkey: $get(text)%initialkey%$char(10)))
$if($strcmp(1,$get(isrc)),$if(%isrc%,$get(info)ISRC: $get(text)%isrc%$char(10)))
$if($strcmp(1,$get(partinset)),$if(%partinset%,$get(info)Partinset: $get(text)%partinset%$char(10)))))
// End Misc Info
// Original Info
$if($strcmp(1,$get(show_originalinfo)),
$if($if(%origartist%,$and($strcmp(1,$get(origartist))))
|$if(%origyear%,$and($strcmp(1,$get(origyear))))
|$if(%origlyricist%,$and($strcmp(1,$get(origlyricist))))
|$if(%origfilename%,$and($strcmp(1,$get(origfilename))))
,$get(spacer)
$char(1)C$get(headline)Original Info$char(10)
$if($strcmp(1,$get(origartist)),$if(%origartist%,$get(info)Artist: $get(text)%origartist%$char(10)))
$if($strcmp(1,$get(origyear)),$if(%origyear%,$get(info)Year: $get(text)%origyear%$char(10)))
$if($strcmp(1,$get(origlyricist)),$if(%origlyricist%,$get(info)Lyricist: $get(text)%origlyricist%$char(10)))
$if($strcmp(1,$get(origfilename)),$if(%origfilename%,$get(info)Filename: $get(text)%origfilename%$char(10)))))

    • 一番右側のブラウザパネルはMedia libraryツリーの中に設定があります。

とりあえずこんな感じで見た目の設定は完了。

あとはDSPなど内部的なものなので割愛。


もう0.9.2が結構いい線まで行っているみたいだが、頻繁にバージョンアップするのも考え物だね。

しばらくはこの構成で遊んでみることにします。