Recommended Posts

Plugins:

Columns UI & Album List Panel

foo_custom info

Track Info Mod & Single Column Playlist

foo_cwb_hooks

Tabbed Panel Stack Mod

Make sure to check the requirements on each page (especially columns UI and track info mod). Also when you install foobar, untick ?Enable Per User Settings?. It makes it a lot easier and is what my code is written arounLayout

tabs1dm.jpg

Rename the tab by right clicking on them, change to Visual Tab and Playlist Tab respectively. To hide right click and select the optioPlaylist Tab

playlisttab4oo.jpg

Track Info 1

Background: RGB 22-22-31

Min. Height: 18

Egde Style: None

// Global
$padding(4,0)

// Background

// PerTrack

// PerSecond

$align(left,)
$font(Calibri,9,,221-222-223)
[%_time_elapsed%]

$align(right,)
$font(Calibri,9,,221-222-223)
[%length%]

$drawrect($muldiv(%_width%,8,100),3,$muldiv(%_width%,81,100),9,brushcolor-null pencolor-180-184-194)
$drawrect($add($muldiv(%_width%,8,100),2),5,$ifgreater($muldiv($sub($muldiv(%_width%,81,100),4),%playback_time_seconds%,%length_seconds%),0,$muldiv($sub($muldiv(%_width%,81,100),4),%playback_time_seconds%,%length_seconds%),1),5,brushcolor-240-240-240 pencolor-null)[/codeb[b]Single Column Playlist[/b]
Row Height: 18
Group Rows: 2
Edge Style: none[b]Group By[/b]
[code]%album%[/code]
[b]Item Display[/b]
[codebox]$ifequal($mod(%tracknumber%,2),0,
$imageabs(,,\images\LE5\reluna1.png,),
$imageabs(,,\images\LE5\reluna2.png,))

$if(%_selected%,$imageabs(,,\images\LE5\relunagreen.png,),)

$if(%isplaying%,$imageabs(,,\images\LE5\relunablue.png,),)
$if(%isplaying%,$font(Calibri,8,bold,0-0-200),$font(Calibri,8,,0-0-0))

$alignabs(279,2,%_width%,20,left,)
$if(%isplaying%,%_time_remaining%,%length%)

$padding(7,)
$align(left,middle)
[%tracknumber%]

$alignabs(28,2,240,20,left,)
[%title%]

$ifgreater($mul(%_height%,%_itemcount%),88,
$imageabs2(100,90,0,$sub($mul(%_height%,%_itemindex%),$add(%_height%,1)),,%_height%,175,,images\ART_cd.png,)
$imageabs2(80,79,0,$sub($mul(%_height%,%_itemindex%),$add(%_height%,5)),,%_height%,190,,$replace(%path%,%filename_ext%,folder.jpg),)
$imageabs2(100,90,0,$sub($mul(%_height%,%_itemindex%),$add(%_height%,1)),,%_height%,175,,images\case.png,)
,)

Group Display

$imageabs(,,\images\LE5\relunaorange2.png,)

$imageabs(4,11,\images\LE5\arrow.png,)

$alignabs(270,9,%_width%,20,left,)
$font(Calibri,11,glow- glowexpand-0 glowalpha-15,40-40-40)
[%date%]
//$replace($replace(%date%,20,''),19,'')

$alignabs(28,3,%_width%,20,left,top)
$font(Calibri,10,bold glow- glowexpand-0 glowalpha-15,40-40-40)
$cut($if(%album artist%,%album artist%,%artist%),42)

$font(Calibri,10,glow- glowexpand-0 glowalpha-15,40-40-40)
$alignabs(28,13,250,20,left,bottom)
%album%

Track Info 2

Min. Height: 25

Edge Style: none

// Global

// Background

$imageabs(,,/images\LE5\reluna.png,)

// PerTrack

$puts(rating,$if2(%rating%,0))
$button(5,7,0,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating1.png,Rate 1,)
$button(5,7,13,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating2.png,Rate 2,)
$button(5,7,26,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating3.png,Rate 3,)
$button(5,7,39,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating4.png,Rate 4,)
$button(5,7,52,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating5.png,Rate 5,)

//$puts(rating,$if2(%rating%,0))
//$button(5,7,0,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating1.png,TAG:SET:Rating:1,)
//$button(5,7,13,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating2.png,TAG:SET:Rating:2,)
//$button(5,7,26,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating3.png,TAG:SET:Rating:3,)
//$button(5,7,39,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating4.png,TAG:SET:Rating:4,)
//$button(5,7,52,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating5.png,TAG:SET:Rating:5,)

//PLAY/PAUSE
$button(238,1,0,0,22,21,
$if($or(%ispaused%,$not(%isplaying%)),/images\LE5\pause.png,/images\LE5\play.png),
$if($or(%ispaused%,$not(%isplaying%)),/images\LE5\play_.png,/images\LE5\pause_.png),
$if($or(%ispaused%,$not(%isplaying%)),play,pause)
,)

//PREVIOUS
$button(213,1,0,0,22,21,/images\LE5\prev.png,/images\LE5\prev_.png,previous,)

//NEXT
$button(263,1,0,0,22,21,/images\LE5\next.png,/images\LE5\next_.png,next,)

//ALBUM LIST
//$button(291,1,0,0,22,21,/images\LE5\search.png,/images\LE5\search_.png,Library Tab,)
$button(291,1,0,0,22,21,/images\LE5\search.png,/images\LE5\search_.png,Album List,)

//LAYOUT
$button(184,1,0,0,22,21,/images\LE5\visual.png,/images\LE5\visual_.png,Visual Tab,)

// PerSecond
[/codeb[b]Visual Tab[/b]
Youll want to have album art that is about 300x300 for this to look decent, and all album art is in the song directory labeled folder.jpg.
[img]http://img246.imageshack.us/img246/5376/visualtab5mb.jpg[/i[b]Track Info 3[/b]
Background: RGB 22-22-31
[codebox]// Global

// Background

// PerTrack

$imageabs2(300,300,0,0,0,0,10,10,$replace(%path%,%filename_ext%,folder.jpg),)

$imageabs2(300,300,0,0,0,0,10,313,$replace(%path%,%filename_ext%,folder.jpg),ROTATEFLIP-6)

$imageabs2(0,0,0,0,0,0,0,313,/images\LE5\overlay3.png,)

//$button(06,393,0,0,22,21,/images\LE5\search.png,/images\LE5\search_.png,Library Tab,)
$button(06,393,0,0,22,21,/images\LE5\search.png,/images\LE5\search_.png,Album List,)

$button(291,393,0,0,22,21,/images\LE5\playlist.png,/images\LE5\playlist_.png,Playlist Tab,)
$if(%_isplaying%,
$font(Calibri,18,bold glow-146-153-179 glowblur-10 glowalpha-220,22-22-31)
$alignabs(,320,327,25,center,)
%artist%

$font(Calibri,14,bold glow-146-153-179 glowblur-10 glowalpha-220,22-22-31)
$alignabs(,345,327,44,center,)
%title%
,
$font(Calibri,20,bold glow-146-153-179 glowblur-10 glowalpha-220,22-22-31)
$alignabs(,345,327,100,center,)
Not playing...
)

// PerSecond

$if(%_isplaying%,
$drawrect(40,390,242,10,brushColor-null penColor-146-153-179)
$drawrect(42,392,$ifgreater($muldiv($muldiv(%playback_time_seconds%,100,%length_seconds%),238,100),0,$muldiv($muldiv(%playback_time_seconds%,100,%length_seconds%),238,100),1),6,brushColor-146-153-179 penColor-null)
)
$font(Calibri,8,,146-153-179)
$alignabs(40,400,322,100,left,)
[%playback_time%]
$alignabs(241,400,42,100,right,)
[%length%]

$alignabs(70,400,182,15,center,)
[Next song: %cwb_next_title%]

Hey, I tried your tutorial, and I'm a newb, mine didn't come out quite right, I did not get the orange/colored hovers over the songs like in your picture, can someone help me?

Hey, I tried your tutorial, and I'm a newb, mine didn't come out quite right, I did not get the orange/colored hovers over the songs like in your picture, can someone help me?

The orange is the album track background, it should be linked in the config to where you have your images.

Oh, no need to quote 10,000 lines btw :p

well the thing is some images who but those don't

http://img512.imageshack.us/img512/765/foobarbi5.png

when you install foobar untick enable per user settings, or change the code and place the images in application data.

also i changed the code around and made it scalable, i just need to figure out how to do the visual tab on mine. let me know if you want it.

when you install foobar untick enable per user settings, or change the code and place the images in application data.

also i changed the code around and made it scalable, i just need to figure out how to do the visual tab on mine. let me know if you want it.

Yea, i'd like the code, having it scalable would be just what I was looking for

SCALABLE:

*note i haven't configured the visual tab to be scalable, so it will look like crap unless you get the correct aspect or change it yourself.*

single column playlist.

item display

$ifequal($mod(%tracknumber%,2),0,
$imageabs(,,\images\LE5\reluna1.png,),
$imageabs(,,\images\LE5\reluna2.png,))

$if(%_selected%,$imageabs(,,\images\LE5\relunagreen.png,),)

$if(%isplaying%,$imageabs(,,\images\LE5\relunablue.png,),)
$if(%isplaying%,$font(Calibri,8,bold,0-0-200),$font(Calibri,8,,0-0-0))

$alignabs(6,2,%_width%,15,left,)
[%tracknumber%]

$puts(tracktitle,
	$if($or($meta_test(title),$not($strstr(%_filename%, - ))),
	%title%,$substr(%_filename%,$add($strstr(%_filename%, - ),3),$len(%_filename%))))

$puts(li,$calcwidth(%list_index%))
$puts(margins,$sub(%_width%,55,$add($get(li),16)))
$puts(charWidth,$div($calcwidth($get(tracktitle)),$len($get(tracktitle))))

$alignabs(29,3,%_width%,20,left,top)
$ifgreater($calcwidth($get(tracktitle)),$get(margins),
	$left($get(tracktitle),$sub($sub($len($get(tracktitle)),$div($sub($calcwidth($get(tracktitle)),$get(margins)),$get(charWidth))),3))'...'
	,$get(tracktitle))

$alignabs($sub(%_width%,32),2,%_width%,15,left,)
[%length%]

$ifgreater($mul(%_height%,%_itemcount%),88,
$imageabs2(100,90,0,$sub($mul(%_height%,%_itemindex%),$add(%_height%,1)),,%_height%,$sub(%_width%,135),,images\ART_cd.png,)
$imageabs2(80,79,0,$sub($mul(%_height%,%_itemindex%),$add(%_height%,5)),,%_height%,$sub(%_width%,120),,$replace(%path%,%filename_ext%,folder.jpg),)
$imageabs2(100,90,0,$sub($mul(%_height%,%_itemindex%),$add(%_height%,1)),,%_height%,$sub(%_width%,135),,images\case.png,)
,)

group display

$imageabs(,,\images\LE5\relunaorange2.png,)

$imageabs(4,11,\images\LE5\arrow.png,)

$alignabs($sub(%_width%,40),9,%_width%,20,left,)
$font(Calibri,11,glow- glowexpand-0 glowalpha-15,40-40-40)
[%date%]

$alignabs(28,3,$sub(%_width%,80),15,left,)
$font(Calibri,10,bold glow- glowexpand-0 glowalpha-15,40-40-40)
$if(%album artist%,%album artist%,%artist%)

$alignabs(28,16,$sub(%_width%,80),15,left,)
$font(Calibri,10,glow- glowexpand-0 glowalpha-15,40-40-40)
%album%

track info 2

// Global

// Background

$imageabs(,,/images\LE5\reluna.png,)

// PerTrack

$puts(rating,$if2(%rating%,0))
$button(5,7,0,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating1.png,Rate 1,)
$button(5,7,13,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating2.png,Rate 2,)
$button(5,7,26,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating3.png,Rate 3,)
$button(5,7,39,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating4.png,Rate 4,)
$button(5,7,52,0,13,13,/images\rating_hearts\rating$get(rating).png,/images\rating_hearts\rating5.png,Rate 5,)

//$puts(rating,$if2(%rating%,0))
//$button(5,7,0,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating1.png,TAG:SET:Rating:1,)
//$button(5,7,13,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating2.png,TAG:SET:Rating:2,)
//$button(5,7,26,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating3.png,TAG:SET:Rating:3,)
//$button(5,7,39,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating4.png,TAG:SET:Rating:4,)
//$button(5,7,52,0,13,13,images\rating_hearts\rating$get(rating).png,images\rating_hearts\rating5.png,TAG:SET:Rating:5,)

//PLAY/PAUSE
$button($sub(%_width%,87),1,0,0,22,21,
$if($or(%ispaused%,$not(%isplaying%)),/images\LE5\pause.png,/images\LE5\play.png),
$if($or(%ispaused%,$not(%isplaying%)),/images\LE5\play_.png,/images\LE5\pause_.png),
$if($or(%ispaused%,$not(%isplaying%)),play,pause)
,)

//PREVIOUS
$button($sub(%_width%,112),1,0,0,22,21,/images\LE5\prev.png,/images\LE5\prev_.png,previous,)

//NEXT
$button($sub(%_width%,62),1,0,0,22,21,/images\LE5\next.png,/images\LE5\next_.png,next,)

//ALBUM LIST
$button($sub(%_width%,35),1,0,0,22,21,/images\LE5\search.png,/images\LE5\search_.png,Album List,)

//LAYOUT
$button($sub(%_width%,139),1,0,0,22,21,/images\LE5\visual.png,/images\LE5\visual_.png,Visual Tab,)

// PerSecond

Edited by bbmartini
What's your Trackinfo (and images) please? :)

I've made a few more changes since then.

untitled1ye8.th.png

The far most right button changes between 'Default' and 'Shuffle (tracks)' playback modes. And clicking on the info tray thing activates the currently playing item.

If you still want it:

// Global
$alignabs(13,4,157,18,center,middle)
$font(Calibri,9,,221-222-223)

// Background
$imageabs(,,/images\LE5\reluna.png,)

// PerTrack
$button(3,3,0,0,177,20,,,Activate now playing,)
$button(187,1,0,2,25,21,images/LE5/prev.png,images/LE5/prev_.png,previous,)
$button(212,1,0,2,26,21,images/LE5/stop.png,images/LE5/stop_.png,stop,)

$if($or(%_ispaused%,$not(%isplaying%)),
	$button(238,1,0,2,25,21,images/LE5/play.png,images/LE5/play_.png,play,)
,
	$button(238,1,0,2,25,21,images/LE5/pause.png,images/LE5/pause_.png,pause,)
)

$button(263,1,0,2,25,21,images/LE5/next.png,images/LE5/next_.png,next,)
$button(292,1,0,2,26,21,images/LE5/search.png,images/LE5/search_.png,search,)

$if($stricmp(%cwb_playback_order%,'Default'),
	$button(318,1,0,2,25,21,images/LE5/shuffle.png,images/LE5/shuffle_.png,'Shuffle (tracks)',)
,
	$button(318,1,0,2,25,21,images/LE5/default.png,images/LE5/default_.png,Default,)
)

// PerSecond
$if(%_isplaying%,
	$caps(%codec%)  %bitrate% Kbps  %samplerate% Hz[  $upper($abbr(%__mp3_stereo_mode%))]
)

images.zip

Hmm this foobar customization is confusing for a beginner! :p Where do I start? Someone care to give me some links etc. to get me started.

I agree with Godsmack. I am no stranger to the skinning and modding world at all, yet I find the myriad of options and choices in FB2K to be bewildering! While there have been many configs posted, I can never get mine to look quite like theirs. There's lots of code posted, but no instructions on where to put that code. Trial and error has just produced a mess.

I admit to having a "just want it now" mentality - I see a screenshot and I just want to have my FB2K look exactly like that, with a minimum amount of work, but I understand some work needs to be done. I just wish there was some explanation of what a vertical or horizontal splitter looks like/does, how to utilize the different mods with screenshots showing examples of settings, and so forth. Tall order, I know, yet there seems to be no shortage of FB2K customization experts out there! Where did you all learn?????

Thanks guys!

Where did you all learn?????

Well, for me its quite simple :p

Just started looking at the old foobar configs (check page 1 :p), and looking at the Columns UI plugin to get where to put each thing, then, i started looking at the code, and trying to figure out what value did what, and i started getting familiar with the code :p

Altought, there are many things that i dont know how to do yet (the tagging, re-tagging, using strings for the albums that are in to the tags, etc], and of course i cant make graphics at all :p

I think that with a little of time and effor, you can understand it too, you dont need to ask that much, its just common sense, take your time, look around, change things, dont worry about messing up, i've started countless configs/mods over and over again for messing up... :p

And thats my E! True Foobar Story :p, im sure the other people learned the same way

Well, for me its quite simple :p

Just started looking at the old foobar configs (check page 1 :p), and looking at the Columns UI plugin to get where to put each thing, then, i started looking at the code, and trying to figure out what value did what, and i started getting familiar with the code :p

Altought, there are many things that i dont know how to do yet (the tagging, re-tagging, using strings for the albums that are in to the tags, etc], and of course i cant make graphics at all :p

I think that with a little of time and effor, you can understand it too, you dont need to ask that much, its just common sense, take your time, look around, change things, dont worry about messing up, i've started countless configs/mods over and over again for messing up... :p

And thats my E! True Foobar Story :p, im sure the other people learned the same way

Not me, I was born with it :p

I just wish there was some explanation of what a vertical or horizontal splitter looks like/does, how to utilize the different mods with screenshots showing examples of settings, and so forth. Tall order, I know, yet there seems to be no shortage of FB2K customization experts out there!

Thanks guys!

the wiki. start here

it doesn't take very long to get the hang of it:

My progression

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Ahh, I didn't know that. It makes sense. I was thinking I would be fine with 50 hours, but 100 is close enough that I wouldn't feel like I am paying for more than I am using. I might check it out sometime.
    • Google's next-gen Tensor AI chips might be produced by Samsung, report says by Hamid Ganji Image via Google Google’s Tensor Processing Unit (TPU) is produced in collaboration with companies such as Broadcom and TSMC, but a recent report suggests that the search giant is in talks with Samsung to hand over part of the production to the Korean tech company. According to a report by The Information, citing people familiar with the matter, Google has begun talks with Samsung about using its chip manufacturing capacity for the next generation of Tensor AI chips. Google’s upcoming TPUs are reportedly codenamed “Icefish” and will be produced using Samsung's 2-nanometer process technology. Meanwhile, Samsung is expected to produce only a portion of the next-generation Tensor chips, with most of the production remaining at TSMC. The Information says the new Tensor chips are currently in the design stage and are scheduled to enter mass production in 2028. TSMC is generally considered one of the most reliable chip manufacturing partners and is trusted by tech giants such as Apple and Google. However, the growing demand for TSMC’s AI chips, combined with the company’s focus on meeting demand from AI data centers, has reportedly prompted Google to seek additional manufacturing partners for its next-generation TPUs. Besides Samsung and TSMC, Intel could also be assigned part of the production. The Information reported this week is that Google has begun talks with Intel to produce up to three million TPUs in 2028. However, this is not the first time Google has partnered with Samsung on chip production, as Samsung has previously manufactured Tensor chips for Pixel smartphones. Google’s Tensor Processing Unit is used in cloud data centers and competes with NVIDIA’s chips, which currently dominate the market. By relying on in-house chips, Google can not only reduce its dependence on third-party providers but also create new revenue opportunities. The company has already supplied its TPUs to the AI firm Anthropic.
    • Reminder that the Premium and Ultimate plans already come with a 100 hour per month limit, which you then have to pay more to increase in 15 hour blocks.
    • It does invite Linux because MS should have been improving their products all along these years instead chose to ignore the users now this year they’re making all of these improvements to their products where as Linux doesn’t have this kind of problems in fact it has gotten so good I can even play Windows games in Steam that I no longer ever needed Windows to carry on with my life, unlike you still use Windows and chose to try beat down down those who don't use Windows because they love their LG TV. (Surprisingly I actually own a 55” LED LG TV and it has been going strong for almost 14 years, longer than any Sony TV”)
    • As much as I love owning my own hardware, it's hard to argue with the value. I'm not a huge gamer, I'd actually be interested in a cheaper plan with limited monthly hours, or even a pay-by-the-hour plan.
  • Recent Achievements

    • Week One Done
      FBSPL earned a badge
      Week One Done
    • One Year In
      Jim Dugan earned a badge
      One Year In
    • One Month Later
      Tommi118 earned a badge
      One Month Later
    • One Month Later
      sjbousquet earned a badge
      One Month Later
    • Week One Done
      sjbousquet earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      487
    2. 2
      PsYcHoKiLLa
      196
    3. 3
      +Edouard
      155
    4. 4
      Steven P.
      84
    5. 5
      ATLien_0
      69
  • Tell a friend

    Love Neowin? Tell a friend!