Help - Search - Members - Calendar
Full Version: Foobar2000 format strings
Hydrogenaudio Forums > Hosted Forums > foobar2000 > General - (fb2k)
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25
NEMO7538
My replies :

QUOTE(mai9 @ Feb 5 2004, 04:15 AM)
Nice playlist NEMO7538! will you add it to http://pelit.koillismaa.fi/fb2k/index.php ?

one question: wouldn't you prefer to use this character "¯" than this "_" for album separator?


I will try your character and let you know
==> Tested, not so bad but I may stick to "_"
I will post it to your URL after some improvements I'm thinking of
QUOTE(mai9 @ Feb 5 2004, 09:17 AM)

QUOTE(vip @ Feb 5 2004, 03:02 PM)
QUOTE(upNorth @ Feb 5 2004, 05:35 AM)
QUOTE(vip @ Feb 5 2004, 02:58 PM)
looks awesome nemo, but i have a question .. for a majority of my playlist, it looks correct, but for others it looks like this http://www.destroyed.us/images/fb2kpl.png

any idea what's going on ??

You just need to tag those files

that's what I though, but they are tagged :l

it happens here aswell, but even weirder

another shot

It happens because you have no proper track# tag in your files. In this case (which I use to recognize Internet Radios from files) the formatting is File (or URL) / left aligned and %Title% / right aligned. This is by design
mai9
QUOTE(NEMO7538 @ Feb 5 2004, 09:22 PM)
I will post it to your URL after some improvements I'm thinking of

It happens because you have no proper track# tag in your files. In this case (which I use to recognize Internet Radios from files) the formatting is File (or URL) / left aligned and %Title% / right aligned. This is by design

ok, I'll wait your updates biggrin.gif

and yes, they lack the track tag, I will tag them asap.


I changed two things in your playlist, the "_" and delete the left zeros in track numbers. If you want to use it here it is:

CODE
$puts(TrackNum,$ifgreater(10,%tracknumber%,  $right(%tracknumber%,1),$num(%tracknumber%,2))'. ')

