I have a mmpc in my bedroom with foobar being controlled via a imon remote, up until recently i was happy with my config but its kind of hard to see what's playing with out looking close at the screen.
I installed itunes because i thought the coverflow display may work well on my machine, but it kind of jugs along because i made my machine to only power the apps i wanted on it(nlite xp, digitv, mpc & foobar). So im looking for a nice full screen config which gives prominence to album art and currently playing track, does anyone know of any suitable configs?
Thanks
Here's a screenie of my notebook. I don't need album art. The top stuff is from vnc because I'm not at the notebook currently. But it's pretty complicated. Doesn't have all the fancy new stuff, but is very practical. It uses different fonts depending on genre, used folder and artist. It uses different colors by the end of tracks, and it shows the next playing track by the end of the current one. It needs track info and track info mod panel. And probably much more.
The chosen colors are well chosen, they match my needs because the fb2k is on a notebook and everything has to be well visible from a certain angle.
[a href="http://minnit.de/etc/fb_notebook.png" target="_blank"] which turns anything (volume, chosen playlist, rg mode, playback order etc...) to a default state.
On my htpc I use a fullscreen trackinfo_mod panel. More info can be found in the appearance thread (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=43077&view=findpost&p=453905).
I made it quite independent from screen resolution and with easy changeable album art size.
Interested in other users' ideas,
ojdo
(http://galsch.de/files/open/screenshots/2006-12-02-fb2k-htpc-2-thumb.png) (http://galsch.de/files/open/screenshots/2006-12-02-fb2k-htpc-2.png)
// Background
$imageabs(656,0,images\bg\12.jpg,)
// PerSecond
///////////////////////////////////////////////////////////////////
// SETTINGS
///////////////////////////////////////////////////////////////////
// sizes
$puts(pos.picwidth,350)
$puts(pos.margin,35)
$puts(pos.barheight,8)
// font settings for additional trackinfo (above album art)
$puts(txt.sm,$font(Calibri,18,,100-100-100))
$puts(txt.nfo,$font(,,,255-255-255))
// misc
$puts(path.nocover,'C:\Programme\Multimedia\foobar2000v094\images\nocover.png')
// colors
// format R-G-B, 1=foreground, 2=border
$puts(col.rating1,255-128-0)
$puts(col.rating2,128-64-0)
$puts(col.mood1,0-255-0)
$puts(col.mood2,0-128-0)
$puts(col.quality1,255-255-0)
$puts(col.quality2,128-128-0)
$puts(col.order1,143-109-199)
$puts(col.order2,64-0-128)
$puts(col.progress1,0-128-255)
$puts(col.progress2,0-64-128)
///////////////////////////////////////////////////////////////////
$if(%_trackinfo_notrack%,
///////////////////////////////////////////////////////////////////
// STOPPED
///////////////////////////////////////////////////////////////////
$alignabs(0,0,%_width%,%_height%,center,middle)
FB2K
,
///////////////////////////////////////////////////////////////////
// PLAY / PAUSE
///////////////////////////////////////////////////////////////////
//pause
$alignabs(0,0,%_width%,%_height%,center,middle)
$if(%ispaused%,$font(Webdings,150,,)';',)
//trackinfo
$alignabs($add($mul($get(pos.margin),2),$get(pos.picwidth)),$sub(%_height%,$add($get(pos.margin),$get(pos.picwidth))),$sub(%_width%,$add($mul($get(pos.margin),3),$get(pos.picwidth))),$sub($get(pos.picwidth),$mul($get(pos.barheight),4)),left,bottom)
$upper($font(Arial,36,,255-255-255)
$replace(%title%,'(',$font(,,textalpha-200,150-150-150)'(',')',')'$font(,,textalpha-200,255-255-255))$char(10)
$font(,,,0-128-255)[%artist%]$char(10))
///////////////////////////////////////////////////////////////////
//bar position calculations
$puts(allbarwidth,$sub(%_width%,$mul($get(pos.margin),3),$mul($get(pos.barheight),4),$get(pos.picwidth)))
$puts(pos.x1,$add($mul($get(pos.margin),2),$get(pos.picwidth)))
$puts(pos.x2,$add($get(pos.x1),$muldiv($get(allbarwidth),5,12),$get(pos.barheight)))
$puts(pos.x3,$add($get(pos.x2),$muldiv($get(allbarwidth),3,12),$get(pos.barheight)))
$puts(pos.x4,$add($get(pos.x3),$muldiv($get(allbarwidth),4,12),$get(pos.barheight)))
$puts(pos.y1,$sub(%_height%,$get(pos.margin),$mul(3,$get(pos.barheight))))
//rating
$ifgreater(%rating%,0,$drawrect($get(pos.x1),$get(pos.y1),$muldiv($muldiv($get(allbarwidth),5,12),%rating%,5),$get(pos.barheight),brushcolor-$get(col.rating1) pencolor-$get(col.rating1) alpha-200),)
$drawrect($get(pos.x1),$get(pos.y1),$muldiv($get(allbarwidth),5,12),$add(1,$get(pos.barheight)),brushcolor-NULL pencolor-$get(col.rating2) alpha-200 width-1)
//mood
$ifgreater(%mood%,0,$drawrect($get(pos.x2),$get(pos.y1),$muldiv($muldiv($get(allbarwidth),3,12),%mood%,3),$get(pos.barheight),brushcolor-$get(col.mood1) pencolor-$get(col.mood1) alpha-200 width-1),)
$drawrect($get(pos.x2),$get(pos.y1),$add(1,$muldiv($get(allbarwidth),3,12)),$add(1,$get(pos.barheight)),brushcolor-NULL pencolor-$get(col.mood2) alpha-200 width-1)
//quality
$puts(fp,1)
$puts(lp,1)
$puts(pt,1)
$if($stricmp(%codec%,mp3),$puts(range,264)$puts(lb,56))
$if($stricmp(%codec%,musepack),$puts(range,320)$puts(lb,30))
$if($stricmp(%codec%,vorbis),$puts(range,455)$puts(lb,45))
$if($or($stricmp($substr(%codec%,1,7),windows),
$stricmp(%codec%,wma)),$puts(range,452)$puts(lb,48))
$if($stricmp(%codec%,aac),$puts(range,385)$puts(lb,15))
$puts(quality,$muldiv($sub($info(bitrate),$get(lb)),100,$get(range)))
$drawrect($get(pos.x3),$get(pos.y1),$muldiv($get(allbarwidth),4,12),$add(1,$get(pos.barheight)),brushcolor-NULL pencolor-$get(col.quality2) alpha-200 width-1)
$if($and($stricmp($info(encoding),lossy),$get(lb)),
$drawrect($get(pos.x3),$get(pos.y1),$muldiv($get(quality),$muldiv($get(allbarwidth),4,12),110),$get(pos.barheight),brushcolor-$get(col.quality1) pencolor-$get(col.quality1) alpha-150 width-1),
$drawrect($get(pos.x3),$get(pos.y1),$muldiv($get(allbarwidth),4,12),$get(pos.barheight),brushcolor-$get(col.quality1) pencolor-$get(col.quality1) alpha-150))
//playback order
$drawrect($get(pos.x4),$get(pos.y1),$get(pos.barheight),$get(pos.barheight),brushcolor-NULL pencolor-$get(col.order2) alpha-200 width-1)
$if($strcmp(%cwb_playback_order%,'Shuffle (tracks)'),$drawrect($get(pos.x4),$get(pos.y1),$get(pos.barheight),$get(pos.barheight),brushcolor-$get(col.order1) pencolor-$get(col.order1) alpha-200))
///////////////////////////////////////////////////////////////////
//progress bar
$puts(pprogress,$if(%length%,$muldiv(%playback_time_seconds%,5000,%length_seconds%),0))
$ifgreater($get(pprogress),0,$drawrect($add($mul($get(pos.margin),2),$get(pos.picwidth)),$sub(%_height%,$get(pos.margin),$get(pos.barheight)),$muldiv($get(pprogress),$sub(%_width%,$add($mul($get(pos.margin),3),$get(pos.picwidth))),5000),$get(pos.barheight),brushcolor-$get(col.progress1) pencolor-$get(col.progress1) alpha-200),)
$drawrect($add($mul($get(pos.margin),2),$get(pos.picwidth)),$sub(%_height%,$get(pos.margin),$get(pos.barheight)),$sub(%_width%,$add($mul($get(pos.margin),3),$get(pos.picwidth))),$add(1,$get(pos.barheight)),brushcolor-NULL pencolor-$get(col.progress2) width-1 alpha-200)
///////////////////////////////////////////////////////////////////
//album art
$drawrect($get(pos.margin),$sub(%_height%,$add($get(pos.margin),$get(pos.picwidth))),$add($get(pos.picwidth),2),$add($get(pos.picwidth),2),brushcolor-13-13-13 pencolor-13-13-13 width-1 alpha-80)
$drawrect($get(pos.margin),$sub(%_height%,$add($get(pos.margin),$get(pos.picwidth))),$add($get(pos.picwidth),2),$add($get(pos.picwidth),2),brushcolor-NULL pencolor-255-255-255 width-1 alpha-80)
$imageabs2($get(pos.picwidth),$get(pos.picwidth),0,0,$get(pos.picwidth),$get(pos.picwidth),$add(1,$get(pos.margin)),$sub(%_height%,$add($get(pos.margin),$get(pos.picwidth)),-1),
$get(path.nocover),NOKEEPASPECT)
$imageabs2($get(pos.picwidth),$get(pos.picwidth),0,0,$get(pos.picwidth),$get(pos.picwidth),$add(1,$get(pos.margin)),$sub(%_height%,$add($get(pos.margin),$get(pos.picwidth)),-1),
$replace(%path%,$if(%disc%,$directory(%path%,1)'\')%filename_ext%,folder.jpg),NOKEEPASPECT)
///////////////////////////////////////////////////////////////////
//additional info
$puts(addinfo.height,$div(62500,$get(pos.picwidth)))
$puts(addinfo.y,$add($get(pos.picwidth),$mul($get(pos.margin),2),$get(addinfo.height)))
$if($or($greater(31,%playback_time_seconds%),$greater(31,%playback_time_remaining_seconds%)),
//$drawrect($get(pos.margin),$sub(%_height%,$get(addinfo.y)),$add(2,$get(pos.picwidth)),$add(2,$get(addinfo.height)),brushcolor-13-13-13 pencolor-13-13-13 width-1 alpha-80)
//$drawrect($get(pos.margin),$sub(%_height%,$get(addinfo.y)),$add(2,$get(pos.picwidth)),$add(2,$get(addinfo.height)),brushcolor-NULL pencolor-$get(col.border) width-1 alpha-80)
$alignabs($add($get(pos.margin),0),$sub(%_height%,$get(addinfo.y),0),$sub($get(pos.picwidth),0),$sub($get(addinfo.height),0),left,bottom)
$get(txt.sm)
$if(%last_played%,Bisher $get(txt.nfo)%play_counter%$get(txt.sm)mal gehört', 'zuletzt am $char(10)$get(txt.nfo)$substr(%last_played%,9,10). $select($substr(%last_played%,6,7),Januar,Februar,März,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember) $substr(%last_played%,1,4)$get(txt.sm).$char(10))
$if($or(%date%,%album%),Erschienen$if(%date%, im Jahr $get(txt.nfo)%date%$get(txt.sm))$if(%publisher%, bei $get(txt.nfo)%publisher%$get(txt.sm))$if(%album%, auf dem Album $get(txt.nfo)%album%$get(txt.sm)).)
)
)
Edit: Added path to nocover-image to settings.
On my htpc I use a fullscreen trackinfo_mod panel. More info can be found in the appearance thread (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=43077&view=findpost&p=453905).
Beautiful! But you have no overview about the currently chosen playlist, so you do not know where you are?!
What do your progress bars mean? I think I could port my progress indicator to a more beatiful style. But I have to understand the trackinfo mod better.
BTW I didn't find a better way to display at what position I am in the current playlist, so I display (when not playing) the last two directory levels. I wish we had a possibility to access the current playlists total and current track index (one of both is not accessible): Then I could have a progress bar like indicator to see, where in playlist the focus currently is.
On my htpc I use a fullscreen trackinfo_mod panel. [...]
Beautiful! But you have no overview about the currently chosen playlist, so you do not know where you are?!
Thanks! I just made a second conventional layout (in the appearance thread i posted a shot of it, too) to which I switch by hotkey (=remote control button) when browsing is necessary. I mainly use a huge (~10) number of medium sized autoplaylists as they also easily can be browsed by rc. Only for searches I have to use the keyboard.
What do your progress bars mean? I think I could port my progress indicator to a more beatiful style. But I have to understand the trackinfo mod better.
First line is rating (1-5), mood (1-3) and quality (code stolen from... erm... can't remember).
Second line is a conventional progress bar for the current track.
Trackinfo_mod isn't complicated at all, only the syntax for more complex layouts becomes a mess, and the numerous function arguments for $drawrect, $imageabs and $font need to be at hand (or remembered).
BTW I didn't find a better way to display at what position I am in the current playlist...
I never cared about the position of a song in the current playlist, why is that of interest for you?
ojdo
Edit: Finished all sentences
Thanks! I just made a second conventional layout (in the appearance thread i posted a shot of it, too) to which I switch by hotkey (=remote control button) when browsing is necessary.
How do you do this? By starting a new fb2k instance? I was searching for a possibility to display stuff depending on an externally set state. Best was I could set a variable and then make panel code depending on this.
I never cared about the position of a song in the current playlist, why is that of interest for you?
It's because I'm navigating through playlists with a maximum of 1000 entries. foo_menu_addons is extremely helpful there, because it lets me jump by tags, but also by a specific number of tracks (I have a fast mode and a slow mode). But a progress bar would much better visualise the current position in the playlist.
Today I assigned my last rc key with all the "search for same" functions, which is also very handy, because e.g. you can simply visit an artists track, press the key and then have all tracks by this artist in the default playlist.
How do you do this? By starting a new fb2k instance? I was searching for a possibility to display stuff depending on an externally set state. Best was I could set a variable and then make panel code depending on this.
I just add an additional layout in the preferences > Display > Columns UI > Tab "Layout". All layouts can be accessed by the main menu entry View > Layout > $Layoutname, so they are also hotkeyable. This done, I wanted to use only one key on my rc to toggle between both views instead of having to spare two buttons. This is where autohotkey (http://www.autohotkey.com/) comes into play:
#IfWinActive, foobar2000
{
ü::
++ToggleState
if ToggleState = 3 ; The number of actions plus 1.
ToggleState = 1
if ToggleState=1
{
send ^+K ; Hotkey for layout #1
return
}
if ToggleState=2
{
send ^+L ; Hotkey for layout #2
return
}
return
} ; End of foobar hotkeys
By assigning one button to the button rc to the key 'ü' I can now use both views.
I never cared about the position of a song in the current playlist, why is that of interest for you?
It's because I'm navigating through playlists with a maximum of 1000 entries. foo_menu_addons is extremely helpful there, because it lets me jump by tags, but also by a specific number of tracks (I have a fast mode and a slow mode). But a progress bar would much better visualise the current position in the playlist.
I will have a look on this plugin. Seems quite interesting for reducing all the battery-consuming scrolling actions - not to mention the convience... For your visualizing problem: If you use a layout with a big playlist, perhaps a visual style with enough contrast could be enough to let the standard scrollbar be visible, if that is feasable for you. Trackinfo panels and non-playing are still not so much fun - even "simple" stuff like a clock won't work...
I just add an additional layout in the preferences > Display > Columns UI > Tab "Layout".
I don't know if this will bother you enough to change, but you could use just 1 layout and use the newest tabbed panel mod to recreate the seperate layouts in 2 tabs. You could then hide the tab-bar, and set the remote button to the cycle option in the main menu, which will cycle through the tabs. It will also mean that changing layouts will be quicker.
I don't know if it's that beneficial considering the effort required (recreating layout/copying & pasting code/changing remote button code), but I thought I'd let you know, in case you were interested in doing it.
I just add an additional layout in the preferences > Display > Columns UI > Tab "Layout". All layouts can be accessed by the main menu entry View > Layout > $Layoutname, so they are also hotkeyable.
I never recognized this possibility, thanks. Unfortunately there's no way to duplicate layouts in columns ui.
This done, I wanted to use only one key on my rc to toggle between both views instead of having to spare two buttons. This is where autohotkey (http://www.autohotkey.com/) comes into play:
No problem with girder, there you can have as many states/commands as you want and also display a specific osd text for any state.
About the "hotkeyable": I prefer to call commands by command line in addition with foo_runcmd (example: foobar2000.exe /runcmd-playlist="quicksearch for same .../artist") so I do not have to set up keyboard shortcuts for anything.
I don't know if this will bother you enough to change, but you could use just 1 layout and use the newest tabbed panel mod to recreate the seperate layouts in 2 tabs. You could then hide the tab-bar, and set the remote button to the cycle option in the main menu, which will cycle through the tabs. It will also mean that changing layouts will be quicker.
Not to change with the current layout, but with the next foobar reinstall - which will probably occur when v0.9.5 is released - I well might use that feature, thanks for pointing that out.
[cycle layouts in tabs]
Not to change with the current layout, but with the next foobar reinstall - which will probably occur when v0.9.5 is released - I well might use that feature, thanks for pointing that out.
Thanks also from me, I'll use this as well when I find some time...
Thanks for the suggestions, what i was hoping my foobar would like look is a blend of the 2, Squeller i wanted to split my display in to half's like yours but have something like ojdo's in the top half so its really clear as to what is playing(i.e. album art).
In the bottom half i would like something like the below
http://www.hydrogenaudio.org/forums/index....st&p=455316 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=43077&view=findpost&p=455316)
Is his possible? If so could you give me some pointers to where i should start?
Thanks
Is his possible? If so could you give me some pointers to where i should start?
Sure: Get the needed plugins foo_ui_columns, foo_uie_trackinfo_mod and foo_uie_single_column_playlist from the wiki (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9). The links there hopefully work, otherwise look for the corresponding thread in the forum. Familiarize yourself at least with the layout system: It can be found in Preferences > Display > Columns UI > Tab "Layout" after installing foo_ui_columns (hint: try a right-click=context menu on the white layout area - this took me ages to find out). Make a layout which pleases you, then customize the single panels:
If you just want a playlist like OMart's, just use his code in the scp-settings (right click on the playlist > settings). Otherwise you need some spare time...
HTH
ojdo
ojdo thanks for the info ive got the components, concerning OmART's config would i be correct in thinking the code i need to have a similar playlist look is the "ITEM DISPLAY" if so where do i need to put this code within foobar?
On my old config and even now i still cant figure out how to have the trackinfo panel above the playlist, any suggestion?
Thanks
ojdo thanks for the info ive got the components, concerning OmART's config would i be correct in thinking the code i need to have a similar playlist look is the "ITEM DISPLAY" if so where do i need to put this code within foobar?
On my old config and even now i still cant figure out how to have the trackinfo panel above the playlist, any suggestion?
Maybe you ask omart for a columns ui fcs file and import it.
TI panel above playlist. Go to columns ui layout page.A simple layout what you want is this:
vertical splitter
menu
trackinfo panel
columns playlist
Ohh thanks that worked.
I've now got my playlist in the bottom half and hopefully will have each album's album cover displaying next to each album, how would i do as you did and display track info in the complete top half. Preferably with album art and some sort of progress bar.
Does anyone know how do separate each album and have the album art display next to each one?(in the playlist)
Thanks
I've now got my playlist in the bottom half and hopefully will have each album's album cover displaying next to each album, how would i do as you did and display track info in the complete top half. Preferably with album art and some sort of progress bar.
Does anyone know how do separate each album and have the album art display next to each one?(in the playlist)
Your possibilities are: Put your album art into your columns ui layout (you need to understand the splitter thing, you may want a horizontal splitter) or you can possibly display the album art inside the trackinfo mod panel. Can't tell more, as I don't do album art.
I'm not sure this post is helpful for anyone, as this layout mainly profits from high resolution artist photos which are a pain to find/download. If no artist photo is found, this code shows a generic picture of the type of audio file (soundtrack, game music, sampler, ...). This easily could be changed to a "picture per genre" or something different if no pictures for all artists are available.
The code here is
not completely quite independant from screen resolution
(mostly obvious stuff like width and height of imageabs2-resizes). If requested I could fix that easily. Done.Screenshots [a href=\"http://www.galsch.de/files/open/screenshots/2007-01-15-fb2k-htpc-3.png\" target=\"_blank\"](http://www.galsch.de/files/open/screenshots/2007-01-15-fb2k-htpc-3-thumb.png) (http://www.galsch.de/files/open/screenshots/2007-01-15-fb2k-htpc-1.png)
The rest of the time: Artist photo and album art presentation.
Downloads- Images (http://www.galsch.de/files/open/uploads/fb2k/htpc1.zip). Extract to your foobar's image directory.
- The font used: Gentium (http://www.sil.org/~gaultney/gentium/).
Trackinfo mod code (as shown in screenshots)// Global
$puts(path.library,'D:\Audio')
$puts(art.h,$sub(%_height%,351))
$puts(pos.x1,71)
$puts(pos.y1,$add(-134,$get(art.h)))
$puts(pos.y2,86)
// - Fonts used for additional info
$puts(font.a,$font(Gentium,20,glow-19-19-19 glowexpand-1 glowblur-8,160-160-160))
$puts(font.b,$font(Gentium,20,bold glow-19-19-19 glowexpand-1 glowblur-8,220-210-210))
// Background
$drawrect(,,,,brushcolor-19-19-19 pencolor-null)
$imageabs($sub(%_width%,198),$sub(%_height%,$get(pos.y2),44),images\htpc1\addinfo.png,)
// PerTrack
// Artist photo
$if($fileexists($get(path.library)\Alben\%artist%\folder.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Alben\%artist%\folder.jpg,nokeepaspect),
$if($fileexists($get(path.library)\Singles\%artist%\folder.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Singles\%artist%\folder.jpg,nokeepaspect),
$if($fileexists($replace(%path%,$if(%disc%,$directory(%path%,2)\)$directory(%path%,1)\%filename_ext%,)folder.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$replace(%path%,$if(%disc%,$directory(%path%,2)\)$directory(%path%,1)\%filename_ext%,)folder.jpg,nokeepaspect),
$if($strstr(%path%,\Alben\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Alben\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Sampler\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Sampler\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Soundtrack\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Soundtrack\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Spiele\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Spiele\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Sprache\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Sprache\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Web\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Web\folder.jpg,nokeepaspect),
$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,/images\bg\12.png,nokeepaspect)
)))))))))
$imageabs2(%_width%,$add(1,$get(art.h)),0,0,%_width%,$add(1,$get(art.h)),0,0,images\htpc1\artist-overlay2.png,nokeepaspect)
// Album art
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\cd.png,)
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\case.png,)
$if($fileexists($replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,)folder.jpg),
$imageabs2(300,300,0,0,300,300,$add(44,$get(pos.x1)),$add(18,$get(pos.y1)),$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,)folder.jpg,nokeepaspect),
)
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\gloss.png,)
$if(%disc%,$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\2cd.png,))
// Title - Artist
$alignabs($add($get(pos.x1),500),$add($get(pos.y1),136),$sub(%_width%,$get(pos.x1),500,82),200,right,middle)
$font(Gentium,36,glow-100-100-100 glowblur-38 glowexpand-1,205-191-171)
[%title%]$char(10)
$font(Gentium,24,glow-80-80-80 glowblur-20 glowexpand-1,190-175-155)
[%artist%]
// PerSecond
// Progress bar
$ifgreater(%playback_time_seconds%,0,
$drawrect(0,$sub(%_height%,$get(pos.y2)),$add(23,$muldiv(%playback_time_seconds%,%_width%,%length_seconds%)),4,pencolor-null brushcolor-0-128-255)
$imageabs($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$sub(%_height%,$get(pos.y2)),images\htpc1\progress2.png,)
,)
// Additional info
$if($or($greater(30,%playback_time_seconds%),$greater(30,%playback_time_remaining_seconds%)),
$alignabs($sub(%_width%,$get(pos.x1),500),$add($get(pos.y1),-100),500,200,right,bottom)
$if(%last_played%,$get(font.a)Bisher $get(font.b)%play_counter%$get(font.a)mal gehört', 'zuletzt am $char(10)$get(font.b)$substr(%last_played%,9,10). $select($substr(%last_played%,6,7),Januar,Februar,März,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember) $substr(%last_played%,1,4)$get(font.a).$char(10))
$if(%playback_time_seconds%,$get(font.a)Erschienen $if(%date%,im Jahr $get(font.b)%date%$get(font.a) )$if(%publisher%,bei $get(font.b)%publisher%$get(font.a) )$if(%album%,auf dem Album $get(font.b)%album%$get(font.a)).)
)
// Info squares
$font(Arial Unicode MS,18,glow-64-64-64 glowblur-5 glowexpand-1,19-19-19)
$alignabs($sub(%_width%,211),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)[%rating%]
$alignabs($sub(%_width%,177),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)[%mood%]
$alignabs($sub(%_width%,144),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)$if($strcmp(%cwb_playback_order%,'Shuffle (tracks)'),S)
// Pause overlay
$if(%ispaused%,
$drawrect($add(44,$get(pos.x1)),$add(18,$get(pos.y1)),300,300,pencolor-0-0-0 alpha-150)
$alignabs($add(44,$get(pos.x1)),$add(18,$get(pos.y1)),300,300,center,middle)$font(Webdings,72,,255-255-255)';'
)
Variant B: Lower part transparent// Global
$puts(path.library,'D:\Audio')
$puts(art.h,$sub(%_height%,351))
$puts(pos.x1,71)
$puts(pos.y1,$add(-134,$get(art.h)))
$puts(pos.y2,86)
// - Fonts used for additional info
$puts(font.a,$font(Gentium,20,glow-19-19-19 glowexpand-1 glowblur-8,160-160-160))
$puts(font.b,$font(Gentium,20,bold glow-19-19-19 glowexpand-1 glowblur-8,220-210-210))
// Background
$drawrect(,,,,brushcolor-19-19-19 pencolor-null)
// PerTrack
// Artist photo
$if($fileexists($get(path.library)\Alben\%artist%\folder.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$get(path.library)\Alben\%artist%\folder.jpg,nokeepaspect),
$if($fileexists($get(path.library)\Singles\%artist%\folder.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$get(path.library)\Singles\%artist%\folder.jpg,nokeepaspect),
$if($fileexists($replace(%path%,$if(%disc%,$directory(%path%,2)\)$directory(%path%,1)\%filename_ext%,)folder.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$replace(%path%,$if(%disc%,$directory(%path%,2)\)$directory(%path%,1)\%filename_ext%,)folder.jpg,nokeepaspect),
$if($strstr(%path%,\Alben\),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$get(path.library)\Alben\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Sampler\),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$get(path.library)\Sampler\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Soundtrack\),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$get(path.library)\Soundtrack\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Spiele\),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$get(path.library)\Spiele\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Sprache\),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$get(path.library)\Sprache\folder.jpg,nokeepaspect),
$if($strstr(%path%,\Web\),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$get(path.library)\Web\folder.jpg,nokeepaspect),
$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,/images\bg\12.png,nokeepaspect)
)))))))))
// Artist overlays
$imageabs2(%_width%,$add(1,$get(art.h)),0,0,%_width%,$add(1,$get(art.h)),0,0,images\htpc1\artist-overlay2.png,nokeepaspect)
$drawrect(,$get(art.h),,,brushcolor-19-19-19 pencolor-19-19-19 alpha-180)
$imageabs($sub(%_width%,198),$sub(%_height%,$get(pos.y2),44),images\htpc1\addinfo.png,)
// Album art
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\cd.png,)
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\case.png,)
$if($fileexists($replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,)folder.jpg),
$imageabs2(300,300,0,0,300,300,$add(44,$get(pos.x1)),$add(18,$get(pos.y1)),$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,)folder.jpg,nokeepaspect),
)
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\gloss.png,)
$if(%disc%,$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\2cd.png,))
// Title - Artist
$alignabs($add($get(pos.x1),500),$add($get(pos.y1),136),$sub(%_width%,$get(pos.x1),500,82),200,right,middle)
$font(Gentium,36,glow-100-100-100 glowblur-38 glowexpand-1,205-191-171)
[%title%]$char(10)
$font(Gentium,24,glow-80-80-80 glowblur-20 glowexpand-1,190-175-155)
[%artist%]
// PerSecond
// Progress bar
$ifgreater(%playback_time_seconds%,0,
$drawrect(0,$sub(%_height%,$get(pos.y2)),$add(23,$muldiv(%playback_time_seconds%,%_width%,%length_seconds%)),4,pencolor-0-128-255 brushcolor-0-128-255 alpha-180)
,)
// Additional info
$if($or($greater(30,%playback_time_seconds%),$greater(30,%playback_time_remaining_seconds%)),
$alignabs($sub(%_width%,$get(pos.x1),500),$add($get(pos.y1),-100),500,200,right,bottom)
$if(%last_played%,$get(font.a)Bisher $get(font.b)%play_counter%$get(font.a)mal gehört', 'zuletzt am $char(10)$get(font.b)$substr(%last_played%,9,10). $select($substr(%last_played%,6,7),Januar,Februar,März,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember) $substr(%last_played%,1,4)$get(font.a).$char(10))
$if(%playback_time_seconds%,$get(font.a)Erschienen $if(%date%,im Jahr $get(font.b)%date%$get(font.a) )$if(%publisher%,bei $get(font.b)%publisher%$get(font.a) )$if(%album%,auf dem Album $get(font.b)%album%$get(font.a)).)
)
// Info squares
$font(Arial Unicode MS,18,glow-64-64-64 glowblur-5 glowexpand-1,19-19-19)
$alignabs($sub(%_width%,211),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)[%rating%]
$alignabs($sub(%_width%,177),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)[%mood%]
$alignabs($sub(%_width%,144),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)$if($strcmp(%cwb_playback_order%,'Shuffle (tracks)'),S)
// Pause overlay
$if(%ispaused%,
$drawrect($add(44,$get(pos.x1)),$add(18,$get(pos.y1)),300,300,pencolor-0-0-0 alpha-150)
$alignabs($add(44,$get(pos.x1)),$add(18,$get(pos.y1)),300,300,center,middle)$font(Webdings,72,,255-255-255)';'
)
Ojdo, this looks very good. You said you do something the last 30 seconds, so you use // Perseconds (ps).
I have massive problems with my fullscreen layout and ps. ps is alright when I have the panel in a small window, say 100*1024. But if I have it in full 1024x768 on my notebook, trackinfomod consumes almost 80% CPU. So I couldn't use dynamic stuff in my fullscreen trackinfo panel.
Would you please have a look into cpu usage and maybe report it in the trackinfo panel thread (I already did)
Would you please have a look into cpu usage and maybe report it in the trackinfo panel thread (I already did)
I just looked: CPU usage settles to 0-5% during a track. Only when switching to a new track, all the imageabs2-stuff makes a ~90% peak for a second.
(Resolution is 1280x1024, CPU is an Athlon XP-M driven at 800 MHz)
How to adapt to a 1280*800 screen ? beacause I have a lot of problem
How to adapt to a 1280*800 screen ? beacause I have a lot of problem
I edited the code from the codebox. Now it should work on your resolution without change.
I'm not sure this post is helpful for anyone, as this layout mainly profits from high resolution artist photos which are a pain to find/download. If no artist photo is found, this code shows a generic picture of the type of audio file (soundtrack, game music, sampler, ...). This easily could be changed to a "picture per genre" or something different if no pictures for all artists are available.
The code here is not completely quite independant from screen resolution (mostly obvious stuff like width and height of imageabs2-resizes). If requested I could fix that easily. Done.
Screenshots
[a href=\"http://www.galsch.de/files/open/screenshots/2007-01-15-fb2k-htpc-1.png\" target=\"_blank\"]
[a href=\"http://www.galsch.de/files/open/screenshots/2007-01-15-fb2k-htpc-3.png\" target=\"_blank\"]
Thanks but i have a question :
How do you not to show the bar at the up of the screen ? (the bar with the button to close, minimze...)
How can i put my wallpaper at the backgroud in place of artist picture? (i want to have the information and thecd case with the cover but my wallpaper at backcground)
Thanks for your help
How do you not to show the bar at the up of the screen ? (the bar with the button to close, minimze...)
I use autohotkey (http://www.autohotkey.com/) fort that purpose
How can i put my wallpaper at the backgroud in place of artist picture?
In this line
$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,/images\bg\12.png,nokeepaspect)
just enter the filename of your desired background image if no artist or other picture can be found (in the lines above). When you always only want to display that background, you should move the line to the "// Background" section and remove the other lines trying to display such a big (%_width%, %_height%) picture.
i have a bug when i go in preference the program bug and i am obliged to close foobar and restart but it is not always. The sound continue normally but not the "posting". it is really amazing!!
sorry for my bad english
i have a bug when i go in preference the program bug
This is a trackinfo_mod issue. Try right-clicking on the preferences mask.
thanks again
when i put the line for the wallpaper and the right place and i delete the other for the artist no wallpaper appears it is only a black background. Have you an idea
my code :
// Global
$puts(path.library,'D:\Audio')
$puts(art.h,$sub(%_height%,351))
$puts(pos.x1,71)
$puts(pos.y1,$add(-134,$get(art.h)))
$puts(pos.y2,86)
// - Fonts used for additional info
$puts(font.a,$font(Gentium,20,glow-19-19-19 glowexpand-1 glowblur-8,160-160-160))
$puts(font.b,$font(Gentium,20,bold glow-19-19-19 glowexpand-1 glowblur-8,220-210-210))
// Background
$drawrect(,,,,brushcolor-19-19-19 pencolor-null)
$imageabs($sub(%_width%,198),$sub(%_height%,$get(pos.y2),44),images\htpc1\addinfo.png,)
$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,images\htpc1\bg.jpg,nokeepaspect)
// PerTrack
// Artist photo
//$if($fileexists($get(path.library)\Alben\%artist%\folder.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Alben\%artist%\folder.jpg,nokeepaspect),
//$if($fileexists($get(path.library)\Singles\%artist%\folder.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Singles\%artist%\folder.jpg,nokeepaspect),
//$if($fileexists($replace(%path%,$if(%disc%,$directory(%path%,2)\)$directory(%path%,1)\%filename_ext%,)folder.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$replace(%path%,$if(%disc%,$directory(%path%,2)\)$directory(%path%,1)\%filename_ext%,)folder.jpg,nokeepaspect),
//$if($strstr(%path%,\Alben\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Alben\folder.jpg,nokeepaspect),
//$if($strstr(%path%,\Sampler\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Sampler\folder.jpg,nokeepaspect),
//$if($strstr(%path%,\Soundtrack\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Soundtrack\folder.jpg,nokeepaspect),
//$if($strstr(%path%,\Spiele\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Spiele\folder.jpg,nokeepaspect),
//$if($strstr(%path%,\Sprache\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Sprache\folder.jpg,nokeepaspect),
//$if($strstr(%path%,\Web\),$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,$get(path.library)\Web\folder.jpg,nokeepaspect),
//$imageabs2(%_width%,%_height%,0,0,%_width%,$get(art.h),0,0,images\htpc1\bg.jpg,nokeepaspect)
//)))))))))
//$imageabs2(%_width%,$add(1,$get(art.h)),0,0,%_width%,$add(1,$get(art.h)),0,0,images\htpc1\artist-overlay2.png,nokeepaspect)
// Album art
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\cd.png,)
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\case.png,)
$if($fileexists($replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,)cover.jpg),
$imageabs2(300,300,0,0,300,300,$add(44,$get(pos.x1)),$add(18,$get(pos.y1)),$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,)cover.jpg,nokeepaspect),
)
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\gloss.png,)
$if(%disc%,$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\2cd.png,))
// Title - Artist
$alignabs($add($get(pos.x1),500),$add($get(pos.y1),136),$sub(%_width%,$get(pos.x1),500,82),200,right,middle)
$font(Gentium,36,glow-100-100-100 glowblur-38 glowexpand-1,205-191-171)
[%title%]$char(10)
$font(Gentium,24,glow-80-80-80 glowblur-20 glowexpand-1,190-175-155)
[%artist%]
// PerSecond
// Progress bar
$ifgreater(%playback_time_seconds%,0,
$drawrect(0,$sub(%_height%,$get(pos.y2)),$add(23,$muldiv(%playback_time_seconds%,%_width%,%length_seconds%)),4,pencolor-null brushcolor-0-128-255)
$imageabs($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$sub(%_height%,$get(pos.y2)),images\htpc1\progress2.png,)
,)
// Additional info
$if($or($greater(30,%playback_time_seconds%),$greater(30,%playback_time_remaining_seconds%)),
$alignabs($sub(%_width%,$get(pos.x1),500),$add($get(pos.y1),-100),500,200,right,bottom)
$if(%last_played%,$get(font.a)Bisher $get(font.b)%play_counter%$get(font.a)mal gehört', 'zuletzt am $char(10)$get(font.b)$substr(%last_played%,9,10). $select($substr(%last_played%,6,7),Januar,Februar,März,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember) $substr(%last_played%,1,4)$get(font.a).$char(10))
$if(%playback_time_seconds%,$get(font.a)Sorti $if(%date%,en $get(font.b)%date%$get(font.a) )$if(%publisher%,bei $get(font.b)%publisher%$get(font.a) )$if(%album%,de l album $get(font.b)%album%$get(font.a)).)
)
// Info squares
$font(Arial Unicode MS,18,glow-64-64-64 glowblur-5 glowexpand-1,19-19-19)
$alignabs($sub(%_width%,211),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)[%rating%]
$alignabs($sub(%_width%,177),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)[%mood%]
$alignabs($sub(%_width%,144),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)$if($strcmp(%cwb_playback_order%,'Shuffle (tracks)'),S)
// Pause overlay
$if(%ispaused%,
$drawrect($add(44,$get(pos.x1)),$add(18,$get(pos.y1)),300,300,pencolor-0-0-0 alpha-150)
$alignabs($add(44,$get(pos.x1)),$add(18,$get(pos.y1)),300,300,center,middle)$font(Webdings,72,,255-255-255)';'
)
thanks again
when i put the line for the wallpaper and the right place and i delete the other for the artist no wallpaper appears it is only a black background. Have you an idea?
I tried your code and it works: When I place a file called "bg.jpg" to the other files in the htpc1-folder it is shown correctly as well as all other information. Perhaps the extension of your file is uppercase (i.e. "bg.JPG")? Also try to add a leading "/" to the path in the imageabs2-call. I recommend to uncomment this line
//$imageabs2(%_width%,$add(1,$get(art.h)),0,0,%_width%,$add(1,$get(art.h)),0,0,images\htpc1\artist-overlay2.png,nokeepaspect)
and place it right under your background-imageabs-function in the "// Background"-section.
HTH
ojdo
I was thinking: If you had a closed selection of genres, you could make it change the font based on genre - so for classical stuff you could have a script font, for emo you could have a bad handwritten font, metal could have some heavy damaged font, electronica a slick, smooth font, grindcore you could have wingdings or something.
I was thinking: If you had a closed selection of genres, you could make it change the font based on genre.
At the moment I don't care for genre as I don't have good criteria to tag my music consistently. But I think about using this idea for visualizing my mood-tag: a round, soft font for mood=1, a pretty standard font for mood=2 and some aggressive grunge font for mood=3. Nice idea!
I was thinking: If you had a closed selection of genres, you could make it change the font based on genre - so for classical stuff you could have a script font,
I'm doing this, but the decision is by directories. Also, for the classical I have 5 different fonts, there I select one of them depending on the two right digits of crc(album/artist)
Thats pretty cool. Great minds think alike eh ;]
would it be possible to adjust the cd case to match the cover aspect ratio dynamically?
Some of my covers have different ar's and they look stretched when using this setup, also keeping the aspect ratio of the covers makes them smaller then the case and that doesn't look good
Thanks for the setup btw
First of all thank you very much for this awesome visualization script! I like it very much.
I was wondering if it may be possible to make the black part (where the text appears) semi-transparent? That would look very good.
I was wondering if it may be possible to make the black part (where the text appears) semi-transparent? That would look very good.
I added a second version of the code (with the dark part transparent) to the post above (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=50726&view=findpost&p=464466). I had that already tried, but it takes too much ressources for my old cpu... hope you can enjoy it with less waiting
ojdo
I added a second version of the code (with the dark part transparent) to the post above (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=50726&view=findpost&p=464466). I had that already tried, but it takes too much ressources for my old cpu... hope you can enjoy it with less waiting
Thanks! I added a black panel to it with 85% opacity. It looks great!
(http://img440.imageshack.us/img440/4035/htpc3ii.th.jpg) (http://img440.imageshack.us/my.php?image=htpc3ii.jpg)
Ojdo, also using your setup, only slightly modified, so thanks for that I use a gradient overlay on the bottom half of the artist image. Also I changed the fonts, added a remaining time indication, removed the 3 buttons and implemented the 2CD images in your package into the setup (just checks if there is "2CD" in the directory name) and I created some general-genre background (so if there is no artist image it displays %genre%.jpg which works for me, since I have 12 genres in which I put my music, so no "Alternative Rock", or "Indie Rock", but just "Rock" )
Normal display (clickable):
(clickable):
[a href="http://i12.tinypic.com/47bc7qh.jpg" target="_blank"](http://i10.tinypic.com/4794dxy.jpg) (http://i10.tinypic.com/4499zih.jpg)
Half the beauty is finding good artist images though...especially hi-res images from older artists are hard to find...
Newbie questions:
How do I fix this this (http://i3.tinypic.com/42lv9tc.jpg)?
Where do my images go/need to be renamed to?
leokennis think you could share your code? ( I'd like things in English )
a mod to toggle this stuff as a screensaver (automatically, or pusing some kind of ctrl + whatever) would be wicked
Newbie questions:
How do I fix this this (http://i3.tinypic.com/42lv9tc.jpg)?
Where do my images go/need to be renamed to?
leokennis think you could share your code? ( I'd like things in English )
If you downloaded ojdo's package, images should go into foobar2000/images/htpc1/
I will post my code but can't untill monday, since I'm not at my own house atm and so not on my own pc
no one could send us a pack of pics to use with this plug-in ? leokennis's ones look pretty good
no one could send us a pack of pics to use with this plug-in ? leokennis's ones look pretty good
You mean artist-pics or the pics of the CD case etc.? Because the last ones can be found in this topic, the artists pics I will try to upload somewhere but tommorrow, since I'm not at home now...
no one could send us a pack of pics to use with this plug-in ? leokennis's ones look pretty good
You mean artist-pics or the pics of the CD case etc.? Because the last ones can be found in this topic, the artists pics I will try to upload somewhere but tommorrow, since I'm not at home now...
I like the idea of that - maybe we can start a thread - searching for good wallpaper's is'nt as easy as it sounds...
no one could send us a pack of pics to use with this plug-in ? leokennis's ones look pretty good
You mean artist-pics or the pics of the CD case etc.? Because the last ones can be found in this topic, the artists pics I will try to upload somewhere but tommorrow, since I'm not at home now...
I like the idea of that - maybe we can start a thread - searching for good wallpaper's is'nt as easy as it sounds...
Well it's easy...but boring as hell to do
So I'll upload them tommorrow, some 200 pics all 1280x671 (yeah, strange size)
no one could send us a pack of pics to use with this plug-in ? leokennis's ones look pretty good
You mean artist-pics or the pics of the CD case etc.? Because the last ones can be found in this topic, the artists pics I will try to upload somewhere but tommorrow, since I'm not at home now...
I like the idea of that - maybe we can start a thread - searching for good wallpaper's is'nt as easy as it sounds...
Was talking about artist pics
Was talking about artist pics
I think the best we can do is to collect links to them, not to upload "packages" due to copyright issues.
Was talking about artist pics
I think the best we can do is to collect links to them, not to upload "packages" due to copyright issues.
Heh I have no links just the pictures So uploading those would be illegal?
Was talking about artist pics
I think the best we can do is to collect links to them, not to upload "packages" due to copyright issues.
copyright on artist pictures? LOL!
copyright on artist pictures? LOL!
Seriously, what is there to laugh about here?
copyright on artist pictures? LOL!
Seriously, what is there to laugh about here?
Well first of all: Pictures of artists have already been posted. (in a setup or not, they are "copyrighted", no?)
2nd: It's not like anyone would get in trouble for posting a link to a pack of promotional artist pictures...
Call me stupid, but thats how i see it.
copyright on artist pictures? LOL!
Seriously, what is there to laugh about here?
Well first of all: Pictures of artists have already been posted. (in a setup or not, they are "copyrighted", no?)
2nd: It's not like anyone would get in trouble for posting a link to a pack of promotional artist pictures...
Call me stupid, but thats how i see it.
Well...I get both of your points; technically it's illegal, but IRL no one will care...so I'll upload thewm tommorrow...maybe with a nice disclaimer or something
Well...I get both of your points; technically it's illegal, but IRL no one will care...so I'll upload thewm tommorrow...maybe with a nice disclaimer or something
There's always an industry which cares. Well, who cares?
Well first of all: Pictures of artists have already been posted. (in a setup or not, they are "copyrighted", no?)
2nd: It's not like anyone would get in trouble for posting a link to a pack of promotional artist pictures...
Now that statement is a lot more meaningful than your original post which looked like you were just ridiculing the concept of having artist pictures copyrighted. By the way, I am strongly in favor of posting links to download pages instead of hotlinking to content or even uploading things to HA.
Well first of all: Pictures of artists have already been posted. (in a setup or not, they are "copyrighted", no?)
2nd: It's not like anyone would get in trouble for posting a link to a pack of promotional artist pictures...
Now that statement is a lot more meaningful than your original post which looked like you were just ridiculing the concept of having artist pictures copyrighted. By the way, I am strongly in favor of posting links to download pages instead of hotlinking to content or even uploading things to HA.
Well...you're right but:
- There are 236 images, noe of which I know the original URL of.
- All the images have been resized.
- When I "hotlink", I have control over the availablility of the files. If I posted 236 links to JPG's, in one month at least 20% of them would give you a 404...
So here are the images, as I said earlier all in 1280x671; the correct size for use with ojdo's config:
http://www.filefactory.com/file/9fccfb/ (http://www.filefactory.com/file/9fccfb/)I don't know exactly if the file will stay on there forever, but if not I will re-upload and renew the link. Good luck with it all
What about your trackinfo mod settings?
See here: http://www.hydrogenaudio.org/forums/index....st&p=466762 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=43077&view=findpost&p=466762)
BTW, that's mostly ojdo's work, so thank him
BTW, that's mostly ojdo's work, so thank him
Thanks 2 both of you I'm really enjoying this setup
(I'm also having fun checking out some new artists on youtube atm from your fantastic wallpaper collection...)
Here's my version. Based on ojdos layout (thanks a lot for sharing).
I'm using it on my laptop. Fonts are quite big so I can read the text from distance when connecting it to my LCD-TV.
I actually just changed the design a bit and added a second trackinfo (set to autohide) with a control bar at the bottom (as you can see in the second screenshot).
Both screenshots are fullscreen (removed the titlebar with autohotkey).
(http://img99.imageshack.us/img99/7187/htpc16fg.th.jpg) (http://img99.imageshack.us/my.php?image=htpc16fg.jpg) (http://img260.imageshack.us/img260/7733/htpc21gc.th.jpg) (http://img260.imageshack.us/my.php?image=htpc21gc.jpg)
Thanks all here for posting your screenshots. It's very nice to see that my config is useful for someone else. Sadly, some well made (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=43077&view=findpost&p=467035) layouts (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=43077&view=findpost&p=466747) make me want to update my config already. I hoped to be able to stick to my layout for some time...
I need a self-help group for foobar-addicted people..
And... quicker than expected I finished version 2 of my fullscreen layout (version 1 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=50726&view=findpost&p=464466)). This time it is much better coded and highly configurable. Credits go to FofR for inspiration (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=43077&view=findpost&p=467035) and Cyex for his beautiful cd cover (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=51159&view=findpost&p=465135).
Preview(http://www.galsch.de/files/open/screenshots/2007-01-27--fb2k-htpc2-1-thumb.png) (http://www.galsch.de/files/open/screenshots/2007-01-27--fb2k-htpc2-1.png)
Default view
(http://www.galsch.de/files/open/screenshots/2007-01-27--fb2k-htpc2-2-thumb.png) (http://www.galsch.de/files/open/screenshots/2007-01-27--fb2k-htpc2-2.png)
Addinfo (can be switched off) at beginning and end of a song
(http://www.galsch.de/files/open/screenshots/2007-01-27--fb2k-htpc2-3-thumb.png) (http://www.galsch.de/files/open/screenshots/2007-01-27--fb2k-htpc2-3.png)
Pause
(http://www.galsch.de/files/open/screenshots/2007-01-28--fb2k-htpc2-1-thumb.png) (http://www.galsch.de/files/open/screenshots/2007-01-28--fb2k-htpc2-1.png)
Personal modded version (second codebox)
Stuff needed- Images (http://www.galsch.de/files/open/uploads/fb2k/htpc2.zip). Extract to your foobar's image directory.
- Font used: Calibri. All font settings are at the top, so you easily can change it to another one if you don't have it
Trackinfo mod code (also included in the images' download)
// Global
// CONFIGURATION ///////////////////////////////////////////
// Album Art
// Use $if and $fileexists if more locations need to be checked
$puts(path.albumart,$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,folder.jpg))
// Additional info
// addinfo.show: delete the '1' to disable additional info
// addinfo.time: determines how long addinfo is shown
$puts(addinfo.show,1)
$puts(addinfo.time,30)
// Positions
// pos.horizon: y-position of the grey horizon gradient
// pos.shadow: increase to see more reflection of the cd-cover
// pos.artx: if changed, further changes will be necessary for text positioning
// pos.arty: change position of album art relative to horizon line
$puts(pos.horizon,$muldiv(%_height%,4,7))
$puts(pos.shadow,120)
$puts(pos.artx,$sub($div(%_width%,2),278))
$puts(pos.arty,$sub($get(pos.horizon),400))
// Fonts
// font.a, font.b: used by addinfo for a) filling text, b) values
$puts(font.track,$font(Calibri,32,,255-255-255))
$puts(font.artist,$font(Calibri,24,,255-255-255))
$puts(font.a,$font(Calibri,16,,150-150-150))
$puts(font.b,$font(Calibri,16,,255-255-255))
// Progress bar
$puts(bar.height,5)
$puts(bar.color,255-255-255)
// END OF CONFIG ///////////////////////////////////////////
// Background
$drawrect(,,,,brushcolor-0-0-0 pencolor-null)
$imageabs(,$get(pos.horizon),/images/htpc2/horizon.png,)
// PerTrack
// Album Art
$imageabs2(556,516,0,0,556,$add(29,$get(pos.shadow)),$get(pos.artx),$add(460,$get(pos.arty)),/images/htpc2/case.png,ROTATEFLIP-6)
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs($get(pos.artx),$get(pos.arty),/images/htpc2/case.png,)
$imageabs2(454,454,0,0,454,454,$add(71,$get(pos.artx)),$add(31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
$imageabs($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),/images/htpc2/gloss.png,)
// PerSecond
// Pause Overlay
$if(%ispaused%,
$drawrect($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,pencolor-0-0-0 alpha-150)
$alignabs($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,center,middle)$font(Webdings,72,,255-255-255)';'
$drawrect($add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),454,$add(-2,$get(pos.shadow)),pencolor-0-0-0 alpha-150)
)
// Progress Bar
$ifgreater($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),0,
$drawrect(0,$sub(%_height%,$mul($get(bar.height),3)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$get(bar.height),pencolor-null brushcolor-$get(bar.color))
,)
// Trackinfo
$if($and($or($greater($get(addinfo.time),%playback_time_seconds%),$greater($get(addinfo.time),%playback_time_remaining_seconds%)),$get(addinfo.show)),
// Detailed
$alignabs(80,$add($get(pos.horizon),$get(pos.shadow)),$sub(%_width%,160),$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,%filename%)$char(10)
$get(font.artist)[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$if(%last_played%,$get(font.a)Bisher $get(font.b)%play_counter%$get(font.a)mal gehört', 'zuletzt am $get(font.b)$substr(%last_played%,9,10). $select($substr(%last_played%,6,7),Januar,Februar,März,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember) $substr(%last_played%,1,4)$get(font.a).$char(10))
$if(%playback_time_seconds%,$get(font.a)Erschienen $if(%date%,im Jahr $get(font.b)%date%$get(font.a) )$if(%publisher%,bei $get(font.b)%publisher%$get(font.a) )$if(%album%,auf dem Album $get(font.b)%album%$get(font.a)).)
,
// Default
$alignabs($get(pos.artx),$add($get(pos.horizon),$get(pos.shadow)),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,%filename%)$char(10)
$get(font.artist)[%artist%]
)
Personal modded version (displays rating and mood with colored bars, progress bar changes color on shuffle mode)
// Global
// CONFIGURATION ///////////////////////////////////////////
// Album Art
// Use $if and $fileexists if more locations need to be checked
$puts(path.albumart,
$if($fileexists($replace(%path%,%filename_ext%,%filename%.jpg)),$replace(%path%,%filename_ext%,%filename%.jpg),
$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,folder.jpg)
)
)
// Additional info
// addinfo.show: delete the '1' to disable additional info
// addinfo.time: determines how long addinfo is shown
$puts(addinfo.show,1)
$puts(addinfo.time,30)
// Positions
// pos.horizon: y-position of the grey horizon gradient
// pos.shadow: increase to see more reflection of the cd-cover
// pos.artx: if changed, further changes will be necessary for text positioning
// pos.arty: change position of album art relative to horizon line
$puts(pos.horizon,$muldiv(%_height%,4,7))
$puts(pos.shadow,120)
$puts(pos.artx,$sub($div(%_width%,2),278))
$puts(pos.arty,$sub($get(pos.horizon),400))
// Fonts
// font.a, font.b: used by addinfo for a) filling text, b) values
$puts(font.track,$font(Calibri,32,,255-255-255))
$puts(font.artist,$font(Calibri,24,,255-255-255))
$puts(font.a,$font(Calibri,16,,150-150-150))
$puts(font.b,$font(Calibri,16,,255-255-255))
// Progress bar
$puts(bar.height,5)
$puts(bar.width,32)
$puts(bar.progresscolor,$if($strstr(%cwb_playback_order%,Shuffle),128-0-255,0-128-255))
$puts(bar.ratingcolor,255-128-0)
$puts(bar.moodcolor,0-255-0)
// END OF CONFIG ///////////////////////////////////////////
// Background
$drawrect(,,,,brushcolor-0-0-0 pencolor-null)
$imageabs2(%_width%,49,0,0,%_width%,49,0,$get(pos.horizon),/images/htpc2/horizon.png,NOKEEPASPECT)
// PerTrack
// Album Art
$imageabs2(556,516,0,0,556,$add(29,$get(pos.shadow)),$get(pos.artx),$add(460,$get(pos.arty)),/images/htpc2/case.png,ROTATEFLIP-6)
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs($get(pos.artx),$get(pos.arty),/images/htpc2/case.png,)
$imageabs2(454,454,0,0,454,454,$add(71,$get(pos.artx)),$add(31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
$imageabs($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),/images/htpc2/gloss.png,)
// PerSecond
// Pause Overlay
$if(%ispaused%,
$drawrect($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,pencolor-0-0-0 alpha-150)
$alignabs($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,center,middle)$font(Webdings,72,,255-255-255)';'
$drawrect($add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),454,$add(-2,$get(pos.shadow)),pencolor-0-0-0 alpha-150)
)
// Bars
$ifgreater($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),0,$drawrect(0,$sub(%_height%,$mul($get(bar.height),3)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$get(bar.height),pencolor-null brushcolor-$get(bar.progresscolor)),)
$ifgreater(%rating%,0,
$drawrect(0,$sub(%_height%,$mul($get(bar.height),6)),$mul(%rating%,$get(bar.width)),$get(bar.height),pencolor-null brushcolor-$get(bar.ratingcolor))
$alignabs($add(5,$mul(%rating%,$get(bar.width))),$sub(%_height%,$mul($get(bar.height),5),$div($get(bar.height),2),3,32),64,64,left,middle)$get(font.b)%rating%
,)
$ifgreater(%mood%,0,
$drawrect($sub(%_width%,$mul(%mood%,$get(bar.width))),$sub(%_height%,$mul($get(bar.height),6)),$mul(%mood%,$get(bar.width)),$get(bar.height),pencolor-null brushcolor-$get(bar.moodcolor))
$alignabs($sub(%_width%,$mul(%mood%,$get(bar.width)),64,5),$sub(%_height%,$mul($get(bar.height),5),$div($get(bar.height),2),3,32),64,64,right,middle)$get(font.b)%mood%
,)
// Trackinfo
$if($and($or($greater($get(addinfo.time),%playback_time_seconds%),$greater($get(addinfo.time),%playback_time_remaining_seconds%)),$get(addinfo.show)),
// Detailed
$alignabs(80,$add($get(pos.horizon),$get(pos.shadow)),$sub(%_width%,160),$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,[%filename%])$char(10)
$get(font.artist)[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$if(%last_played%,$get(font.a)Bisher $get(font.b)%play_counter%$get(font.a)mal gehört', 'zuletzt am $get(font.b)$substr(%last_played%,9,10). $select($substr(%last_played%,6,7),Januar,Februar,März,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember) $substr(%last_played%,1,4)$get(font.a)., )$char(10)
$if(%playback_time_seconds%,$get(font.a)Erschienen $if(%date%,im Jahr $get(font.b)%date%$get(font.a) )$if(%publisher%,bei $get(font.b)%publisher%$get(font.a) )$if(%album%,auf dem Album $get(font.b)%album%$get(font.a))., )$char(10)
,
// Default
$alignabs(80,$add($get(pos.horizon),$get(pos.shadow)),$sub(%_width%,160),$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,%filename%)$char(10)
$get(font.artist)[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$get(font.a) $char(10) $char(10)
)
Edit: Bugfixed pause overlay. Now mirrored album art image gets darker, too.Edit2: Added personal modded versionEdit3: Added screenshot of personal modded version
ummm....
http://stashbox.org/10804/01_27_2007-13_59...ian-Circles.png (http://stashbox.org/10804/01_27_2007-13_59_04-Death-Rides-A-Horse-Russian-Circles.png)
why does that not work at all?
why does that not work at all?
I just double-checked the code in the codebox, it should work as expected if the images are at the correct position (maybe you have multi-user support enabled?) and you have the
latest trackinfo_mod version. Not up-to-date-versions could have problemes with the relative paths (strange enough, the mirrored case works and the unrotated does not).
ojdo nice work on your newest config...but where's the artist image man
I'll stick to the old one; artist image>album cover, especially with trackinfo_mod where half the images are blurry due to progressive-JPG
noob here
Like a few others I've had trouble getting the wallpaper to display, I only get a black background. What is the exact filename and directory the wallpaper image needs to be at?
Thanks in advance for any help
noob here
Like a few others I've had trouble getting the wallpaper to display, I only get a black background. What is the exact filename and directory the wallpaper image needs to be at?
Thanks in advance for any help
I had the same problem of no BG's showing up, here's how i fixed it..
The config needs editing to direct to YOUR music collection, and also the first line of the artist photo code needs editing to remove the /Alben/ text. Also, the Folder name has to be EXACTLY the same as the Artist name in the MP3 Tag's or no pic's will show.
If you're Already using the "folder.jpg" to display the album art, you also want to change that name to something more appropriate ie - "bg.jpg"
// Global
$puts(path.library,'Your music path here.')
// PerTrack
// Artist photo
$if($fileexists($get(path.library)%artist\bg.jpg),$imageabs2(%_width%,%_height%,0,0,%_width%,%_height%,0,0,$get(path.library)\%artist%\bg.jpg,nokeepaspect),
Now works a charm, and i love it. Slightly edited the progress bar, but aside from that i like it how it is, and im not experienced enough to do much else anyway.
Thanks for sharing!
(http://img237.imageshack.us/img237/4149/fb2ksy0.th.jpg) (http://img237.imageshack.us/my.php?image=fb2ksy0.jpg)
[edit] Oh, one question, how do i get the %mood% box working?
thanks Aliarse, that got it to work
what is the code to get the opacity fade in look on the black box in the lower third of the screen?
// Artist overlays
$drawrect(,$get(art.h),,,brushcolor-19-19-19 pencolor-0-0-0 alpha-155)
Adjust the alpha number.
ojdo nice work on your newest config...but where's the artist image man
I'll stick to the old one;
Your good right
I wanted a less ressource hungry config as the reaction time on rating (or "mooding"?) a file were too long for my taste. When I get a stronger CPU, I will probably will redo a luxurious layout including big and fat artist photos .
artist image>album cover, especially with trackinfo_mod where half the images are blurry due to progressive-JPG
Did you try the latest trackinfo_mod version? Since then, the only blurry images I still had where low-resolution ones which couldn't look better anywhere.
Like a few others I've had trouble getting the wallpaper to display, I only get a black background. What is the exact filename and directory the wallpaper image needs to be at?
It's just the other way round. Where do you have your artist pictures? When you tell the scheme, then the line of code can be written that will find the pictures.
Oh, one question, how do i get the %mood% box working?
This code displays the mood-number (for me: 1-3) if available. As your rating-box works, I can't see any trackinfo_mod related reason why the mood-box shouldn't work:
$font(Arial Unicode MS,18,glow-64-64-64 glowblur-5 glowexpand-1,19-19-19)
$alignabs($sub(%_width%,211),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)[%rating%]
$alignabs($sub(%_width%,177),$sub(%_height%,$get(pos.y2),58),60,60,center,middle)[%mood%]
Hehe, your code was fine already, the reason it wasn't working is because i didn't have the custom info component installed (which i found out after searching for mood). Installed that and set it up and its now working.
why does that not work at all?
I just double-checked the code in the codebox, it should work as expected if the images are at the correct position (maybe you have multi-user support enabled?) and you have the latest trackinfo_mod version. Not up-to-date-versions could have problemes with the relative paths (strange enough, the mirrored case works and the unrotated does not).
i have 0.8.0 beta
thats the one i got off of the official site
fixed it
My final version (for now):
http://www.hydrogenaudio.org/forums/index....st&p=467611 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=43077&view=findpost&p=467611)
Hey leokennis, can you please share your code for getting a general genre pic to show if there is no artist pic found?
Hey leokennis, can you please share your code for getting a general genre pic to show if there is no artist pic found?
$if(%isplaying%,$if($fileexists(M:\Art\%artist%.jpg),$imageabs2(1280,671,0,0,1280,671,0,0,M:\Art\%artist%.jpg,nokeepaspect),$imageabs2(1280,671,0,0,1280,671,0,0,M:\Art\%genre%.jpg,nokeepaspect)),)
making some updates to your config, ojdjodododo
will post it once i work out some kinks in the translation to english
making some updates to your config, ojdjodododo
will post it once i work out some kinks in the translation to english
Hehe I had the same technicality...
alright, here it goes:
EDIT: Fixed my errors. will post if any more come up
http://stashbox.org/11073/01_30_2007-01_48...s-Oceansize.png (http://stashbox.org/11073/01_30_2007-01_48_14-As-the-Smoke-Clears-Oceansize.png)
additional info on, timecodes off
http://stashbox.org/11074/01_30_2007-01_48...s-Oceansize.png (http://stashbox.org/11074/01_30_2007-01_48_39-As-the-Smoke-Clears-Oceansize.png)
addinfo on (not currently displaying), timecodes on
http://stashbox.org/11075/01_30_2007-01_50...s-Oceansize.png (http://stashbox.org/11075/01_30_2007-01_50_11-As-the-Smoke-Clears-Oceansize.png)
addinfo on (not currently displaying), timecodes off
basically, if addinfo on forces total times to display during the first and last 30 seconds (when the addinfo is displaying)
timecodes on force all time information to display at all times
REQUEST: only display the album title (if you look in the "working" pic, you can see it under the bottom right of the album art) if there is no album art.
anyway, here's the code.
// Global
// CONFIGURATION ///////////////////////////////////////////
// Album Art
// Use $if and $fileexists if more locations need to be checked
$puts(path.albumart,$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,folder.jpg))
// Additional info
// addinfo.show: delete the '1' to disable additional info
// addinfo.time: determines how long addinfo is shown
// timeinfo.show: change the '1' to '0' to disable the time codes displayed on the progress bar
$puts(addinfo.show,1)
$puts(addinfo.time,30)
$puts(timeinfo.show,0)
// Positions
// pos.horizon: y-position of the grey horizon gradient
// pos.shadow: increase to see more reflection of the cd-cover
// pos.artx: if changed, further changes will be necessary for text positioning
// pos.arty: change position of album art relative to horizon line
$puts(pos.horizon,$muldiv(%_height%,4,7))
$puts(pos.shadow,120)
$puts(pos.artx,$sub($div(%_width%,2),278))
$puts(pos.arty,$sub($get(pos.horizon),400))
// Fonts
// font.a, font.b: used by addinfo for a) filling text, b) values
$puts(font.track,$font(Calibri,16,,255-255-255))
$puts(font.album,$font(Calibri,8,,255-255-255))
$puts(font.artist,$font(Calibri,12,,255-255-255))
$puts(font.a,$font(Calibri,12,,150-150-150))
$puts(font.b,$font(Calibri,12,,255-255-255))
$puts(font.c,$font(Calibri,7,,255-255-255))
$puts(font.d,$font(Calibri,7,,225-225-225))
// Progress bar
$puts(bar.height,7)
$puts(bar.color,50-50-50)
// END OF CONFIG ///////////////////////////////////////////
// Background
$drawrect(,,,,brushcolor-0-0-0 pencolor-null)
$imageabs(,$get(pos.horizon),/images/htpc2/horizon.png,)
// PerTrack
// Album Art
$imageabs2(556,516,0,0,556,$add(29,$get(pos.shadow)),$get(pos.artx),$add(460,$get(pos.arty)),/images/htpc2/case.png,ROTATEFLIP-6)
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs($get(pos.artx),$get(pos.arty),/images/htpc2/case.png,)
$imageabs2(454,454,0,0,454,454,$add(71,$get(pos.artx)),$add(31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
// PerSecond
// Pause Overlay
$if(%ispaused%,
$drawrect($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,pencolor-0-0-0 alpha-150)
$alignabs($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,center,middle)$font(Webdings,72,,255-255-255)';'
$drawrect($add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),454,$add(-2,$get(pos.shadow)),pencolor-0-0-0 alpha-150)
)
// Progress Bar
$ifgreater($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),0,
$drawrect(0,$sub(%_height%,$mul($get(bar.height),3)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$get(bar.height),pencolor-null brushcolor-$get(bar.color))
,)
// Trackinfo
$if($and($or($greater($get(addinfo.time),%playback_time_seconds%),$greater($get(addinfo.time),%playback_time_remaining_seconds%)),$get(addinfo.show)),
// Detailed
$alignabs($get(pos.artx),$add($get(pos.arty),493),522,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),140),right,top)
$get(font.album)[%album%]$char(10)
$alignabs($add($sub($get(pos.artx),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.c)'0:00'
$alignabs($sub($add($get(pos.artx),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
[%length%]
$alignabs(80,$add($get(pos.horizon),$get(pos.shadow)),$sub(%_width%,160),$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,%filename%)$char(10)
$get(font.artist)[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$if(%last_played%,$get(font.a)Played $get(font.b)%play_counter%$get(font.a) time'('s')'', 'last on $get(font.b)$substr(%last_played%,9,10) $select($substr(%last_played%,6,7),January,February,March,April,May,June,July,August,September,October,November,December) $substr(%last_played%,1,4)$get(font.a).$char(10))
$if(%playback_time_seconds%,$get(font.a) $if(%album%,From the album $get(font.b)%album%$get(font.a)))$if(%date%,', 'published in $get(font.b)%date%$get(font.a) )$if(%publisher%,by $get(font.b)%publisher%$get(font.a))
,
// Default
$alignabs($get(pos.artx),$add($get(pos.arty),493),522,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),140),right,top)
$get(font.album)[%album%]$char(10)
$alignabs($get(pos.artx),$add($get(pos.horizon),$get(pos.shadow)),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,%filename%)$char(10)
$get(font.artist)[%artist%]
)
//time codes
$if($greater($get(timeinfo.show),0),$alignabs($add($sub($get(pos.artx),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.c)'0:00'
$alignabs($sub($add($get(pos.artx),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
[%length%]
$alignabs($add($sub($get(pos.artx),$div(%_width%,2)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),-11),$add($get(pos.horizon),$get(pos.shadow),51),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.d)[%playback_time% ]
$alignabs($add($sub($get(pos.artx),$div(%_width%,2)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),13),$add($get(pos.horizon),$get(pos.shadow),51),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.c)[ -%playback_time_remaining%],)
in the above code, how do i place text relative to the progress bar?
both just on the far left (static), the far right (static), and moving along with the progress bar
EDIT: figured it out, and added it to the above code.
My new config; a mix of stuff by ojdo and FofR, with a tiny bit added by myself :
Both clickable.
First the default layout:
(http://tinypic.com/4gogknl.jpg) (http://tinypic.com/4fudr1y.png)
And extra info, first and last 30 seconds of a track:
(http://tinypic.com/4329pgn.jpg) (http://tinypic.com/2zxs4ky.png)
So thanks again ojdo (and of course FofR).
(http://i58.photobucket.com/albums/g245/dracomordag/shup01_30_2007-16_02_47-Dwarf-Artil.png) (http://i58.photobucket.com/albums/g245/dracomordag/shup01_30_2007-16_02_47-Dwarf-Artil.png)
(http://i58.photobucket.com/albums/g245/dracomordag/01_30_2007-16_08_17-Dwarf-Artillery.png) (http://stashbox.org/11138/01_30_2007-16_08_17-Dwarf-Artillery-Bass-Communion.png)
for those who like pictures.
ummm....
http://stashbox.org/10804/01_27_2007-13_59...ian-Circles.png (http://stashbox.org/10804/01_27_2007-13_59_04-Death-Rides-A-Horse-Russian-Circles.png)
why does that not work at all?
I'm still having the same problem as the image you posted here. In other words, I'm getting the album image reflected at the bottom, but it's not faded, and I'm not getting the horizon image. Can you tell me what you did to fix the problem you had? Or can anyone else tell me what I might have that's conflicting, or have done wrong? I pasted the code directly.
I installed custominfo but that didn't fix it.
I'm using Foobar 0.9.4 and trackinfomod .0.8.0
The path to those images on my computer is C:\Program Files\foobar2000\images\htpc2\
Thanks for any help, I'm not too great at messing with this kind of coding.
The path to those images on my computer is C:\Program Files\foobar2000\images\htpc2\
theres your problem
put the images in c:\documents and settings\YOURNAME\application data\foobar2000\images\htpc2
The path to those images on my computer is C:\Program Files\foobar2000\images\htpc2\
theres your problem
put the images in c:\documents and settings\YOURNAME\application data\foobar2000\images\htpc2
Awesome, that nailed it. Thanks!
(http://i58.photobucket.com/albums/g245/dracomordag/01_31_2007-20_16_03-Tracy-Mogwai.png) (http://stashbox.org/11304/01_31_2007-20_16_03-Tracy-Mogwai.png)
slight updates:
made album art smaller
added background image
My edit
move cd
http://www.youtube.com/watch?v=iHL5DM4NaO4
My edit
move cd
http://www.youtube.com/watch?v=iHL5DM4NaO4
Very Nice
slight updates: [pic]
added background image
My edit
move cd
http://www.youtube.com/watch?v=iHL5DM4NaO4
Awesome, guys!
(http://img254.imageshack.us/img254/1112/nowyobraz11mc.th.jpg) (http://img254.imageshack.us/my.php?image=nowyobraz11mc.jpg)
(http://img201.imageshack.us/img201/3360/nowyobraz4li.th.jpg) (http://img201.imageshack.us/my.php?image=nowyobraz4li.jpg)
and movie
http://www.youtube.com/watch?v=iHL5DM4NaO4
It's ok , now ?
thanks for the ideas here. very cool. just thought i'd post my slightly modified version, possibly useful to others like myself with slow machines. no different visually, but i optimized it for my slow via chipset. went from over 30-35% cpu usage during playback down to 10-15%. i basically just took out all of the "addinfo" timing stuff... all info displays for the whole track. also took out the case image.
and two questions...
first, the line that gives the playback stats updates in the middle of playing. is there a way i could just have that update at the beginning of each track, and not in real time as the tag/database information changes?
second, could somebody help me with the syntax for displaying a default "no cover" image? i.e. i have a "default.gif" in the components folder that should display when no folder.jpg is found in the album's folder.
thanks
// Global
// CONFIGURATION ///////////////////////////////////////////
// Album Art
// Use $if and $fileexists if more locations need to be checked
$puts(path.albumart,$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,folder.jpg))
// Positions
// pos.horizon: y-position of the grey horizon gradient
// pos.shadow: increase to see more reflection of the cd-cover
// pos.artx: if changed, further changes will be necessary for text positioning
// pos.arty: change position of album art relative to horizon line
$puts(pos.horizon,$muldiv(%_height%,4,7))
$puts(pos.shadow,120)
$puts(pos.artx,$sub($div(%_width%,2),290))
$puts(pos.arty,$sub($get(pos.horizon),400))
// Fonts
// font.a, font.b: used by addinfo for a) filling text, b) values
$puts(font.track,$font(Calibri,24,,255-255-255))
$puts(font.artist,$font(Calibri,18,,255-255-255))
$puts(font.a,$font(Calibri,12,,150-150-150))
$puts(font.b,$font(Calibri,12,,255-255-255))
// Progress bar
$puts(bar.height,7)
$puts(bar.color,50-50-50)
// END OF CONFIG ///////////////////////////////////////////
// Background
$drawrect(,,,,brushcolor-0-0-0 pencolor-null)
$imageabs(,$get(pos.horizon),/images/htpc2/horizon.png,)
// PerTrack
// Album Art
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(54,$get(pos.artx)),$add(454,31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs2(454,454,0,0,454,454,$add(54,$get(pos.artx)),$add(31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
// PerSecond
// Pause Overlay
$if(%ispaused%,
$drawrect($add(54,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,pencolor-0-0-0 alpha-150)
$alignabs($add(54,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,center,middle)$font(Webdings,72,,255-255-255)';'
$drawrect($add(54,$get(pos.artx)),$add(454,31,$get(pos.arty)),454,$add(-2,$get(pos.shadow)),pencolor-0-0-0 alpha-150)
)
// Progress Bar
$ifgreater($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),0,
$drawrect(0,$sub(%_height%,$mul($get(bar.height),3)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$get(bar.height),pencolor-null brushcolor-$get(bar.color))
,)
// Default
$alignabs($get(pos.artx),$add($get(pos.arty),493),522,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),140),right,top)
$alignabs($get(pos.artx),$add($get(pos.horizon),$get(pos.shadow)),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,%filename%)$char(10)
$get(font.artist)[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$if(%last_played%,$get(font.a)played $get(font.b)%play_count%$get(font.a) times', 'last on $get(font.b)$substr(%last_played%,9,10) $select($substr(%last_played%,6,7),january,february,march,april,may,june,july,august,september,october,november,december) $substr(%last_played%,1,4)$get(font.a)$char(10))
$get(font.a) $if(%album%,from the album $get(font.b)%album%$get(font.a))$if(%date%,', 'published in $get(font.b)%date%)
)
second, could somebody help me with the syntax for displaying a default "no cover" image? i.e. i have a "default.gif" in the components folder that should display when no folder.jpg is found in the album's folder.
at this point in the code:
// PerTrack
// Album Art
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(54,$get(pos.artx)),$add(454,31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs2(454,454,0,0,454,454,$add(54,$get(pos.artx)),$add(31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
change it to
// PerTrack
// Album Art
$if($fileexists($replace(%path%,%filename_ext%,folder.jpg)),
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(54,$get(pos.artx)),$add(454,31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs2(454,454,0,0,454,454,$add(54,$get(pos.artx)),$add(31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
,
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(54,$get(pos.artx)),$add(454,31,$get(pos.arty)),PUTTHEFILEPATHHERE,NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs2(454,454,0,0,454,454,$add(54,$get(pos.artx)),$add(31,$get(pos.arty)),PUTTHEFILEPATHHERE,NOKEEPASPECT)
)
where i've written PUTTHEFILEPATHHERE, put the... well... file path. for your alternate "no cover" image.
i have it as just
// PerTrack
// Album Art
$if($fileexists($replace(%path%,%filename_ext%,folder.jpg)),
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(54,$get(pos.artx)),$add(454,31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs2(454,454,0,0,454,454,$add(54,$get(pos.artx)),$add(31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
,
)
so nothing shows up when there's no album image.
drake- thanks, that worked like a charm.
And... quicker than expected I finished version 2 of my fullscreen layout (version 1 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=50726&view=findpost&p=464466)). This time it is much better coded and highly configurable. Credits go to FofR for inspiration (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=43077&view=findpost&p=467035) and Cyex for his beautiful cd cover (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=51159&view=findpost&p=465135).
Preview
[a href=\"http://www.galsch.de/files/open/screenshots/2007-01-27--fb2k-htpc2-1.png\" target=\"_blank\"] Thanks. I love this, but I am having one problem.
I do not get the reflection of the CD case.
[a href=\"http://img263.imageshack.us/my.php?image=minenz6.png\" target=\"_blank\"]
My new config; a mix of stuff by ojdo and FofR, with a tiny bit added by myself :
Both clickable.
First the default layout:
[a href="http://tinypic.com/4fudr1y.png" target="_blank"] ) but also, leokennis, can you share your background
I do not get the reflection of the CD case.
.....I modified the code from your first codebox to change the language to English, to remove the progress bar, remove the "last played" etc. stats, and to show all the additional info the whole time), but even if I copy/paste your first codebox exactly I still don't get the cd case reflection, as can be seen here:
Can anyone figure out what is going wrong?
thanks in advance for any help.
Please don't fullquote, it makes the thread very difficult to read. The most probable reason for the cd case reflection not displaying is an outdated (old) version of trackinfo_mod. The reflection uses the ROTATEFLIP-option which is the only difference between the both pictures (cd case and its reflection). Download the latest version of the plugin and try again.
And a request from my side: Can you point me to the direction where you found these "neon" icons? I'm looking for dock icons in this style but only found some for a few applications. Thanks!
HTH
ojdo
My new config; a mix of stuff by ojdo and FofR, with a tiny bit added by myself :
Both clickable.
First the default layout:
[a href="http://tinypic.com/4fudr1y.png" target="_blank"] ) but also, leokennis, can you share your background
Can't find any reason it shouldn't work...try commenting out all the other images except the CD case and its reflection...
For my background: contact FofR, or else wait untill monday and I'll post it when I'm at my PC again
I am using 0.8.0 beta [Jan 5 2007], and I get the ROTATEFLIP on the album art just not the CD case.
.....damn it is frustrating.
Anyway...the buttons can be found here (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=35270&view=findpost&p=430846).
[a href="http://img375.imageshack.us/my.php?image=fb2kup6.jpg" target="_blank"] (a bit from everything and some from myself)
Well, after hours (literally) of trying each image line and everything working fine except the ROTATEFLIP on the case, I completly uninstalled foobar and reinstalled it and now my code works fine.
Go figure.
(http://img528.imageshack.us/img528/1460/clipboard01up8.th.png) (http://img528.imageshack.us/my.php?image=clipboard01up8.png)
[pic]
my config (a bit from everything and some from myself)
Very nice! My next config probably will have artist photos again.
Well, after hours (literally) of trying each image line and everything working fine except the ROTATEFLIP on the case, I completly uninstalled foobar and reinstalled it and now my code works fine.
Glad to hear that. Thanks for the link to the neon icons!
well, i just somehow deleted my entire config, which i have never backed up.
gah, time to build it all over from scratch, i suppose!
alright, its remade
hopefully i got rid of all the bugs and such
so that i never lose this again, here's the code.
// Global
// CONFIGURATION ///////////////////////////////////////////
// Album Art
// Use $if and $fileexists if more locations need to be checked
$puts(path.albumart,$replace(%path%,%filename_ext%,folder.jpg))
// Additional info
// addinfo.show: delete the '1' to disable additional info
// addinfo.time: determines how long addinfo is shown
// timeinfo.show: change the '1' to '0' to disable the time codes displayed on the progress bar
$puts(addinfo.show,1)
$puts(addinfo.time,30)
$puts(timeinfo.show,1)
// Positions
// pos.horizon: y-position of the grey horizon gradient
// pos.shadow: increase to see more reflection of the cd-cover
// pos.artx: if changed, further changes will be necessary for text positioning
// pos.arty: change position of album art relative to horizon line
$puts(pos.horizon,$muldiv(%_height%,4,7))
$puts(pos.shadow,100)
$puts(pos.artx,$sub($div(%_width%,2),245))
$puts(pos.artx2,$sub($div(%_width%,2),278))
$puts(pos.arty,$sub($get(pos.horizon),352))
// Fonts
// font.a, font.b: used by addinfo for a) filling text, b) values
$puts(font.track,$font(Calibri,16,,255-255-255))
$puts(font.album,$font(Calibri,8,,255-255-255))
$puts(font.artist,$font(Calibri,12,,255-255-255))
$puts(font.a,$font(Calibri,12,,150-150-150))
$puts(font.b,$font(Calibri,12,,255-255-255))
$puts(font.c,$font(Calibri,9,,127-151-158))
$puts(font.d,$font(Calibri,7,,225-225-225))
// Progress bar
$puts(bar.height,7)
$puts(bar.color,50-50-50)
// END OF CONFIG ///////////////////////////////////////////
// Background
$drawrect(,,,,brushcolor-0-0-0 pencolor-null)
$imageabs(,$get(pos.horizon),/images/drakez/horizon.png,)
$imageabs2(%_width%,%_height%,0,150,%_width%,$get(pos.horizon),0,0,/images/drakez/walls/mountains.jpg,NOKEEPASPECT)
// PerTrack
// PerTrack
// Album Art
$if($fileexists($replace(%path%,%filename_ext%,folder.jpg)),
$imageabs2(490,454,0,0,590,$add(27,$get(pos.shadow)),$get(pos.artx),$add(406,$get(pos.arty)),/images/drakez/case.png,ROTATEFLIP-6)
$imageabs2(400,400,0,0,400,$add(-2,$get(pos.shadow)),$add(63,$get(pos.artx)),$add(406,27,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),263,$get(pos.arty)),/images/drakez/shadow.png,)
$imageabs2(490,454,0,0,490,490,$get(pos.artx),$get(pos.arty),/images/drakez/case.png,)
$imageabs2(400,400,0,0,400,400,$add(63,$get(pos.artx)),$add(27,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
,
)
// PerSecond
// Pause Overlay
$if($fileexists($replace(%path%,%filename_ext%,folder.jpg)),
$if(%ispaused%,
$drawrect($add(63,$get(pos.artx)),$add(27,$get(pos.arty)),400,400,pencolor-0-0-0 alpha-150)
$alignabs($add(63,$get(pos.artx)),$add(27,$get(pos.arty)),400,400,center,middle)$font(Webdings,72,,255-255-255)';'
$drawrect($add(63,$get(pos.artx)),$add(405,27,$get(pos.arty)),400,$add(-2,$get(pos.shadow)),pencolor-0-0-0 alpha-150)
)
,
$if(%ispaused%,
$alignabs($add(50,$get(pos.artx)),$add(27,$get(pos.arty)),400,400,center,middle)$font(Webdings,72,,255-255-255)';'
$drawrect($add(63,$get(pos.artx)),$add(405,27,$get(pos.arty)),400,$add(-2,$get(pos.shadow)),pencolor-0-0-0 alpha-150)
)
)$font(Calibri,7,,255-255-255)
// Progress Bar
$ifgreater($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),0,
$drawrect(0,$sub(%_height%,$mul($get(bar.height),3)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$get(bar.height),pencolor-null brushcolor-$get(bar.color))
,)
// Trackinfo
$if(%isplaying%,
$if($fileexists($replace(%path%,%filename_ext%,folder.jpg)),
$if($and($or($greater($get(addinfo.time),%playback_time_seconds%),$greater($get(addinfo.time),%playback_time_remaining_seconds%)),$get(addinfo.show)),
// Detailed
$alignabs($get(pos.artx2),$add($get(pos.arty),433),492,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),140),right,top)
$get(font.album)[%album%]$char(10)
$alignabs($add($sub($get(pos.artx2),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.d)'0:00'
$alignabs($sub($add($get(pos.artx2),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
[%length%]
$alignabs(80,$add($get(pos.horizon),$get(pos.shadow),-20),$sub(%_width%,160),$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)[%title%]$char(10)
$get(font.artist)[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$if(%last_played%,$get(font.a)Played $get(font.b)%play_count%$get(font.a) time'('s')'', 'last on $get(font.b)$substr(%last_played%,9,10) $select($substr(%last_played%,6,7),January,February,March,April,May,June,July,August,September,October,November,December) $substr(%last_played%,1,4)$get(font.a).$char(10))
$if(%playback_time_seconds%,$get(font.a) $if(%album%,From the album $get(font.b)%album%$get(font.a)))$if(%date%,', 'published in $get(font.b)%date%$get(font.a) )$if(%publisher%,by $get(font.b)%publisher%$get(font.a))
,
// Default
$alignabs($get(pos.artx2),$add($get(pos.arty),433),492,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),140),right,top)
$get(font.album)[%album%]$char(10)
$alignabs($get(pos.artx2),$add($get(pos.horizon),$get(pos.shadow),-20),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)[%title%]$char(10)
$get(font.artist)[%artist%]
)
,
$if($and($or($greater($get(addinfo.time),%playback_time_seconds%),$greater($get(addinfo.time),%playback_time_remaining_seconds%)),$get(addinfo.show)),
// Detailed
$alignabs($add($sub($get(pos.artx2),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.d)'0:00'
$alignabs($sub($add($get(pos.artx2),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
[%length%]
$alignabs(80,$add($get(pos.horizon),$get(pos.shadow),-20),$sub(%_width%,160),$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)[%title%]$char(10)
$get(font.artist)[%album%]$char(10)
[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$if(%last_played%,$get(font.a)Played $get(font.b)%play_count%$get(font.a) time'('s')'', 'last on $get(font.b)$substr(%last_played%,9,10) $select($substr(%last_played%,6,7),January,February,March,April,May,June,July,August,September,October,November,December) $substr(%last_played%,1,4)$get(font.a).$char(10))
$if(%playback_time_seconds%,$get(font.a) $if(%album%,From the album $get(font.b)%album%$get(font.a)))$if(%date%,', 'published in $get(font.b)%date%$get(font.a) )$if(%publisher%,by $get(font.b)%publisher%$get(font.a))
,
// Default
$alignabs($get(pos.artx2),$add($get(pos.horizon),$get(pos.shadow),-150),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.artist)[%artist%]
$get(font.c)' // '
$get(font.track)[%title%]
$get(font.c)' // '
$get(font.artist)[%album%]
)),)
//time codes
$if(%isplaying%,
$if($greater($get(timeinfo.show),0),$alignabs($add($sub($get(pos.artx2),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.d)'0:00',)
$alignabs($sub($add($get(pos.artx2),$div(%_width%,2)),12),$add($get(pos.horizon),$get(pos.shadow),60),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
[%length%]
$alignabs($add($sub($get(pos.artx2),$div(%_width%,2)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),-11),$add($get(pos.horizon),$get(pos.shadow),51),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.d)[%playback_time% ]
$alignabs($add($sub($get(pos.artx2),$div(%_width%,2)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),13),$add($get(pos.horizon),$get(pos.shadow),51),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.d)[ -%playback_time_remaining%],)
row height: 18
group rows: 2
group by: %album%
background: 70-70-70
item display:
$drawrect(145,,,,brushcolor-78-78-78 pencolor-null)
$drawrect(145,,,1,brushcolor-90-90-90 pencolor-null)
$drawrect(145,17,,1,brushcolor-60-60-60 pencolor-null)
$imageabs2(105,105,0,$add(-18,$mul(%_itemindex%,18)),,,5,0,images\shadcover.png,)
$if($fileexists($replace(%path%,%filename_ext%,folder.jpg)),
$if($greater(%_itemcount%,3),
$imageabs2($if($greater(10,%_itemcount%),$mul(%_itemcount%,15),135),$if($greater(10,%_itemcount%),$mul(%_itemcount%,15),135),0,$add(-19,$mul(%_itemindex%,18)),,,6,0,$replace(%path%,%filename_ext%,folder.jpg),)
,)
,)
$font(Calibri,9,,234-238-246)
$puts(text,[%title%])
$puts(charWidth,$div($calcwidth($get(text)),$len($get(text))))
$puts(width,$sub(%_width%,210))
$if(%_selected%,$drawrect(145,,$sub(%_width%,145),,brushcolor-100-100-100 pencolor-60-124-188),)
$if(%isplaying%,$drawrect(145,,$sub(%_width%,145),,brushcolor-100-100-100 pencolor-100-164-228)$drawrect(146,1,$add(1,$div($mul($sub(%_width%,146),%_time_elapsed_seconds%),%length_seconds%)),16,brushcolor-127-151-158 pencolor-null),)
$if($strcmp(%album artist%,%artist%),
$alignabs(149,0,$sub(%_width%,149),16,left,middle)$if(%isplaying%,$font(Calibri,9,,234-238-246),$font(Calibri,9,,134-138-146))[%track%. ]$if(%isplaying%,$font(Calibri,9,,234-238-246),$font(Calibri,9,,154-158-166))$ifgreater($calcwidth($get(text)),$get(width),
$cut($get(text),$sub($div($get(width),$get(charWidth)),3))'...'
,$get(text)),
$alignabs(149,0,$sub(%_width%,149),16,left,middle)$if(%isplaying%,$font(Calibri,9,,234-238-246),$font(Calibri,9,,134-138-146))[%track%. ]$if(%isplaying%,$font(Calibri,9,,234-238-246),$font(Calibri,9,,154-158-166))%title% - %artist%)
$if(%isplaying%,
$alignabs(349,0,$sub(%_width%,353),16,right,top)$if(%isplaying%,$font(Calibri,9,,234-238-246),$font(Calibri,9,,134-138-146))%playback_time%' / '%length%,
$alignabs(349,0,$sub(%_width%,353),16,right,top)$if(%isplaying%,$font(Calibri,9,,234-238-246),$font(Calibri,9,,134-138-146))%length%))
group display:
$font(Calibri,18,bold,124-128-126)
$puts(text,[%album%])
$puts(textwidth,$calcwidth($get(text)))
$puts(textlength,$len($get(text)))
$puts(charWidth,$div($get(textwidth),$get(textlength)))
$font(Calibri,16,uppercase,104-108-116)
$puts(artisa,[%artist%])
$puts(artisttextwidth,$calcwidth($get(artisa)))
$puts(artisalength,$len($get(artisa)))
$puts(archarWidth,$div($get(artisttextwidth),$get(artisalength)))
$puts(totaltextwidth,$add($get(textwidth),$get(artisttextwidth)))
$puts(width,$if($greater(%_width%,300),$sub(%_width%,300),0))
$drawrect(,,,,brushcolor-70-70-70 pencolor-null)
$drawrect(,1,,1,brushcolor-90-90-90 pencolor-null)
$drawrect(,2,,1,brushcolor-80-80-80 pencolor-null)
$drawrect(,34,,1,brushcolor-60-60-60 pencolor-null)
$drawrect(,35,,1,brushcolor-50-50-50 pencolor-null)
$align(left,)
$font(Calibri,18,bold,124-128-126)
' '$ifgreater($get(textwidth),$get(width),
$cut($get(text),$sub($div($get(width),$get(charWidth)),$div($get(artisttextwidth),$get(archarWidth))))'...'
,$get(text))
$font(Calibri,14,,127-151-158)' // '
$font(Calibri,16,uppercase,104-108-116)[%artist% ]
$align(right,middle)
$font(Calibri,8,,104-108-116)
[%genre% ]['['%date%']'', ']
$font(Calibri,7,,94-98-106)
[%__codec% ][%__tool% ][%__codec_profile% / ][%bitrate%Kbps][ / RG: %__replaygain_album_gain%][Source: $meta(SOURCE)]
$char(10)
$drawrect(20,29,$sub(%_width%,40),1,brushcolor-50-50-58 pencolor-null)
alright, its remade
hopefully i got rid of all the bugs and such
so that i never lose this again, here's the code.
[a lot of code]
I want to see screenshots!
alright, its remade
hopefully i got rid of all the bugs and such
so that i never lose this again, here's the code.
[a lot of code]
I want to see screenshots!
same as this:
(http://i58.photobucket.com/albums/g245/dracomordag/01_31_2007-20_16_03-Tracy-Mogwai.png) (http://stashbox.org/11304/01_31_2007-20_16_03-Tracy-Mogwai.png)
slight updates:
made album art smaller
added background image
and also this:
alright, here's my essentially complete config:
now playing window:
(http://i58.photobucket.com/albums/g245/dracomordag/02_04_2007-14_35_46-Pt-3.png) (http://i58.photobucket.com/albums/g245/dracomordag/02_04_2007-14_35_46-Pt-3.png)
scpl:
(http://i58.photobucket.com/albums/g245/dracomordag/02_04_2007-14_36_43-Pt-3.png) (http://i58.photobucket.com/albums/g245/dracomordag/02_04_2007-14_36_43-Pt-3.png)
a lot of the code handles what to do if there's no album art. all it does is move the infotext up to a more central location, and display it as "artist // trackname // album", removes the pauseoverlay when there's no album art, etc.
Drake,
I'm using your trackinfomod and SCPL code from above and was wondering if I could get your images from your most recent update. I'm using your trackinfomod from the second page of this thread and the aspect ratio doesn't seem right, and my album art gets cut off. The SCPL code works and looks excellent... thanks a lot for the code.
(http://img468.imageshack.us/img468/5505/foobarkb1.th.jpg) (http://img468.imageshack.us/my.php?image=foobarkb1.jpg)
A bit OT. You're all using album art. Is there a way to get album art (half)automatically?
A bit OT. You're all using album art. Is there a way to get album art (half)automatically?
Yeah use iTunes heh... It downloads album art in .itc files (which are actually just a wrapped jpg). Use jpgextractor (http://schmidt.devlib.org/software/jpeg-extractor.html) to get the jpg.
My single column config :
row height: 25
group rows: 1
group by: %album%
background: 235-235-235
item display:
$if($strcmp($mod(%_playlist_number%,2),1),
$drawrect(,,,,brushcolor-245-245-245 pencolor-null))
$ifgreater(%_itemcount%,5,
$imageabs2(142,142,0,$add(-3,$mul(%_itemindex%,25)),,,2,0,C:\Program Files\foobar2000\images\albumborder.png,NOKEEPASPECT)
$imageabs2(142,142,0,$add(-3,$mul(%_itemindex%,25)),,,2,0,$replace(%path%,%filename_ext%,*cover*.*),NOKEEPASPECT)
$imageabs2(142,142,0,$add(-3,$mul(%_itemindex%,25)),,,2,0,$replace(%path%,%filename_ext%,*front*.*),NOKEEPASPECT)
$imageabs2(142,142,0,$add(-3,$mul(%_itemindex%,25)),,,2,0,$replace(%path%,%filename_ext%,folder.*),NOKEEPASPECT)
$if(%_selected%,$drawrect(146,,,,brushcolor- 212-212-212 pencolor-null),)
$alignabs(146,0,%_width%,%_height%,,)$font(calibri bold,9,,26-51-138)
$if(%isplaying%,$font(calibri bold,9,,255-0-128))
$replace([ %tracknumber% - ][%title%],'(',$font(,,bold italic,20-40-120)'(')
$if(%isplaying%,$font(calibri bold,9,,255-0-128))
$alignabs(146,14,%_width%,%_height%,,)$font(CubicFive10,6,nocleartype,26-51-138)
$if(%isplaying%,$font(,7,,255-0-128)%playback_time% - )
[%length% | ][%bitrate% kbps | ][%codec%]
$alignabs(0,10,$sub(%_width%,2),%_height%,right,)
$font(Wingdings,9,glow-190-190-190 glowexpand-1,250-250-250)
$repeat(«,%rating%)
,
$imageabs2($add(22,$mul(24,%_itemcount%)),$add(22,$mul(24,%_itemcount%)),0,$add(-3,$mul(%_itemindex%,25)),,,2,0,C:\Program Files\foobar2000\images\albumborder.png,NOKEEPASPECT)
$imageabs2($add(22,$mul(24,%_itemcount%)),$add(22,$mul(24,%_itemcount%)),0,$add(-3,$mul(%_itemindex%,25)),,,2,0,$replace(%path%,%filename_ext%,*cover*.*),NOKEEPASPECT)
$imageabs2($add(22,$mul(24,%_itemcount%)),$add(22,$mul(24,%_itemcount%)),0,$add(-3,$mul(%_itemindex%,25)),,,2,0,$replace(%path%,%filename_ext%,*front*.*),NOKEEPASPECT)
$imageabs2($add(22,$mul(24,%_itemcount%)),$add(22,$mul(24,%_itemcount%)),0,$add(-3,$mul(%_itemindex%,25)),,,2,0,$replace(%path%,%filename_ext%,folder.*),NOKEEPASPECT)
$if(%_selected%,$drawrect($add(22,$mul(24,%_itemcount%)),,,,brushcolor- 212-212-212 pencolor-null),)
$alignabs($add(26,$mul(24,%_itemcount%)),0,%_width%,%_height%,,)$font(calibri bold,9,,26-51-138)
$if(%isplaying%,$font(calibri bold,9,,255-0-128))
$replace([ %tracknumber% - ][%title%],'(',$font(,,bold italic,20-40-120)'(')
$if(%isplaying%,$font(calibri bold,9,,255-0-128))
$alignabs($add(26,$mul(24,%_itemcount%)),14,%_width%,%_height%,,)$font(CubicFive10,6,nocleartype,26-51-138)
$if(%isplaying%,$font(,7,,255-0-128)%playback_time% - )
[%length% | ][%bitrate% kbps | ][%codec%]
$alignabs(0,10,$sub(%_width%,2),%_height%,right,)
$font(Wingdings,9,glow-190-190-190 glowexpand-1,250-250-250)
$repeat(«,%rating%)
)
group display:
$padding(1,0)
$drawrect(,,,,brushcolor-230-230-230 pencolor-51-191-238)$padding(4,1)
$align(right,center)$font(,,bold,0-0-0)
%artist%
$puts(ar_w,$calcwidth(%artist%))
$drawrect($sub(%_width%,$get(ar_w),18),-1,3,%_height%,brushcolor-51-191-238 pencolor-null)
$drawrect($sub(%_width%,$get(ar_w),17),-1,1,%_height%,brushcolor-250-250-250 pencolor-null)
$ifgreater(%_itemcount%,5,
$imageabs2(142,142,,$add(0,$mul(%_itemindex%,29)),,,2,2,C:\Program Files\foobar2000\images\albumborder.png,NOKEEPASPECT)
$imageabs2(142,142,,$add(0,$mul(%_itemindex%,29)),,,2,2,$replace(%path%,%filename_ext%,*cover*.*),NOKEEPASPECT)
$imageabs2(142,142,,$add(0,$mul(%_itemindex%,29)),,,2,2,$replace(%path%,%filename_ext%,*front*.*),NOKEEPASPECT)
$imageabs2(142,142,,$add(0,$mul(%_itemindex%,29)),,,2,2,$replace(%path%,%filename_ext%,folder.*),NOKEEPASPECT)
$alignabs(146,0,%_width%,%_height%,,)$font(calibri bold,9,,255-255-255)
$font(,,bold glow-18-173-224 glowexpand-1,)
%album%
$alignabs(146,14,%_width%,%_height%,,)$font(CubicFive12,6,nocleartype,18-173-224)
[%date% | ][%genre%]
$drawrect(138,-1,3,%_height%,brushcolor-51-191-238 pencolor-null)
$drawrect(139,-1,1,%_height%,brushcolor-250-250-250 pencolor-null)
,
$imageabs2($add(22,$mul(24,%_itemcount%)),$add(22,$mul(24,%_itemcount%)),,$add(0,$mul(%_itemindex%,29)),,,2,2,C:\Program Files\foobar2000\images\albumborder.png,NOKEEPASPECT)
$imageabs2($add(22,$mul(24,%_itemcount%)),$add(22,$mul(24,%_itemcount%)),,$add(0,$mul(%_itemindex%,29)),,,2,2,$replace(%path%,%filename_ext%,*cover*.*),NOKEEPASPECT)
$imageabs2($add(22,$mul(24,%_itemcount%)),$add(22,$mul(24,%_itemcount%)),,$add(0,$mul(%_itemindex%,29)),,,2,2,$replace(%path%,%filename_ext%,*front*.*),NOKEEPASPECT)
$imageabs2($add(22,$mul(24,%_itemcount%)),$add(22,$mul(24,%_itemcount%)),,$add(0,$mul(%_itemindex%,29)),,,2,2,$replace(%path%,%filename_ext%,folder.*),NOKEEPASPECT)
$alignabs($add(26,$mul(24,%_itemcount%)),0,%_width%,%_height%,,)$font(calibri bold,9,,255-255-255)
$font($add(26,$mul(24,%_itemcount%)),,bold glow-18-173-224 glowexpand-1,)
%album%
$alignabs($add(26,$mul(24,%_itemcount%)),14,%_width%,%_height%,,)$font(CubicFive12,6,nocleartype,18-173-224)
[%date% | ][%genre%]
$drawrect($add(18,$mul(24,%_itemcount%)),-1,3,%_height%,brushcolor-51-191-238 pencolor-null)
$drawrect($add(19,$mul(24,%_itemcount%)),-1,1,%_height%,brushcolor-250-250-250 pencolor-null)
)
This code adapt cover about number of track,
exemple : a small cover picture when just one track
a stronger for two ...
(http://img157.imageshack.us/img157/5916/sanstitreux2.th.jpg) (http://img157.imageshack.us/my.php?image=sanstitreux2.jpg)
I'm kind of determined to get this (http://i9.tinypic.com/35jlcgh.png) to work but, it's not.
If it matters my music is arranged by G:/My Music/Arist Name/[Year] Album Title/Music Files+folder.jpg/.png/.gif
Artist Pictures are from directory: G:/My Music/Art/artist name.jpg
And still aren't showing up.
And the album art is in that folder. Was wondering if I could use about the same thing as in my Album Art panel:
[foo_uie_albumart]
$replace(%path%,%filename_ext%,)folder.jpg
-$replace(%path%,%filename_ext%,)folder.png
-$replace(%path%,%filename_ext%,)folder.gif
--components\default.*
-$replace(%_path%,%_filename_ext%,)*.png
-$replace(%_path%,%_filename_ext%,)*.jpg
-$replace(%_path%,%_filename_ext%,)*.bmp
-$replace(%_path%,%_filename_ext%,)*.gif
-components\*$rand(10).png
[End]
So, help? Pretty please.
Here's me code:
// Global
$puts(path.library,'G:\My Music')
$puts(art.h,$sub(%_height%,351))
$puts(pos.x1,71)
$puts(pos.y1,$add(-134,$get(art.h)))
$puts(pos.y2,86)
// - Fonts used for additional info
$puts(font.a,$font(Gentium,20,glow-19-19-19 glowexpand-1 glowblur-8,160-160-160))
$puts(font.b,$font(Gentium,20,bold glow-19-19-19 glowexpand-1 glowblur-8,220-210-210))
// Background
$drawrect(,,,,brushcolor-19-19-19 pencolor-null)
// PerTrack
// Artist photo
$if(%isplaying%,$if($fileexists(G:\My Music\Art\%artist%.jpg),$imageabs2(1280,671,0,0,1280,671,0,0,M:\Art\%artist%.jpg,nokeepaspect),$imageabs2(1280,671,0,0,1280,671,0,0,M:\Art\%genre%.jpg,nokeepaspect)),)
$if(%isplaying%,$imageabs2(1280,672,0,0,1280,672,0,0,images\htpc1\artist-overlay2.png,nokeepaspect),)
// Album art
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\cd.png,)
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\case.png,)
$if($fileexists($replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,)folder.jpg),
$imageabs2(300,300,0,0,300,300,$add(44,$get(pos.x1)),$add(18,$get(pos.y1)),$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,)folder.jpg,nokeepaspect),
)
$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\gloss.png,)
$if(%disc%,$imageabs($get(pos.x1),$get(pos.y1),images\htpc1\2cd.png,))
// Title - Artist
$alignabs($add($get(pos.x1),500),$add($get(pos.y1),136),$sub(%_width%,$get(pos.x1),500,82),200,right,middle)
$font(Gentium,36,glow-100-100-100 glowblur-38 glowexpand-1,205-191-171)
[%title%]$char(10)
$font(Gentium,24,glow-80-80-80 glowblur-20 glowexpand-1,190-175-155)
[%artist%]
// PerSecond
// Progress bar
$ifgreater(%playback_time_seconds%,0,
$drawrect(0,$sub(%_height%,$get(pos.y2)),$add(23,$muldiv(%playback_time_seconds%,%_width%,%length_seconds%)),4,pencolor-null brushcolor-0-128-255)
$imageabs($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$sub(%_height%,$get(pos.y2)),images\htpc1\progress2.png,)
,)
$alignabs($add($get(pos.x1),566),$add($get(pos.y1),323),$sub(%_width%,$get(pos.x1),500,82),200,right,middle)
$font(Segoe UI,14,glow-100-100-100 glowblur-38 glowexpand-1,205-191-171)
$if($greater(6,%playback_time_remaining_seconds%),$if(%isplaying%,Crossfading$char(10),),[-%_time_remaining%]$char(10))
// Additional info
$if($or($greater(30,%playback_time_seconds%),$greater(30,%playback_time_remaining_seconds%)),
$alignabs($sub(%_width%,$get(pos.x1),500),$add($get(pos.y1),-100),500,200,right,bottom)
$if(%playback_time_seconds%,$get(font.a)From $if(%date%,the $get(font.b)%date%$get(font.a) )$if(%album%,album $get(font.b)%album%$get(font.a)).)
)
// Pause overlay
$if(%ispaused%,
$drawrect($add(44,$get(pos.x1)),$add(18,$get(pos.y1)),300,300,pencolor-0-0-0 alpha-150)
$alignabs($add(44,$get(pos.x1)),$add(18,$get(pos.y1)),300,300,center,middle)$font(Webdings,72,,255-255-255)';'
)
$if($fileexists($replace(%path%,%filename_ext%,folder.jpg)),
$imageabs2(300,300,0,0,300,300,$add(44,$get(pos.x1)),$add(18,$get(pos.y1)),$replace(%path%,%filename_ext%,folder.jpg),nokeepaspect)
,
$if($fileexists($replace(%path%,%filename_ext%,folder.png)),
$imageabs2(300,300,0,0,300,300,$add(44,$get(pos.x1)),$add(18,$get(pos.y1)),$replace(%path%,%filename_ext%,folder.png),nokeepaspect)
,
$if($fileexists($replace(%path%,%filename_ext%,folder.gif)),
$imageabs2(300,300,0,0,300,300,$add(44,$get(pos.x1)),$add(18,$get(pos.y1)),$replace(%path%,%filename_ext%,folder.gif),nokeepaspect)
,
)))
any new place you want to check, just copy/paste 3 of those lines (text, text, comma) and paste them at the end, then change folder.jpg or whatever to the new item you want to check for, then add an ending parentheses to where there are already 3.
that could probably be simplified with if3, but im more comfortable with standard if commands.
Drake,
I'm using your trackinfomod and SCPL code from above and was wondering if I could get your images from your most recent update. I'm using your trackinfomod from the second page of this thread and the aspect ratio doesn't seem right, and my album art gets cut off. The SCPL code works and looks excellent... thanks a lot for the code.
[a href=\"http://img468.imageshack.us/my.php?image=foobarkb1.jpg\" target=\"_blank\"]
i'm tweaking a bit the fantastic code of ojdo and i will like ask something:
in my old fb2k config i use this code (don't remember who, i think it was spex04) for a track info mod.
$puts(str1,"%title%"[ by %artist%][ / %album%][ '('%genre%[, %date%]')'])
$puts(str2,$upper($replace(%filename_ext%,%filename%.,)) $if(%__bitrate_nominal%,VBR '('%__bitrate%kbps average')' at %bitrate%kbps,[%codec_profile% $if($or($strstr(%codec_profile%,VBR),$strstr(%codec_profile%,ABR)),'('%__bitrate%kbps average')' )]at %bitrate%kbps)',' %samplerate%Hz / $cwb_splitnum($div($muldiv(%filesize%,1000,1024),1000),',')kb)
$puts(str3,$if(%play_count%,Played: %play_count% time$if($stricmp(%play_count%,1),,s),Never Played)$if(%last_played%,$puts(lpdiff,$cwb_datediff(%last_played%,%cwb_systemdatetime%))',' Last Played: $ifgreater(1,$get(lpdiff),Today,$ifgreater(2,$get(lpdiff),Yesterday,$get(lpdiff) days ago '('$num($substr(%last_played%,9,10),1)-$num($substr(%last_played%,6,7),1)-$substr(%last_played%,1,4)')')),)$if(%first_played%,$puts(fpm,$substr(%first_played%,9,10)) / First Played: $num($get(fpm),1)$ifgreater(2,$get(fpm),st,$ifgreater(3,$get(fpm),nd,$ifgreater(4,$get(fpm),rd,th))) of $select($substr(%first_played%,6,7),January,February,March,April,May,June,July,Auguest,September,October,November,December)',' $substr(%first_played%,1,4)))
$puts(panelbg,245-245-245)
$puts(imagedir,'C:\Archivos de programa\foobar2000\images\')
// background
$drawrect(,,,,brushcolor-$get(panelbg) pencolor-null)
$imageabs2(,,,,,,0,3,$get(imagedir)trackinfo1.png,)
// audioscrobbler
$if($or($greater($muldiv(%playback_time_seconds%,100,%length_seconds%),49),$greater(%playback_time_seconds%,239)),$imageabs2(,,,,,,$sub(%_width%,88),3,$get(imagedir)as.png,))
// curved edges
$drawrect(0,3,1,1,brushcolor-$get(panelbg) pencolor-null)
$drawrect($sub(%_width%,1),3,1,1,brushcolor-$get(panelbg) pencolor-null)
$drawrect(0,57,1,1,brushcolor-$get(panelbg) pencolor-null)
$drawrect($sub(%_width%,1),57,1,1,brushcolor-$get(panelbg) pencolor-null)
$if(%isplaying%,
// progress bar
$drawrect($muldiv(%_width%,15,100),41,$muldiv(%_width%,70,100),9,brushcolor-null pencolor-240-240-240)
$drawrect($add($muldiv(%_width%,15,100),2),43,$ifgreater($muldiv($sub($muldiv(%_width%,70,100),4),%playback_time_seconds%,%length_seconds%),0,$muldiv($sub($muldiv(%_width%,70,100),4),%playback_time_seconds%,%length_seconds%),1),5,brushcolor-240-240-240 pencolor-null)
$alignabs($sub($muldiv(%_width%,15,100),35),38,35,14,center,middle)$font(calibri,8,bold,240-240-240)$if2(%playback_time%,0:00)
$alignabs($muldiv(%_width%,85,100),38,35,14,center,middle)$font(calibri,8,bold,240-240-240)$if2(%length%,0:00)
$alignabs(20,9,$sub(%_width%,40),14,center,middle)$font(calibri,9,bold,240-240-240)
// interchanging text
$select($add($mod(%playback_time_seconds%,15),1),
$get(str1),$get(str1),$get(str1),$get(str1),$get(str1),
$get(str2),$get(str2),$get(str2),$get(str2),$get(str2),
$get(str3),$get(str3),$get(str3),$get(str3),$get(str3))
// autorating system
$if(%rating%,$puts(rating,%rating%),$puts(rating,$sub(%play_counter%,$div($cwb_datediff(%cwb_systemdatetime%,%first_played%),28))))
$if($greater($get(rating),5),$puts(rating,5))
$if($greater(0,$get(rating)),$puts(rating,0))
$imageabs2(,,,,,,$div($sub(%_width%,58),2),26,$get(imagedir)r$get(rating).png,)
// properties & open dir
$button($sub(%_width%,15),26,0,0,9,9,$get(imagedir)info.png,$get(imagedir)infoh.png,properties,)
$button(6,26,0,0,9,9,$get(imagedir)dir.png,$get(imagedir)dirh.png,open directory,)
,
// not playing..
$alignabs($div($sub(%_width%,50),2),6,50,48,center,middle)
$font(wingdings,25,bold,230-230-230)v
)
i really like how it shows the never played, last played, first played ... etc...
and my question is simple, i think:
can someone help me to edit the ojdo code (in particular) when it shows the playback statistic?
thanks in advance...sorry my english
Hey drake, where can i get the code of your beautifull foobar, and maybe the images too? i can't find any release of your config...
thanks guys for posting all this code - its really starting to coe together for me.
anyway, I have a seperate layout preset as my Now Playing screen (i assume whats what you do). whats the easiest way to switch from my broswer view to my now palying view. for some reason when i enter the now playing view, all keyboard commands stop working. any help?
nevermind i got something working
Wow this post has grown since i last checked it, please consider me a noob(if it wasn't already obvious)when its comes to foobar configs so go easy on me :-).
I love the look of ojdo foobar
http://www.hydrogenaudio.org/forums/index....st&p=467427 (http://www.hydrogenaudio.org/forums/index.php?showtopic=50726&view=findpost&p=467427)
Could someone please tell me what plugins i would need and maybe if someone could supply a foobar config file i could just import.
Thanks for any info/tips.
Hey drake, where can i get the code of your beautifull foobar, and maybe the images too? i can't find any release of your config...
it should all be in my post at the top of the screen ( http://www.hydrogenaudio.org/forums/index....st&p=469791 (http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=50726&view=findpost&p=469791) )
the background image is here: http://www.pixelgirlpresents.com/images/de...adual_right.jpg (http://www.pixelgirlpresents.com/images/desktops/j3_concepts/sirenaagitatadual_right.jpg)
if you need anything more, just ask me
I don't know if anyone is still interested in fullscreen track display codes. I still use them in combination with Columns UI. Here is the config I use ATM (yes, quite some inspirations are taken from other board members' contributions):
htpc6 Features - works without any additional pictures (apart from album and artist art)
- uses font BigNoodle Titling, available at dafont.com (http://www.dafont.com/bignoodle-titling.font)
- progress bar around album art
- works well with resolutions of 1280x1024 and above (smaller screens need manual adjustments in font size and positions)
Preview(http://www.galsch.de/files/open/screenshots/2007-10-09--fb2k-htpc6-1-thumb.jpg) (http://www.galsch.de/files/open/screenshots/2007-10-09--fb2k-htpc6-1.jpg)
Additional info + artist art is shown only at beginning and end of track
(http://www.galsch.de/files/open/screenshots/2007-10-09--fb2k-htpc6-2-thumb.jpg) (http://www.galsch.de/files/open/screenshots/2007-10-09--fb2k-htpc6-2.jpg)
Bars show %rating% (orange) and %mood% (green)
(http://www.galsch.de/files/open/screenshots/2007-10-09--fb2k-htpc6-3-thumb.jpg) (http://www.galsch.de/files/open/screenshots/2007-10-09--fb2k-htpc6-3.jpg)
How it looks in the middle of a track
The CodePaste this in the code box of a panels_ui track display panel:
// HTPC6
// A fullscreen track display code
// Global
// Colors
$puts(col.bg,5-5-5)
$puts(col.border.rating,255-128-0)
$puts(col.border.mood,0-255-0)
$puts(col.imgborder,66-66-66)
$puts(col.progress,$if(%_ispaused%,180-180-180,$if($strstr(%cwb_playback_order%,Shuffle),96-32-255,32-128-255)))
$puts(col.info.basic,222-210-200)
$puts(col.info.additional,180-180-180)
// Positions
$puts(pos.img.a,500)
$puts(pos.img.x,$eval(%_width%/2-$get(pos.img.a)/2))
$puts(pos.img.y,$eval(%_height%/2-$get(pos.img.a)/2))
$puts(EndIsNear,$if($or($greater(35,%_time_elapsed_seconds%),$greater(35,%_time_remaining_seconds%)),1))
/////////////////////////////////////////
// RELATIVE TIMESTAMPS
// formerly known as natural language timestamps
// by topdownjimmy - v0.5.c - May 6, 2007
/////////////////////////////////////////
// calculate days since last play
$puts(dayssince,$cwb_datediff(%cwb_systemdate%,%last_played%))
// correct "dayssince" to consider early AM to be an extension of previous day
$puts(dayssince,$sub($get(dayssince),$if($and($greater(7,$substr(%cwb_systemdatetime%,12,13)),$greater($substr(%last_played%,12,13),6)),1,0)))
$if($and($greater($substr(%cwb_systemdatetime%,12,13),6),$greater(7,$substr(%last_played%,12,13))),$puts(dayssince,$add($get(dayssince),1)),)
// calculate day of week of last play
$puts(calcdayofweek,$add(1,$mod($add($substr(%last_played%,3,4),$div($substr(%last_played%,3,4),4),$select($substr(%last_played%,6,7),6,2,2,5,0,3,5,1,4,6,2,4),$substr(%last_played%,9,10)),7)))
// correct day of week to consider early AM to be an extension of previous day
$puts(calcdayofweek,$sub($get(calcdayofweek),$ifgreater(7,$substr(%last_played%,12,13),1,0)))
$if($strcmp($get(calcdayofweek),0),$puts(calcdayofweek,7),)
// calculate period of day of last play (night, morning, etc.)
$puts(dayperiod,$select($add(1,$substr(%last_played% ,12,13)),Night,Night,Night,Night,Night,Night,Night,Morning,Morning,Morning,Morning,Morning,Afternoon
,Afternoon,Afternoon,Afternoon,Afternoon,Evening,Evening,Evening,Evening,Night,Night,Night))
// calculate natural language timestamp
$if(%last_played%,$puts(rel_timestamp,$ifgreater($get(dayssince),0,$ifgreater($get(dayssince),1,$ifgreater($get(dayssince),6,$if($and($greater($get(dayssince),21),$not($strcmp($left(%cwb_systemdate%,7),$left(%last_played%,7)))),$if($not($strcmp($left(%cwb_systemdate%,4),$substr(%last_played%,1,4))),$select($substr(%last_played%,6,7),January,February,March,April,May,June,July,August,September,October,November,December)' '$ifgreater($get(dayssince),334,$substr(%last_played%,1,4),),$ifgreater(2,$sub($substr(%cwb_systemdate%,6,7),$substr(%last_played%,6,7)),'Last Month',$select($substr(%last_played%,6,7),January,February,March,April,May,June,July,August,September,October,November,December))),$ifgreater($div($add($get(dayssince),4),7),1,$div($add($get(dayssince),4),7)' Weeks Ago',Last Week)),$select($get(calcdayofweek),Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday)' '$get(dayperiod)),$if($strcmp($get(dayperiod),Night),Last,Yesterday)' '$get(dayperiod)),$if($strcmp($get(dayperiod),Night),Tonight,This $get(dayperiod)))),$puts(rel_timestamp,Never))
// ------------------------------------------------------------------------------------------------------------------
// Background
$drawrect(0,0,0,0,pencolor-null brushcolor-$get(col.bg))
$drawrect(0,$eval(%_height%/100*75+1),%_width%,1,pencolor-99-99-99)
$drawrect(
$eval($get(pos.img.x)-5),
$eval($get(pos.img.y)-5),
$eval($get(pos.img.a)+10),
$eval($get(pos.img.a)+10),
brushcolor-$get(col.bg) pencolor-$get(col.bg) alpha-200
)
$drawrect(
$eval($get(pos.img.x)-3),
$eval($get(pos.img.y)-3),
$eval($get(pos.img.a)+6),
$eval($get(pos.img.a)+6),
brushcolor-null pencolor-$get(col.imgborder)
)
// ------------------------------------------------------------------------------------------------------------------
// PerTrack
// Album Art
$if($get(coverPath),
$imageabs2(
$eval($get(pos.img.a)-50),
$eval($get(pos.img.a)-50),
0,0,
$eval($get(pos.img.a)-50),
$eval($get(pos.img.a)-50),
$eval($get(pos.img.x)+25),
$eval($get(pos.img.y)+25),
$get(coverPath),
NOKEEPASPECT)
)
// Basic trackinfo
$alignabs(
0,
$eval($get(pos.img.y)+$get(pos.img.a)+10),
%_width%,
$eval(%_height%-$get(pos.img.y)-$get(pos.img.a)-20),
center,
middle
)
$font(BigNoodleTitling,40,,$get(col.info.basic))
[' '%title%' ']
$char(10)
$font(Florencesans,8,,$get(col.info.basic))
' '$char(10)
$font(BigNoodleTitling,24,,$get(col.info.basic))
[' '%artist%' ']
// Rating
$if(%rating%,
$puts(rw,$muldiv(%rating%,$eval($get(pos.img.x)-5),5))
$ifgreater($get(rw),0,
$drawrect(
0,
$eval(%_height%/100*75+1-1),
$get(rw),
3,
brushcolor-null pencolor-$get(col.border.rating)
)
,)
)
// Mood
$if(%mood%,
$puts(mw,$muldiv(%mood%,$eval($get(pos.img.x)-5),3))
$ifgreater($get(mw),0,
$drawrect(
$eval(%_width%-$get(mw)),
$eval(%_height%/100*75+1-1),
$get(mw),
3,
brushcolor-null pencolor-$get(col.border.mood)
)
,)
)
// ------------------------------------------------------------------------------------------------------------------
// PerSecond
// Pause overlay
$if(%_ispaused%,
$drawrect(
$eval($get(pos.img.x)),
$eval($get(pos.img.y)),
$eval($get(pos.img.a)),
$eval($get(pos.img.a)),
brushcolor-$get(col.bg) pencolor-$get(col.bg) alpha-150
)
)
// Progress bar
$puts(prog.milli,$muldiv( %playback_time_seconds%,1000,%length_seconds%))
$ifgreater($get(prog.milli),0,
$puts(lw,$muldiv($min(250,$eval($get(prog.milli)-0)),$eval($get(pos.img.a)+6),250))
$drawrect(
$eval($get(pos.img.x)-3),
$eval($get(pos.img.y)-3-1),
$get(lw),
3,
brushcolor-null pencolor-$get(col.progress)
)
,)
$ifgreater($get(prog.milli),250,
$puts(lw,$muldiv($min(250,$eval($get(prog.milli)-250)),$eval($get(pos.img.a)+6),250))
$drawrect(
$eval($get(pos.img.x)+$get(pos.img.a)+2-1),
$eval($get(pos.img.y)-3-1),
3,
$get(lw),
brushcolor-null pencolor-$get(col.progress)
)
,)
$ifgreater($get(prog.milli),500,
$puts(lw,$muldiv($min(250,$eval($get(prog.milli)-500)),$eval($get(pos.img.a)+6),250))
$drawrect(
$eval($get(pos.img.x)+$get(pos.img.a)+3-$get(lw)+1),
$eval($get(pos.img.y)+$get(pos.img.a)+2-1),
$get(lw),
3,
brushcolor-null pencolor-$get(col.progress)
)
,)
$ifgreater($get(prog.milli),750,
$puts(lw,$muldiv($min(250,$eval($get(prog.milli)-750)),$eval($get(pos.img.a)+6),250))
$drawrect(
$eval($get(pos.img.x)-3-1),
$eval($get(pos.img.y)+$get(pos.img.a)+3-$get(lw)+1),
3,
$get(lw),
brushcolor-null pencolor-$get(col.progress)
)
,)
// Additional Info
$if($and($get(EndIsNear),%_isplaying%),
// Artist Art
$if($get(artistPath),
$drawrect($eval(%_width%/2-80-5),$eval($get(pos.img.y)+$get(pos.img.a)-80-5),170,130,pencolor-$get(col.bg) brushcolor-$get(col.bg) alpha-200)
$drawrect($eval(%_width%/2-80-5),$eval($get(pos.img.y)+$get(pos.img.a)-80-5),170,130,pencolor-$get(col.imgborder) brushcolor-null)
$imageabs2(160,120,0,0,160,120,$eval(%_width%/2-80),$eval($get(pos.img.y)+$get(pos.img.a)-80),$get(artistPath),NOKEEPASPECT)
)
$drawrect(
-1,
$eval(%_height%-80),
$eval(%_width%/5),
80,
brushcolor-null pencolor-$get(col.imgborder)
)
$alignabs(
-1,
$eval(%_height%-80),
$eval(%_width%/5-10),
80,
right,
middle
)
$font(BigNoodleTitling,19,,$get(col.info.additional))
[' '%album% ['('%date%')']' ']
$drawrect(
$eval(%_width%*4/5+1),
$eval(%_height%-80),
$eval(%_width%/5),
80,
brushcolor-null pencolor-$get(col.imgborder)
)
$alignabs(
$eval(%_width%*4/5+1+10),
$eval(%_height%-80),
$eval(%_width%/5-10),
80,
left,
middle
)
$font(BigNoodleTitling,19,,$get(col.info.additional))
Last time played:' '$char(10)$get(rel_timestamp)' '
)