Ah, I also added a space after the dot.
NEMO7538
The ultimate Foobar formatting string :
  • Supports Album and Single view selection (Based on # in the playlist name)
  • Supports (Albums view) Single Artist / Various Artist recognition based on directory names
  • Recognition of '(..)' patterns in Artist, Albums and Title with special colors
  • Featuring (unique) intelligent Album Name split on several lines
  • Works with any screen width (stretch to aprox. 600 pixels width recommended)
  • No need for Unicode Support
  • Works best with Tahoma Bold 7 pt. Font and RGB(64,0,64) background
  • Long Long .... blink.gif hours of tuning.
Enjoy !!!!




// ==========================
// The ultimate Foobar Playlist Format
// ==========================


// Identify view
// (Based on: # in the playlist and %artist% in the Directory)
// 1=Single view (Single Artist)
// 2=Single view (VA)
// 3=Album view (Single Artist)
// 4=Album view (VA)
// 5=Other
// --------------------------------
$puts(Viewtype,$if(%tracknumber%,
$if($strcmp($strstr(%_playlist_name%,#),0),
$if($strcmp($strstr($directory(%_path%,1),%artist%),1),3,4),
$if($strcmp($strstr($directory(%_path%,1),%artist%),1),1,2)),5))

// --------------
// Set Variables
// |†•…•¶|—¯
// --------------
//
// column width for album view
$puts(LenCol1,31)
$puts(LenCol2,45)

// Playlist #
// ----------
// Colors and Columns
$puts(ColNumber,$if(%_isplaying%,A4FFD1|0000FF,003AB3|A5D8DA))
$puts(Number,$get(ColNumber)$num(%_playlist_number%,$len(%_playlist_total%)))
//
// Artist
// -----
$puts(ColArtist,$if(%_isplaying%,80FFFF|80FFFF,98CBCB|98CBCB))
$puts(ColArtist2,$if(%_isplaying%,98CBCB|98CBCB,70B7BA|70B7BA))

$puts(Artist,$get(ColArtist)
$replace($replace(%artist%,'(',$get(ColArtist2)'('),')',')'$get(ColArtist)))
//
// Date
// -----
$puts(Date,$if(%_isplaying%,4080FF|4080FF,7796C8|7796C8)'['%date%']')

//
// Album
// -----
$puts(ColAlbum,$if(%_isplaying%,00FF80|00FF80,82CC89|82CC89))
$puts(ColAlbum2,$if(%_isplaying%,82CC89|82CC89,86B99F|86B99F))
// full album (needed in any case)
$puts(Album,$get(ColAlbum)
$replace($replace(%album%,'(',$get(ColAlbum2)'('),')',')'$get(ColAlbum)))

// INTELLIGENT ALBUM SPLIT
// Calculation of potential split position (By order of priority)
//
$if($or($strcmp($get(Viewtype),3),$strcmp($get(Viewtype),4)),
$iflonger(%album%,$get(LenCol1),

// Album longer than column
$puts(AlbumSplitPos,0)
$if($not($strcmp($get(AlbumSplitPos),0)),
,$puts(AlbumSplitPos,$strstr(%album%,' Vol')))
$if($not($strcmp($get(AlbumSplitPos),0)),
,$puts(AlbumSplitPos,$strstr(%album%,'(')))
$if($not($strcmp($get(AlbumSplitPos),0)),
,$puts(AlbumSplitPos,$strstr(%album%,'Cd')))
$if($not($strcmp($get(AlbumSplitPos),0)),
,$puts(AlbumSplitPos,$strstr(%album%,'CD')))
$if($not($strcmp($get(AlbumSplitPos),0)),
,$puts(AlbumSplitPos,$strstr(%album%,'Disc')))
$if($not($strcmp($get(AlbumSplitPos),0)),
,$puts(AlbumSplitPos,$strstr(%album%,'Disk')))

$if($not($strcmp($get(AlbumSplitPos),0)),
,$puts(AlbumSplitPos,$strstr(%album%,'- ')))


// Eventually split
// - Set Album Parts 1 & 2

$if($not($strcmp($get(AlbumSplitPos),0)),
// split required and possible
// 1- first part of album (overrides album)
$puts(Album,$get(ColAlbum)
$trim($cut(%album%,$sub($get(AlbumSplitPos),1))))
// 2-second part of album
$puts(Album2,$get(ColAlbum2)
$right(%album%,$add($sub($len(%album%),$get(AlbumSplitPos)),1)))
,
// no way to split

)
,
// No split needed
$puts(AlbumSplitPos,0)
)
// Single or Other View
,)

//
// Path
// -----
$puts(Path,$if(%_isplaying%,00FF80|00FF80,35CAA9|35CAA9)%_path%)
//
// Track
// -----
$puts(ColTrack,$if(%_isplaying%,A4FFD1|0000FF,006BD7|A5D8DA))
$puts(Track,$get(ColTrack)$num(%tracknumber%,2). )
//
// Title
// -----
$puts(ColTitle,$if(%_isplaying%,F1EA8D|F1EA8D,D1C4AD|D1C4AD))
$puts(ColTitle2,$if(%_isplaying%,D1C4AD|D1C4AD,BCBC83|BCBC83))
$puts(Title,$get(ColTitle)
$replace($replace(%title%,'(',$get(ColTitle2)'('),')',')'$get(ColTitle)))
//
// Duration & bitrate
// ------------------
$puts(Time,$get(ColTrack)$pad_right([%_length%],5,0))
$puts(Bitrate,$get(ColNumber)%__bitrate%k)

// BackGround color
$puts(ColBack,400040|400040)

// Column Separator
$puts(SepCol,300060|300060|)
//
// Artist-Title separator (VA)
$puts(SepAT,$get(ColTrack) • )
//
// Playing Mark & Eol
$puts(PlayMark,$if(%_isplaying%,$transition(>>>>>>>,$get(ColBack),
$if(%_isplaying%,00FFFF|00FFFF,00FFFF|00FFFF)),))
$puts(Eol,$char(9)$get(PlayMark)$get(SepCol)$get(Time)$get(SepCol)$get(Bitrate))
// ---------------------------
// Album separation line
// ---------------------------
$puts(SepAlbum1,¯)
$puts(SepAlbum2,$if(%_isplaying%,_,¯))
//
// First Line
$select($get(ViewType),,,
// Single Artist
$puts(Fill1,$transition($repeat($get(SepAlbum1),
$sub($get(LenCol1),$len(%artist%))),
$if($strcmp($substr(%artist%,$len(%artist%),$len(%artist%)),')'),
$get(ColArtist2),$get(ColArtist)),$get(ColTrack))
$get(ColTrack)$repeat($get(SepAlbum1),80))
,
// Various Artist
// Set split or unsplit length
$puts(LenAlbum,$if($strcmp($get(AlbumSplitPos),0),$len(%album%),$get(AlbumSplitPos)))
//
//
$puts(Fill1,$transition($repeat($get(SepAlbum1),
$sub($get(LenCol1),$get(LenAlbum))),
$if($strcmp($get(AlbumSplitPos),0),$if($strcmp($substr(%album%,$len(%album%),$len(%album%)),')'),$get(ColAlbum2),$get(ColAlbum)),$get(ColAlbum)),$get(ColTrack))
$get(ColTrack)$repeat($get(SepAlbum1),80))
)
//
// Second Line
$puts(Fill2,$transition($repeat($get(SepAlbum2),$sub($if(%_isplaying%,$sub($get(LenCol2),8),$get(LenCol2)),
$select($get(ViewType),,,$len(%title%),$add($len(%artist%),$len(%title%),3)))),
$if($strcmp($substr(%title%,$len(%title%),$len(%title%)),')'),
$get(ColTitle2),$get(ColTitle))
,$if(%_isplaying%,$get(ColBack),$get(ColTrack)))
$if(%_isplaying%,$get(ColBack),$get(ColTrack))$repeat($get(SepAlbum2),80))
// -----------------------------
// Formatting
// -----------------------------
$get(Number)$get(SepCol)
$select($get(ViewType),
// -----------------------------
// 1=Single view (Single Artist)
// -----------------------------
$get(Artist)$tab(10)$get(SepCol)$get(Album)$tab(10)$get(SepCol)
$get(Track)$get(Title)$tab(16)$get(Eol)
,
// -----------------------------
// 2=Single view (VA)
// -----------------------------
$get(Album)$tab(10)$get(SepCol)$get(Track)$get(Artist)$tab(10)$get(SepCol)
$get(Title)$tab(16)$get(Eol)
,
// -----------------------------
// 3=Album view (Single Artist)
// -----------------------------
$select($num(%tracknumber%,1),$get(Artist)$get(Fill1),$get(Date),$get(Album),$get(Album2))
$tab(8)$get(SepCol)$get(Track)$get(Title)
$select($num(%tracknumber%,1),$get(Fill2))
$tab(14)$get(Eol)
,
// -----------------------------
// 4=Album view (Various artists)
// -----------------------------
$select($num(%tracknumber%,1),$get(Album)$get(Fill1),$get(Date) $get(Album2))
$tab(8)$get(SepCol)$get(Track)$get(Artist)$get(SepAT)$get(Title)
$select($num(%tracknumber%,1),$get(Fill2))
$tab(14)$get(Eol)
,
// -----------------------------
// 5=Other
// -----------------------------

$get(Path)$if(%_isplaying%,$tab(6)$get(PlayMark)$tab(2),$tab(8))
$get(SepCol)$get(Title)$tab(14)
)
//end

burn out
Wow, that's an awsome string. I used upNorth's dynamic before, which I stil like although I have no clue why it only changed the playlist view and status bar view. On foobar looks that "dynamic" config. looks neat with its' tabs etc. Dunno why it won't look like that on my player. I sure missed s.th., ...well I tried to read my way through w/o success. Sorry for that dumb question, hope I'm not too way off in this place.
Thanx NEMO7538 for this great formatting string. Looks like this here.
http://www.motorhouse.org/%20Forum%20Post%...etc./hc_016.jpg
upNorth
@NEMO7538: You should share your string at the formatting strings web site to make it accessible to more people.

@burn out: I don't really understand what you're having trouble with. Could you post a screenshot maybe? I guess "dynamic" is a little over the top, because there is no good way to communicate all the settings to the users, without writing a readme that would be a mile long, and nobody would read that anyway. To be honest I should have written a better one, but I've just never done it, and people seem to enjoy the formatting anyway smile.gif
burn out
UpNorth, Dynamic is definately fun. No question about it. Communication is weak on my side as I write in a foreign language. What I was trying to say is, that,...ehm, well I was talking about this part of your player. Please view link below. Why does my player still look like the orig. foobar rather than here?

http://www.motorhouse.org/%20Forum%20Post%...etc./hc_017.jpg

Here's how my player looks like w. dynamic. The playlist seems to be all there I guess, less the top (How's that called anyway? Control panel?).
Thanx for your patience

http://www.motorhouse.org/%20Forum%20Post%...etc./hc_018.jpg
Zoominee
QUOTE(gizmo @ Feb 5 2004, 03:20 AM)
anybody know how to make "OST  (xxxx)  bla bla bla"  album like in "VA -  (xxxx) bla bla bla"  as various artist???? huh.gif

Have you had a look at the $replace function? it should work. You can find the list of functions with the link to "help" at the bottom of the setup page where you enter the format strings.
upNorth
QUOTE(gizmo @ Feb 5 2004, 05:20 AM)
anybody know how to make "OST  (xxxx)  bla bla bla"  album like in "VA -  (xxxx) bla bla bla"  as various artist???? huh.gif

Hi, if you have a look at the config area that my "dynamic" formattings starts with, you will find this:
CODE
//Recognise Various Artists albums (Start directory name with this indicator)
//Note: Already hardcoded: [includes: 'VARIOUS ARTISTS'], [starts with: 'VA - ']
$puts(Various-Artists_indicator,'V.A.')

If you change the last line to:
CODE
$puts(Various-Artists_indicator,'OST ')
it should do what you ask for.

If you don't want to use "dynamic", just trace the variable "Various-Artists_indicator" to the place in the code (line: 505) where it's used and see how it's done. For short it uses $substr(a,b,c)
NEMO7538
QUOTE
Wow, that's an awsome string. I used upNorth's dynamic before, which I stil like although I have no clue why it only changed the playlist view and status bar view. On foobar looks that "dynamic" config. looks neat with its' tabs etc. Dunno why it won't look like that on my player. I sure missed s.th., ...well I tried to read my way through w/o success. Sorry for that dumb question, hope I'm not too way off in this place.
Thanx NEMO7538 for this great formatting string. Looks like this here.
http://www.motorhouse.org/%20Forum%20Post%...etc./hc_016.jpg

As indicated before, for my playlist to work well :
1/ you should have your directories named as :
  • Artist - xxxxxxx (for albums of a single artist)
  • Album - xxxx (For "Various artists') <--- In fact any string provided it does not contain the artist
this is not the case in your screenshot (Keb'mo for instance is not appearing well because your directory does not contain Keb'Mo)

2/ Tracks should have a track # otherwise a very basic design is applied

3/ Use a # in the playlist name if the tracks are mixed from several albums in a playlist (Note that points 1/ and 2/ still apply in this case to ditinguish VA and set the content of colums accordingly : Artist-album-#-tiltle or Album-#-Artist-Title (if VA)

of course you can chage these rules by playing with the code
upNorth
QUOTE(burn out @ Feb 9 2004, 12:04 PM)

If you're talking about the thing that says "04 Fugazi-Burning 0:40" (in orange, green and white) it's simply the plugin foo_looks with an old 'look' (a 'look' is a skin for foo_looks) I made and never released.

From your screenshot I see that you can do a couple of things that IMHO will improve the appearance:
1) A one track symphony might look better if you add a SINGLETRACK tag to it and give it any value you like.
2) If you add a LASTTRACK tag (give it any value) to the last track of every album it looks just a little better smile.gif
burn out
Thanx guys for your feed back. I'll check out your advise and will see.
I'm currently facing a strange problem in foobar's "default user interface" section. For some spooky reason, changing the playlist text colour isn't working any more. Could my browser security settings be the reason for this behaviour? (Active X and scripting disabled.)
Oh well, you may LYAO but everything goes for a computer goofy like me in a situation like this LOL.
upNorth, I'm still drooling at those fancy tabs on your tool bar. What's the deal w. foo_looks? As far as I remember there was some concern that the looks would eat your CPU. That wouldn't do any good to the foobar name and to my 450 hz box as well. If that isn't really the case, I might try out one of those.

Oh, nearly forgot this one:
How can I save individual settings for each formatting string? Things like modified colours etc. It seems that the changes that I made, did affect the other formatting strings as well. Once I get one string look good for me, switching to an other one often only reveils a desastrous scenario. Did I get lost?
Sorry for my ramble
burn out
Thanx guys for your feed back. I'll check out your advise and will see.
I'm currently facing a strange problem in foobar's "default user interface" section. For some spooky reason, changing the playlist text colour isn't working any more. Could my browser security settings be the reason for this behaviour? (Active X and scripting disabled.)
Oh well, you may LYAO but everything goes for a computer goofy like me in a situation like this LOL.
upNorth, I'm still drooling at those fancy tabs on your tool bar. What's the deal w. foo_looks? As far as I remember there was some concern that the looks would eat your CPU. That wouldn't do any good to the foobar name and to my 450 hz box as well. If that isn't really the case, I might try out one of those.

Oh, nearly forgot this one:
How can I save individual settings for each formatting string? Things like modified colours etc. It seems that the changes that I made, did affect the other formatting strings as well. Once I get one string look good for me, switching to an other one often only reveils a desastrous scenario. Did I get lost?
Sorry for my ramble
burn out
Thanx guys for your feed back. I'll check out your advise and will see.
I'm currently facing a strange problem in foobar's "default user interface" section. For some spooky reason, changing the playlist text colour isn't working any more. Could my browser security settings be the reason for this behaviour? (Active X and scripting disabled.)
Oh well, you may LYAO but everything goes for a computer goofy like me in a situation like this LOL.
upNorth, I'm still drooling at those fancy tabs on your tool bar. What's the deal w. foo_looks? As far as I remember there was some concern that the looks would eat your CPU. That wouldn't do any good to the foobar name and to my 450 hz box as well. If that isn't really the case, I might try out one of those.

Oh, nearly forgot this one:
How can I save individual settings for each formatting string? Things like modified colours etc. It seems that the changes that I made, did affect the other formatting strings as well. Once I get one string look good for me, switching to an other one often only reveils a desastrous scenario. Did I get lost?
Sorry for my ramble
burn out
Sorry for the tripple post. Makes my hair on my neck stand up. Kinda spooky
Max
Hey guys!
I have a question
I want that my playlist shows nice Album Infos etc. But if i had a playlist with just Single i want that there writes the Artist and Title not the Track Number and stuff like that.
How can i realize that?
upNorth
QUOTE(Max @ Feb 12 2004, 06:40 PM)
Hey guys!
I have a question
I want that my playlist shows nice Album Infos etc. But if i had a playlist with just Single i want that there writes the Artist and Title not the Track Number and stuff like that.
How can i realize that?

Here is a simple example of how to do it by adding an indicator in the playlist/tab name:
CODE
$if($strstr(%_playlist_name%,-s-),
%artist% - %title%,
%artist% - %album% - #%tracknumber%. %title%
)
What this does is look for -s- somewhere in the name of the playlist. It's important to open it in a new tab as it is actually the tab name that is used.

I personally use a combination of this, looking for other indicators in directory names and a %SINGLETRACK% tag to handle single files.
nuhi
Here, check my new format newOrder

Just wanted to make a universal format, for albums and singles.
But for that to work you need to put singles in they own directory.
Mine is [dowloading], you can easily change that.

p.s. Some ideas for design i got from UpNorth's dynamic, but no code was copied
thanx UpNorth, you have some revolutionary ideas.

You can see how i solved the problem about displaying tracks which are not 01 02 ... numbered, but 1 2 ... or mixed, it's all in order.
And some other thing...if there is file without tags and only a title as a filename it extracts directory name and displays Artist and Album.

It's not really user frendly written code, let me know for any bugs and annoyances.
upNorth
QUOTE(nuhi @ Feb 12 2004, 11:52 PM)
p.s. Some ideas for design i got from UpNorth's dynamic, but no code was copied
thanx UpNorth, you have some revolutionary ideas.
Thanks alot! smile.gif

Taken from the readme of my "hybrid" formatting:
QUOTE
Thanks to Daelus, tama and nuhi for the "base" of my design smile.gif
So, thank you yourself. smile.gif I learned alot from you when I first started playing with formatting strings.

Btw: I like the look of your "newOrder" formatting.
nuhi
QUOTE(upNorth @ Feb 12 2004, 02:44 PM)
Taken from the readme of my "hybrid" formatting:
QUOTE
Thanks to Daelus, tama and nuhi for the "base" of my design smile.gif
So, thank you yourself. smile.gif I learned alot from you when I first started playing with formatting strings.

Ooo i see, that's so nice of you...well, you upgraded that which i thought that can't go any further...now it predicts tags from filenames, directories, I mean c'mon smile.gif

It's wonder what people manage to do with their imagination and no abillity to store temporary information of previous lines wink.gif
mazy
QUOTE(nuhi @ Feb 13 2004, 12:39 AM)
It's wonder what people manage to do with their imagination and no abillity to store temporary information of previous lines wink.gif

yes, tell me about it wink.gif ... seriously, even my own little string evolved quite a lot, although i haven't been updating it for a long time. i just love foobar ...
eric.cheminot
Hello,

I am playing with formatting strings since yesterday. One simle question: what is the "|A|" or "|AT|" that is (for most of the formatting strings I have re-used) displayed at the end of each line?

Thanks!

-ec
DotNoir
QUOTE(eric.cheminot @ Feb 18 2004, 12:31 PM)
Hello,

I am playing with formatting strings since yesterday. One simle question: what is the "|A|" or "|AT|" that is (for most of the formatting strings I have re-used) displayed  at the end of each line?

Thanks!

-ec

I'd guess it means that the files are replaygained and T would mean they have track gain and A that they have album gain...
jeffery_901
I made a status bar title format, which I thought was cool, cause it has a vis in it.

i didn't know where to post it, so i thought i'd try here
-sorry if it is the wrong place...

-enjoy

// BY CASSO
// I'm using .font:Franklin Gothic Medium .style:regular .size:13
// res 1280x960
// the vis uses the varible bitrate, so must be turned on in
// preferences-> input-Standard inputs
// check "real-time ..." and I set it to 2
// I use musepack @ quality 7, but you can use any varible bitrate file,
// but u may have to change thresholds in "// vis" section "$greater($get(db),30),..."
// "30" is 300 kbps, greater makes the bar & colour change to that lines specs

// feedback & questions at casso@postmark.net

// animated colour brackets as "colour left" & "colour right"

$puts(no,$right(%_time_elapsed%,1))

$puts(brak1a,'(' 0000FF'(')
$puts(brak1b,0000FF'( (')
$puts(brak1c,0000FF'(' '(')

$puts(brak2a,0000FF')' ')')
$puts(brak2b,0000FF') )')
$puts(brak2c,')' 0000FF')')

$puts(colour left,$if(
$strcmp($get(no),1),$get(brak1a),$if(
$strcmp($get(no),2),$get(brak1b),$if(
$strcmp($get(no),3),$get(brak1c),$if(
$strcmp($get(no),6),$get(brak1a),$if(
$strcmp($get(no),7),$get(brak1b),$if(
$strcmp($get(no),8),$get(brak1c),'( (')))))))

$puts(colour right,$if(
$strcmp($get(no),1),$get(brak2a),$if(
$strcmp($get(no),2),$get(brak2b),$if(
$strcmp($get(no),3),$get(brak2c),$if(
$strcmp($get(no),6),$get(brak2a),$if(
$strcmp($get(no),7),$get(brak2b),$if(
$strcmp($get(no),8),$get(brak2c),') )')))))))

// vis
$puts(db,$left(%__bitrate_dynamic%,2))

$if(
$greater($get(db),30),$and($puts(bit,FF5353),$puts(barL,||||||||||||||||||||),$puts(barR,||||||||||||||||||||)),$if(
$greater($get(db),26),$and($puts(bit,959500),$puts(barL,|||||||||||||||||),$puts(barR,|||||||||||||||||)),$if(
$greater($get(db),24),$and($puts(bit,009507),$puts(barL,|||||||||||||||),$puts(barR,|||||||||||||||)),$if(
$greater($get(db),22),$and($puts(bit,009577),$puts(barL,||||||||||||),$puts(barR,||||||||||||)),$if(
$greater($get(db),20),$and($puts(bit,008D95),$puts(barL,|||||||||),$puts(barR,|||||||||)),$if(
$greater($get(db),18),$and($puts(bit,006595),$puts(barL,||||||),$puts(barR,||||||)),$if(
$greater($get(db),16),$and($puts(bit,000095),$puts(barL,|||),$puts(barR,|||)),$if(
$greater($get(db),0),$and($puts(bit,000000)$puts(barL,||),$puts(barR,||)),))))))))


// display:

// shows audio file type



$puts(ext,$upper($if2($ext(%__referenced_file%),$ext(%_path%))))
$puts(codec,$if(%__codec%,$caps2(%__codec%),$get(ext)))
$if($strcmp($get(codec),),
$if($stricmp($left(%_path_raw%,7),'cdda://'),$puts(codec,CDDA),)
,)
' '$get(codec)' '

' @ '

// shows quality as either CD, Acceptable OR Shockin

$if(
$and($greater(%__bitrate%,180),$greater(%__samplerate%,44000)),
CD,
$if(
$and($greater(%__bitrate%,127),$greater(%__samplerate%,44000)),
Acceptable,
Shockin))

' Quality'

//Shows any missing info / samples

$if(%__replaygain_album_gain%,,' ! 'NO RG' ! ')

// vis part 1
$tab(1)
$transition('( '$get(barL),000000,$get(bit))

// shows if dolby 7.1, 5.1, stereo or mono
' '
$if($greater(%__channels%,7), $get(bit)Dolby 7.1 ,

$if($greater(%__channels%,5), $get(bit)Dolby 5.1 ,

$if($greater(%__channels%,1), $get(bit)stereo , $get(bit)mono )))
' '
// vis part 2
$transition($get(barR)' )',$get(bit),000000)

// shows " || --% played || Time Elapsed : --- || Time Left : --- || Total Time : --- || " at end of line

$tab(1)['|| '$left($muldiv(100,%_time_elapsed_seconds%,%_time_total_seconds%),2)'% played || Time Elapsed : '%_time_elapsed%' || Time Left : '%_time_remaining%' || Total Time : '%_time_total%' ||']
zepsongs
Does anyone know where I can get the lime font for windows? Thanks
upNorth
QUOTE(zepsongs @ Feb 26 2004, 06:52 PM)
Does anyone know where I can get the lime font for windows? Thanks

Download the font pack at http://www.desktopian.org/bb/
zepsongs
danke
bunta
Exactly where do i put the "padded separators". Everytime i do it, the lines are all discombobulated and it doesnt have a fixed separation. I want mine to look like this. What is the syntax for it where exactly do i place them??
user posted image
nuhi
If Deftones is an artist and White Pony is an album then you put "$tab(1)" inbetween.
You can put "$tab(2)" for greater width and so on.
bunta
Okay, that worked. But theres only one problem. There are a lot of blank spots under the artist column but i can see the artist under the artist column.. Why did this happen..? i know it has somehting to do with me removing the Unknown artist syntax from the original code. But is there somehting i can do so i can tell foobar to grab the artist from the song title column and locate it back on the artist column ????
nuhi
Sorry but I don't understand... Missing artist fields but you see them ?
Album from title field or filename ?
slicepizza
Can I change characters as time goes ( every second)?
picmixer
QUOTE(slicepizza @ Feb 28 2004, 05:13 PM)
Can I change characters as time goes ( every second)?

Yes you actually can by using %_time_elapsed%, or %_time_remaining%.

But it needs some rather complicated scripting.
upNorth
Actually %_time_elapsed% and %_time_remaining% doesn't seem to work in playlist anymore. I use %_time_elapsed% to scroll text and animate a marker in my formatting, but after I read your post I realised that that part of the code doesn't work with v.0.8
They both return '?' in playlist now if you add them to your formatting.

I just verified with a backup of v.0.7.7c, that it was still working back then.

@slicepizza: A few pages earlier in this thread I posted a script that makes text scroll. You can find it here.

Specs: foobar2000 v0.8, Windows XP SP1
picmixer
Hmh that is strange my animated now playing marker still seems to work for me in 0.8

Are you sure you've got all dynamic info enabled? Although I am pretty sure you do.
upNorth
You shouldn't be so sure about that...
You solved it, thanks. For some strange reason I was under the impression
that all that setting enabled, was dynamic bitrate display in status bar. I clearly states that it's more than that. Maybe that was the case the first time I saw it, I don't know, and it really doesn't matter as it works now. smile.gif
slicepizza
[QUOTE]@slicepizza: A few pages earlier in this thread I posted a script that makes text scroll. You can find it here.

Thanks upNorth,

another one,

"$if(%_isplaying%,[%title%] >>$select($add($mod(%_time_elapsed_seconds%,18),1),'>','>>','>>>','>>>>','>>>>>','>>>>>>','>>>>>>>'
,'>>>>>>>>','>>>>>>>>>','>>>>>>>>>>','>>>>>>>>>>>','>>>>>>>>>>>>'
,'>>>>>>>>>>>>>','>>>>>>>>>>>>>>','>>>>>>>>>>>>>>>','>>>>>>>>>>>>>>>>'
,'>>>>>>>>>>>>>>>>>','>>>>>>>>>>>>>>>>>>'),[%title%])"

Above script doesn't work in the playlist.
How can I make it work?
upNorth
Seems to work just fine here.
Are you sure you haven't done the same mistake as I did above (pointed out by picmixer). Just in case, make sure you have enabled: Preferences->Display->Show dynamic info...
slicepizza
Yeh!
Now it works well.
Thanks a lot, upNorth.
FooBaRaz
QUOTE(bunta @ Feb 26 2004, 09:59 PM)
Exactly where do i put the "padded separators". Everytime i do it, the lines are all discombobulated and it doesnt have a fixed separation. I want mine to look like this. What is the syntax for it where exactly do i place them??
user posted image

holy crap i need that string!!
Riku
I have a problem with my format string.

I'm trying to get the format and bitrate values to look like this:

___MP3[256]
___MP3[192]
__FLAC[1017]
___MPC[187]
___OGG[96]

and not like this:

___MP3[256]
___MP3[192]
___FLAC[1000]
___MPC[187]
___OGG[96]

I would like to have a straight line between the format and the bitrate, even if the bitrate is over 1000, under 100 or if the format name is over 3 letters long.

How do I implement this?
DotNoir
I see (guess) you're not using %__codec% because you have MPC instead of Musepack for example, so it's $ext(%_filename_ext%)?

then you might consider something like this (it's a bit messy, but does the trick, i think)
CODE

$puts(line,
$if($stricmp($add($len(%__bitrate%),$len($ext(%_filename_ext%))),8),_____,
$if($stricmp($add($len(%__bitrate%),$len($ext(%_filename_ext%))),7),______,
$if($stricmp($add($len(%__bitrate%),$len($ext(%_filename_ext%))),6),_______,))))
$get(line)


edit:
The $get line comes where you atm have the line, so it should "scale" to the length of the codec plus bitrate... Hmmm... of course there are extensions with only two letters... hmmm... well, adding a few lines with 5 and 4 should do the trick...
upNorth
In case DotNoir is right about the use of file extension instead of %__codec%, this line will to some extent do what you ask:
CODE
$repeat('_',$sub(6,$len($ext(%_filename_ext%))))$upper($ext(%_filename_ext%))'['%__bitrate%']'


In case you use something like this:
CODE
$if($stricmp(%__codec%,musepack),$puts(t_codec,'MPC'))

to show "MPC" instead of "Muspack" change the $ext(%_filename_ext%)) part to e.g. $get(t_codec) in my example.
DotNoir
QUOTE(upNorth @ Mar 3 2004, 12:49 AM)
In case DotNoir is right about the use of file extension instead of %__codec%, this line will to some extent do what you ask:
CODE
$repeat('_',$sub(6,$len($ext(%_filename_ext%))))$upper($ext(%_filename_ext%))'['%__bitrate%']'


In case you use something like this:
CODE
$if($stricmp(%__codec%,musepack),$puts(t_codec,'MPC'))

to show "MPC" instead of "Muspack" change the $ext(%_filename_ext%)) part to e.g. $get(t_codec) in my example.

You have to note that bitrates may have two to four charachters of length as well (I only assumed from 3 to four in the example, that's why I noted about that in the end)... That's what I first ignored... $repeat is a good way to do that tho, yes... Was (and still am) a bit sleepy so that didn't cross my mind...

edit: this should work in that case... Only thing what I (re-)noticed is that ext(%_filename_ext%) gives "CUE" when having image+cue... so it might be you're using something else than this anyways... but that's the basic structure how to do it...
CODE
$repeat('_',$sub(9,$add($len(%__bitrate%),$len($ext(%_filename_ext%)))))$upper($ext(%_filename_ext%))'['%__bitrate%']'


edit2: or did i understand that correctly? the right side should be aligned?
edit3: Yup, shouldn't think too much when tired, so the UpNorths code was exactly what he was looking for...
Riku
Thanks for the very nice and thorough replys.

I am now using this string:

CODE
$repeat('_ ',$sub(6,$len($ext(%_filename_ext%))))$upper($ext(%_filename_ext%))'['%__bitrate%']'


thanks UpNorth.
upNorth
np smile.gif
richard123
Many formatting strings do special processing for the first few tracks of an album. I have some albums in which I've deleted a few tracks. Is there any way to identify the first few tracks that actually exist?

For example, rather than doing something if %tracknumber% is 1, I'd do something to the lowest track number for that album that exists on my drive.
upNorth
@richard123: The simple answer is no. The reason is that the formatting string only "sees" one file at a time. Because of that it can not remember previous tracks nor have any knowledge of the next tracks.

A solution is to add e.g. a %faketracknr% tag. I use that particular tag in my "dynamic" formatting (IIRC anza use it too). What you need to do is add that tag with the value '1' to the first track you've got, '2' to the second and so on. I personally only make sure I add enough to cover the first four tracks.
richard123
thanks
lav-chan
Hm, alright, i have two (or possibly one, depending on how well the first is answered) questions. Um, probably n00b questions. Heh.


First question: I kind of get foobar's scripting language (or whatever you want to call it), but there are some parts i'm confused on. I can easily edit a script to my liking, given a little trial and error, but i'm not quite convinced that i understand how some of the things in the scripts work. I can see where things are done different, by comparison, but i don't understand how they get done what they get done.

Long story short, i'm unsure how 'album' (for lack of a better term) scripts work. Scripts like this one. That's what i'm using now. I've tried editing it (to do things like display the year below, rather than next to, the album title), but i've not had much luck, and i still don't get how the script formats it according to the album. (What is it going by in order to decide when it's got a full album, and thus when it puts the album information to the side like that?)

That's... probably a stupid question. But eh. -_-


Second question: The reason i'm curious is, i'm interested in making my formatting script work a little differently. Instead of displaying the artist, then the album and year, i want it to just display the basic album information at the top, and then the artist(s) next to the song. Here are my awesome Photoshop skills at work, to better explain. Is it possible/feasible/easy to do something like that in foobar?


Er, also, i suppose that first link counts as 'my' format string. But it's just a slightly modified string from the 'foobar2000 formatting' site, heh.
Silverbolt
Hey, Lav :]

QUOTE(Lav @ Mar 5 2004, 09:42 PM)
(or whatever you want to call it)

"TAGZ", I believe (though I've seen various forms of capitalization)

QUOTE
i don't understand how they get done what they get done.

Long story short, i'm unsure how 'album' (for lack of a better term) scripts work. ...and i still don't get how the script formats it according to the album. (What is it going by in order to decide when it's got a full album, and thus when it puts the album information to the side like that?)

That is basically entirely up to the script writer. For some people, album mode only requires a few fields (%album% and %tracknumber%, for example), while others may require complete tags; I've also seen one which based it's album mode decision on the existence of %__replaygain_album_gain%. Others might use album mode by default unless 'single mode' is explicitly set by certain strings/symbols ('[S]', '-S-', etc.) in the playlist name. Also a note that it might not always be %tracknumber% (i.e. the %faketracknr% upNorth uses, as well as various forms of tracknumber guessing in the absence of %tracknumber%)

QUOTE
Second question: The reason i'm curious is, i'm interested in making my formatting script work a little differently. Instead of displaying the artist, then the album and year, i want it to just display the basic album information at the top, and then the artist(s) next to the song. Here are my awesome Photoshop skills at work, to better explain. Is it possible/feasible/easy to do something like that in foobar?

Not that I know of (at least not automatically). You could make it look similar to that, however, if you sacrificed every first track's line of info (useless, I know >.>). A different direction would be to have specially tagged 'divider' files, but this would be a huge hassle (1 divider file per album). Those divider files would probably have to have a special tag field (%divider%, %header%, or whatever you could think of) and have your script detect it and display the album information to your liking.

Edit:
QUOTE
I've tried editing it (to do things like display the year below, rather than next to, the album title), but i've not had much luck, and i still don't get how the script formats it according to the album.

It's usually based entirely on the tracknumber. In psuedo code, you'd have 'if %tracknumber% == 3, display %date%'. In tagz, it'd probably look something like:
CODE
$if($strcmp($num(%tracknumber%,1),3),'('%date%')')

I'm not familiar with that script, so it might use $select() to select what line of code to use as formatting instead of individual $strcmp()s.

Hope that helps. Take care :p
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.