<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.hydrogenaudio.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chiwou</id>
	<title>Hydrogenaudio Knowledgebase - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.hydrogenaudio.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chiwou"/>
	<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Special:Contributions/Chiwou"/>
	<updated>2026-04-29T17:06:27Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Title_Formatting_Reference&amp;diff=19775</id>
		<title>Foobar2000:Title Formatting Reference</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Title_Formatting_Reference&amp;diff=19775"/>
		<updated>2009-10-08T16:21:10Z</updated>

		<summary type="html">&lt;p&gt;Chiwou: /* $char(x) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{fb2k}}&lt;br /&gt;
This article contains information about built-in titleformatting functions and field references with special meaning. References to documentation about fields and function which can only be used in specific components or which are provided by specific components can be found at the end of this article.&lt;br /&gt;
&lt;br /&gt;
A field reference is a field name enclosed in percent signs, for example &#039;&#039;%artist%&#039;&#039;. A function call starts with a dollar sign, followed by the function name and the parameter list. A parameter list can either be empty - denoted as &#039;&#039;()&#039;&#039; - or contain one or more parameters separated by commata, for example &#039;&#039;$abbr(%artist%)&#039;&#039;. Note that there must be no whitespace between the dollar sign and the function name, or the function name and the opening parenthesis of the parameter list.&lt;br /&gt;
&lt;br /&gt;
Please see [[Foobar2000:Title Formatting Introduction|Title Formatting Introduction]] for a presentation of titleformat syntax in general. For details of the query syntax, which uses these fields, see: [[Foobar2000:Query_syntax|Query Syntax]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Field remappings =&lt;br /&gt;
&lt;br /&gt;
Some of the fields accessible through &#039;&#039;%name%&#039;&#039; are remapped to other values to make writing titleformat scripts more convenient.&lt;br /&gt;
&lt;br /&gt;
== Metadata ==&lt;br /&gt;
&lt;br /&gt;
=== %album artist% ===&lt;br /&gt;
Name of the artist of the album specified track belongs to. Checks following metadata fields, in this order: &amp;quot;album artist&amp;quot;, &amp;quot;artist&amp;quot;, &amp;quot;composer&amp;quot;, &amp;quot;performer&amp;quot;. The difference between this and &#039;&#039;%artist%&#039;&#039; is that &#039;&#039;%album artist%&#039;&#039; is intended for use where consistent value across entire album is needed even when per-track artists values vary.&lt;br /&gt;
&lt;br /&gt;
=== %album% ===&lt;br /&gt;
Name of the album specified track belongs to. Checks following metadata fields, in this order: &amp;quot;album&amp;quot;, &amp;quot;venue&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== %artist% ===&lt;br /&gt;
Name of the artist of the track. Checks following metadata fields, in this order: &amp;quot;artist&amp;quot;, &amp;quot;album artist&amp;quot;, &amp;quot;composer&amp;quot;, &amp;quot;performer&amp;quot;. For a SHOUTcast stream which contains metadata, it is the StreamTitle up to the first &amp;quot;-&amp;quot; character.&lt;br /&gt;
&lt;br /&gt;
=== %discnumber% ===&lt;br /&gt;
Index of disc specified track belongs to, within the album. Available only when &amp;quot;discnumber&amp;quot;/&amp;quot;disc&amp;quot; field is present in track’s metadata.&lt;br /&gt;
&lt;br /&gt;
=== %track artist% ===&lt;br /&gt;
Name of the artist of the track; present only if &#039;&#039;%album artist%&#039;&#039; is different than &#039;&#039;%artist%&#039;&#039; for specific track. Intended for use together with &#039;&#039;%album artist%&#039;&#039;, to indicate track-specific artist info, e.g. &amp;quot;%album artist% - %title%[ &#039;//&#039; %track artist%]&amp;quot;. In this case, the last part will be displayed only when track-specific artist info is present.&lt;br /&gt;
&lt;br /&gt;
=== %title% ===&lt;br /&gt;
Title of the track. If &amp;quot;title&amp;quot; metadata field is missing, file name is used instead. For a SHOUTcast stream which contains metadata, it is the StreamTitle after the first &amp;quot;-&amp;quot; character.&lt;br /&gt;
&lt;br /&gt;
=== %tracknumber% ===&lt;br /&gt;
Two-digit index of specified track within the album. Available only when &amp;quot;tracknumber&amp;quot; field is present in track’s metadata.&lt;br /&gt;
&lt;br /&gt;
== Technical information ==&lt;br /&gt;
&lt;br /&gt;
=== %bitrate% ===&lt;br /&gt;
Bitrate of the track; includes dynamic VBR bitrate display for currently played track.&lt;br /&gt;
&lt;br /&gt;
=== %channels% ===&lt;br /&gt;
Number of channels in the track (mono/stereo/etc). Returns the number of channels in text form; returns &amp;quot;mono&amp;quot; and &amp;quot;stereo&amp;quot; instead of &amp;quot;1&amp;quot; and &amp;quot;2&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== %filesize% ===&lt;br /&gt;
Defined as &#039;&#039;%_filesize%&#039;&#039;. Returns the filesize in bytes.&lt;br /&gt;
&lt;br /&gt;
=== %filesize_natural% ===&lt;br /&gt;
Size of the file, automatically formatted in appropriate units such as megabytes or kilobytes. &lt;br /&gt;
&lt;br /&gt;
=== %samplerate% ===&lt;br /&gt;
Sample rate of the track, in Hz.&lt;br /&gt;
&lt;br /&gt;
=== %codec% ===&lt;br /&gt;
Name of codec used to encode the track. If exact codec name is not available, file extension is used.&lt;br /&gt;
&lt;br /&gt;
== Special fields ==&lt;br /&gt;
&lt;br /&gt;
= Control flow =&lt;br /&gt;
&lt;br /&gt;
The functions in this section can be used to conditionally execute statements.&lt;br /&gt;
&lt;br /&gt;
=== [...] (conditional section) ===&lt;br /&gt;
&lt;br /&gt;
Evaluates the expression between &#039;&#039;[&#039;&#039; and &#039;&#039;]&#039;&#039;. If it has the truth value &#039;&#039;true&#039;&#039;, its string value and the truth value &#039;&#039;true&#039;&#039; are returned. Otherwise an empty string and &#039;&#039;false&#039;&#039; are returned.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;[%artist%]&#039;&#039; returns the value of the artist tag, if it exists. Otherwise it returns nothing, when &#039;&#039;artist&#039;&#039; would return &amp;quot;?&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== $if(cond,then) ===&lt;br /&gt;
&lt;br /&gt;
If &#039;&#039;cond&#039;&#039; evaluates to &#039;&#039;true&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise, &#039;&#039;false&#039;&#039; is returned.&lt;br /&gt;
&lt;br /&gt;
=== $if(cond,then,else) ===&lt;br /&gt;
&lt;br /&gt;
If &#039;&#039;cond&#039;&#039; evaluates to &#039;&#039;true&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise, the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $if2(a,else) ===&lt;br /&gt;
&lt;br /&gt;
Like &#039;&#039;$if(a,a,else)&#039;&#039; except that &#039;&#039;a&#039;&#039; is only evaluated once.&lt;br /&gt;
&lt;br /&gt;
=== $if3(a1,a2,...,aN,else) ===&lt;br /&gt;
&lt;br /&gt;
Evaluates arguments &#039;&#039;a1&#039;&#039; ... &#039;&#039;aN&#039;&#039;, until one is found that evaluates to &#039;&#039;true&#039;&#039;. If that happens, its value is returned. Otherwise the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $ifequal(n1,n2,then,else) ===&lt;br /&gt;
&lt;br /&gt;
Compares the integer numbers &#039;&#039;n1&#039;&#039; and &#039;&#039;n2&#039;&#039;, if &#039;&#039;n1&#039;&#039; is equal to &#039;&#039;n2&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $ifgreater(n1,n2,then,else) ===&lt;br /&gt;
&lt;br /&gt;
Compares the integer numbers &#039;&#039;n1&#039;&#039; and &#039;&#039;n2&#039;&#039;, if &#039;&#039;n1&#039;&#039; is greater than &#039;&#039;n2&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $iflonger(s1,s2,then,else) ===&lt;br /&gt;
&lt;br /&gt;
Compares the length of the strings &#039;&#039;s1&#039;&#039; and &#039;&#039;s2&#039;&#039;, if &#039;&#039;s1&#039;&#039; is longer than &#039;&#039;s2&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $select(n,a1,...,aN) ===&lt;br /&gt;
&lt;br /&gt;
If the value of &#039;&#039;n&#039;&#039; is between 1 and N, &#039;&#039;an&#039;&#039; is evaluated and its value returned. Otherwise &#039;&#039;false&#039;&#039; is returned.&lt;br /&gt;
&lt;br /&gt;
= Arithmetic functions =&lt;br /&gt;
&lt;br /&gt;
The functions in this section can be used to perform arithmetic on integer numbers. A string will be automatically converted to a number and vice versa. The conversion to a number uses the longest prefix of the string, that can be interpreted as number. Leading whitespace is ignored.&lt;br /&gt;
&lt;br /&gt;
Example: &amp;quot;c3po&amp;quot; → 0, &amp;quot; -12&amp;quot; → -12, but &amp;quot;- 12&amp;quot; → 0&lt;br /&gt;
&lt;br /&gt;
=== $add(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Adds &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$add(a,b,...)&#039;&#039; is the same as &#039;&#039;$add($add(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $div(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Divides &#039;&#039;a&#039;&#039; through &#039;&#039;b&#039;&#039;. If &#039;&#039;b&#039;&#039; evaluates to zero, it returns &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$div(a,b,...)&#039;&#039; is the same as &#039;&#039;$div($div(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $greater(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Returns true, if &#039;&#039;a&#039;&#039; is greater than &#039;&#039;b&#039;&#039;, otherwise false.&lt;br /&gt;
&lt;br /&gt;
=== $max(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Returns the maximum of &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$max(a,b,...)&#039;&#039; is the same as &#039;&#039;$max($max(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $min(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Returns the minimum of &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$min(a,b,...)&#039;&#039; is the same as &#039;&#039;$min($min(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $mod(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Computes the remainder of dividing &#039;&#039;a&#039;&#039; through &#039;&#039;b&#039;&#039;. The result has the same sign as &#039;&#039;a&#039;&#039;. If &#039;&#039;b&#039;&#039; evaluates to zero, the result is &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$mod(a,b,...)&#039;&#039; is the same as &#039;&#039;$mod($mod(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $mul(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Multiplies &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$mul(a,b,...)&#039;&#039; is the same as &#039;&#039;$mul($mul(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $muldiv(a,b,c) ===&lt;br /&gt;
&lt;br /&gt;
Multiplies &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;, then divides by &#039;&#039;c&#039;&#039;. The result is rounded to the nearest integer.&lt;br /&gt;
&lt;br /&gt;
=== $rand() ===&lt;br /&gt;
&lt;br /&gt;
Generates a random number in the range from 0 to 2&amp;lt;sup&amp;gt;32&amp;lt;/sup&amp;gt;-1. Available only in sort-related contexts, such as the &#039;&#039;Edit → Sort → Sort by ...&#039;&#039; menu command.&lt;br /&gt;
&lt;br /&gt;
=== $sub(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Subtracts &#039;&#039;b&#039;&#039; from &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$sub(a,b,...)&#039;&#039; is the same as &#039;&#039;$sub($sub(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= Boolean functions =&lt;br /&gt;
&lt;br /&gt;
The functions in this section can be used to work with truth values (&#039;&#039;true&#039;&#039; and &#039;&#039;false&#039;&#039;), which have no explicit representation in titleformat scripts. They do not return a string or number value. You can use them for more complex conditions with &#039;&#039;$if&#039;&#039; and related functions.&lt;br /&gt;
&lt;br /&gt;
=== $and(...) ===&lt;br /&gt;
&lt;br /&gt;
Logical And of an arbitrary number of arguments. Returns &#039;&#039;true&#039;&#039;, if and only if all arguments evaluate to &#039;&#039;true&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Special case: &#039;&#039;$and(x,y)&#039;&#039; is &#039;&#039;true&#039;&#039;, if both &#039;&#039;x&#039;&#039; and &#039;&#039;y&#039;&#039; are &#039;&#039;true&#039;&#039;. Otherwise it is &#039;&#039;false&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $or(...) ===&lt;br /&gt;
&lt;br /&gt;
Logical Or of an arbitrary number of arguments. Returns &#039;&#039;true&#039;&#039;, if at least one argument evaluates to &#039;&#039;true&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Special case: &#039;&#039;$or(x,y)&#039;&#039; is &#039;&#039;true&#039;&#039;, if &#039;&#039;x&#039;&#039; or &#039;&#039;y&#039;&#039; is &#039;&#039;true&#039;&#039;, or if both are &#039;&#039;true&#039;&#039;. Otherwise it is &#039;&#039;false&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $not(x) ===&lt;br /&gt;
&lt;br /&gt;
Logical Not. Returns &#039;&#039;false&#039;&#039;, if &#039;&#039;x&#039;&#039; is &#039;&#039;true&#039;&#039;, otherwise it returns &#039;&#039;true&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $xor(...) ===&lt;br /&gt;
&lt;br /&gt;
Logical Exclusive-or of an arbitrary number of arguments. Returns &#039;&#039;true&#039;&#039;, if an odd number of arguments evaluate to &#039;&#039;true&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Special case: &#039;&#039;$xor(x,y)&#039;&#039; is &#039;&#039;true&#039;&#039;, if one of &#039;&#039;x&#039;&#039; and &#039;&#039;y&#039;&#039; is &#039;&#039;true&#039;&#039;, but not both. Otherwise it is &#039;&#039;false&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= Color functions =&lt;br /&gt;
&lt;br /&gt;
=== $blend(color1,color2,part,total) ===&lt;br /&gt;
&lt;br /&gt;
Returns a color that is a blend between &#039;&#039;color1&#039;&#039; and &#039;&#039;color2&#039;&#039;. If &#039;&#039;part&#039;&#039; is smaller than or equal to zero, &#039;&#039;color1&#039;&#039; is returned. If &#039;&#039;part&#039;&#039; is greater than or equal to &#039;&#039;total&#039;&#039;, &#039;&#039;color2&#039;&#039; is returned. Otherwise a blended color is returned that is &#039;&#039;part&#039;&#039; parts &#039;&#039;color1&#039;&#039; and &#039;&#039;total&#039;&#039;-&#039;&#039;part&#039;&#039; parts &#039;&#039;color2&#039;&#039;. The blending is performed in the RGB color space.&lt;br /&gt;
&lt;br /&gt;
=== $hsl() ===&lt;br /&gt;
&lt;br /&gt;
Resets the text color to the default color.&lt;br /&gt;
&lt;br /&gt;
=== $hsl(h,s,l) ===&lt;br /&gt;
&lt;br /&gt;
Sets the color for text in the HSL color space. &#039;&#039;h&#039;&#039;, &#039;&#039;s&#039;&#039; and &#039;&#039;l&#039;&#039; are the hue, saturation, and lightness of the color for unselected text. The color for selected text is set to the inverse color.&lt;br /&gt;
The ranges of &#039;&#039;h&#039;&#039;, &#039;&#039;s&#039;&#039;, and &#039;&#039;l&#039;&#039; are from 0 to 240; the function is designed to interpret those values in the same way as the standard Windows color dialog.&lt;br /&gt;
&lt;br /&gt;
=== $hsl(h1,s1,l1,h2,s2,l2) ===&lt;br /&gt;
&lt;br /&gt;
Sets the color for text in the HSL color space. &#039;&#039;h1&#039;&#039;, &#039;&#039;s1&#039;&#039; and &#039;&#039;l1&#039;&#039; are the hue, saturation, and lightness of the color for unselected text. &#039;&#039;h2&#039;&#039;, &#039;&#039;s2&#039;&#039; and &#039;&#039;l2&#039;&#039; are the hue, saturation, and lightness of the color for selected text.&lt;br /&gt;
&lt;br /&gt;
=== $rgb() ===&lt;br /&gt;
&lt;br /&gt;
Resets the text color to the default color.&lt;br /&gt;
&lt;br /&gt;
=== $rgb(r,g,b) ===&lt;br /&gt;
&lt;br /&gt;
Sets the color for text. &#039;&#039;r&#039;&#039;, &#039;&#039;g&#039;&#039; and &#039;&#039;b&#039;&#039; are the red, green and blue component of the color for unselected text. The color for selected text is set to the inverse color.&lt;br /&gt;
&lt;br /&gt;
=== $rgb(r1,g1,b1,r2,g2,b2) ===&lt;br /&gt;
&lt;br /&gt;
Sets the color for text. &#039;&#039;r1&#039;&#039;, &#039;&#039;g1&#039;&#039; and &#039;&#039;b1&#039;&#039; are the red, green and blue component of the color for unselected text. &#039;&#039;r2&#039;&#039;, &#039;&#039;g2&#039;&#039; and &#039;&#039;b2&#039;&#039; are the red, green and blue component of the color for selected text.&lt;br /&gt;
&lt;br /&gt;
=== $transition(string,color1,color2) ===&lt;br /&gt;
&lt;br /&gt;
Inserts color codes into &#039;&#039;string&#039;&#039;, so that the first character has &#039;&#039;color1&#039;&#039;, the last character has &#039;&#039;color2&#039;&#039;, and intermediate characters have blended colors. The blending is performed in the RGB color space. Note that color codes are additional characters that will also be counted by string manipulation functions. For example, if you need to truncate a string, you should do this before applying &#039;&#039;$transition&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= Now playing info =&lt;br /&gt;
The following functions and fields are usable for scripts used with the currently playing item, for example the status bar, the main window title and the copy command script.&lt;br /&gt;
&lt;br /&gt;
== Special fields ==&lt;br /&gt;
&lt;br /&gt;
=== %playback_time% ===&lt;br /&gt;
Returns the elapsed time formatted as [HH:]MM:SS.&lt;br /&gt;
&lt;br /&gt;
=== %playback_time_seconds% ===&lt;br /&gt;
Returns elapsed time in seconds.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_elapsed%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %playback_time_remaining% ===&lt;br /&gt;
Returns remaining time until track ends, formatted as [HH:]MM:SS.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_remaining%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %playback_time_remaining_seconds% ===&lt;br /&gt;
Returns remaining time in seconds.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_remaining_seconds%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %length% ===&lt;br /&gt;
Returns the length of the track formatted as hours, minutes, and seconds.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_total%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %length_ex% ===&lt;br /&gt;
Returns the length of the track formatted as hours, minutes, seconds, and milliseconds.&lt;br /&gt;
&lt;br /&gt;
=== %length_seconds% ===&lt;br /&gt;
Returns the length of the track in seconds.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_total_seconds%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %length_seconds_fp% ===&lt;br /&gt;
Returns the length of the track in seconds as floating point number.&lt;br /&gt;
&lt;br /&gt;
=== %length_samples% ===&lt;br /&gt;
Returns the length of the track in samples.&lt;br /&gt;
&lt;br /&gt;
= Playlist info =&lt;br /&gt;
The following functions and fields are usable for playlist display formatting (eg. per-column title formatting patterns).&lt;br /&gt;
&lt;br /&gt;
== Special fields ==&lt;br /&gt;
&lt;br /&gt;
=== %isplaying% ===&lt;br /&gt;
&lt;br /&gt;
Returns &amp;quot;1&amp;quot; if file is currently playing and empty string otherwise.&lt;br /&gt;
&lt;br /&gt;
=== %ispaused% ===&lt;br /&gt;
&lt;br /&gt;
Returns &amp;quot;1&amp;quot; if playback is paused, empty string otherwise.&lt;br /&gt;
&lt;br /&gt;
=== %list_index% ===&lt;br /&gt;
&lt;br /&gt;
Returns a zero-padded playlist index of specified item. The first item is at index 1.&lt;br /&gt;
&lt;br /&gt;
=== %list_total% ===&lt;br /&gt;
&lt;br /&gt;
Returns number of items in the playlist.&lt;br /&gt;
&lt;br /&gt;
=== %queue_index% ===&lt;br /&gt;
&lt;br /&gt;
Index of the specified item in the playback queue; available in playlist only. If the item has been queued multiple times, %queue_index% evaluates to the first index.&lt;br /&gt;
&lt;br /&gt;
=== %queue_indexes% ===&lt;br /&gt;
&lt;br /&gt;
List of indexes of the specified item in the playback queue; available in playlist only. Same as %queue_index% unless the item has been queued more than once.&lt;br /&gt;
&lt;br /&gt;
=== %queue_total% ===&lt;br /&gt;
&lt;br /&gt;
Total amount of tracks in playback queue. Available only for queued tracks, for technical reasons. &lt;br /&gt;
&lt;br /&gt;
= String functions =&lt;br /&gt;
&lt;br /&gt;
The functions in this section can be used to manipulate character strings.&lt;br /&gt;
&lt;br /&gt;
=== $abbr(x) ===&lt;br /&gt;
&lt;br /&gt;
Returns abbreviation of &#039;&#039;x&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $abbr(x,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns abbreviation of &#039;&#039;x&#039;&#039;, if &#039;&#039;x&#039;&#039; is longer than &#039;&#039;len&#039;&#039; characters, otherwise returns &#039;&#039;x&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $ansi(x) ===&lt;br /&gt;
&lt;br /&gt;
Converts &#039;&#039;x&#039;&#039; to system codepage and back. Any characters that are not present in the system codepage will be removed / replaced. Useful for mass-renaming files to ensure compatibility with non-unicode-capable software.&lt;br /&gt;
&lt;br /&gt;
=== $ascii(x) ===&lt;br /&gt;
&lt;br /&gt;
Converts &#039;&#039;x&#039;&#039; to ASCII. Any characters that are not present in ASCII will be removed / replaced.&lt;br /&gt;
&lt;br /&gt;
=== $caps(x) ===&lt;br /&gt;
&lt;br /&gt;
Converts first letter in every word of x to uppercase, and all other letters to lowercase.&lt;br /&gt;
&lt;br /&gt;
=== $caps2(x) ===&lt;br /&gt;
&lt;br /&gt;
Converts first letter in every word of x to uppercase, and leaves all other letters as they are.&lt;br /&gt;
&lt;br /&gt;
=== $char(x) ===&lt;br /&gt;
&lt;br /&gt;
Inserts Unicode character with code &#039;&#039;x&#039;&#039;. You can search for characters and find the matching decimal number on this [http://www.fileformat.info/info/unicode/char/search.htm site].&lt;br /&gt;
&lt;br /&gt;
=== $crc32(a) ===&lt;br /&gt;
&lt;br /&gt;
Computes the CRC32 of the string &#039;&#039;a&#039;&#039; as a number. Intended for use in coloring scripts.&lt;br /&gt;
&lt;br /&gt;
Example: $rgb($mod($crc32(%album%),256),128,128)&lt;br /&gt;
&lt;br /&gt;
=== $crlf() ===&lt;br /&gt;
&lt;br /&gt;
Inserts end-of-line marker (carriage return, line feed). Can be used to generate multiple lines in the output, for example for the tooltip of the system  notification area (&amp;quot;systray&amp;quot;) icon.&lt;br /&gt;
&lt;br /&gt;
=== $cut(a,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns first &#039;&#039;len&#039;&#039; characters on the left of &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $directory(x) ===&lt;br /&gt;
&lt;br /&gt;
Extracts directory name from the file path &#039;&#039;x&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $directory(x,n) ===&lt;br /&gt;
&lt;br /&gt;
Extracts directory name from the file path &#039;&#039;x&#039;&#039;; goes up by &#039;&#039;n&#039;&#039; levels.&lt;br /&gt;
&lt;br /&gt;
=== $directory_path(x) ===&lt;br /&gt;
&lt;br /&gt;
Extracts directory path from the file path &#039;&#039;x&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $ext(x) ===&lt;br /&gt;
&lt;br /&gt;
Extracts file extension from &#039;&#039;x&#039;&#039; which must be a file name or path.&lt;br /&gt;
&lt;br /&gt;
=== $filename(x) ===&lt;br /&gt;
&lt;br /&gt;
Extracts file name from full path.&lt;br /&gt;
&lt;br /&gt;
=== $fix_eol(x) ===&lt;br /&gt;
&lt;br /&gt;
If &#039;&#039;x&#039;&#039; contains an end-of-line marker (CR-LF), the end-of-line marker and all text to the right of it is replaced by &amp;quot; (...)&amp;quot;. Otherwise &#039;&#039;x&#039;&#039; is returned unaltered.&lt;br /&gt;
&lt;br /&gt;
=== $fix_eol(x,indicator) ===&lt;br /&gt;
&lt;br /&gt;
If &#039;&#039;x&#039;&#039; contains an end-of-line marker (CR-LF), the end-of-line marker and all text to the right of it is replaced by &#039;&#039;indicator&#039;&#039;. Otherwise &#039;&#039;x&#039;&#039; is returned unaltered.&lt;br /&gt;
&lt;br /&gt;
=== $hex(n) ===&lt;br /&gt;
&lt;br /&gt;
Formats the integer number &#039;&#039;n&#039;&#039; in hexadecimal notation.&lt;br /&gt;
&lt;br /&gt;
=== $hex(n,len) ===&lt;br /&gt;
&lt;br /&gt;
Formats the integer number &#039;&#039;n&#039;&#039; in hexadecimal notation with &#039;&#039;len&#039;&#039; digits. Pads with zeros from the left if necessary.&lt;br /&gt;
&lt;br /&gt;
=== $insert(a,b,n) ===&lt;br /&gt;
&lt;br /&gt;
Inserts &#039;&#039;b&#039;&#039; into &#039;&#039;a&#039;&#039; after &#039;&#039;n&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $left(a,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns the first &#039;&#039;len&#039;&#039; characters from the left of &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $len(a) ===&lt;br /&gt;
&lt;br /&gt;
Returns length of string &#039;&#039;a&#039;&#039; in characters.&lt;br /&gt;
&lt;br /&gt;
=== $len2(a) ===&lt;br /&gt;
&lt;br /&gt;
Returns length of string x in characters, respecting double-width character rules (double-width characters will be counted as two).&lt;br /&gt;
&lt;br /&gt;
=== $longer(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Returns &#039;&#039;true&#039;&#039;, if string &#039;&#039;a&#039;&#039; is longer than string &#039;&#039;b&#039;&#039;, false otherwise.&lt;br /&gt;
&lt;br /&gt;
=== $lower(a) ===&lt;br /&gt;
&lt;br /&gt;
Converts &#039;&#039;a&#039;&#039; to lowercase.&lt;br /&gt;
&lt;br /&gt;
=== $longest(a,...) ===&lt;br /&gt;
&lt;br /&gt;
Returns the longest of its arguments. Can be used with an arbitrary number of strings.&lt;br /&gt;
&lt;br /&gt;
=== $num(n,len) ===&lt;br /&gt;
&lt;br /&gt;
Formats the integer number &#039;&#039;n&#039;&#039; in decimal notation with &#039;&#039;len&#039;&#039; digits. Pads with zeros from the left if necessary.&lt;br /&gt;
&lt;br /&gt;
=== $pad(x,len) ===&lt;br /&gt;
&lt;br /&gt;
Pads &#039;&#039;x&#039;&#039; from the left with spaces to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $pad_right(x,y) ===&lt;br /&gt;
&lt;br /&gt;
Pads &#039;&#039;x&#039;&#039; from the right with spaces to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $pad(x,len,char) ===&lt;br /&gt;
&lt;br /&gt;
Pads &#039;&#039;x&#039;&#039; from the left with &#039;&#039;char&#039;&#039; to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $pad_right(x,len,char) ===&lt;br /&gt;
&lt;br /&gt;
Pads &#039;&#039;x&#039;&#039; from the right with &#039;&#039;char&#039;&#039; to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $padcut(x,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns first &#039;&#039;len&#039;&#039; characters from the left of &#039;&#039;x&#039;&#039;, if &#039;&#039;x&#039;&#039; is longer than &#039;&#039;len&#039;&#039; characters. Otherwise pads &#039;&#039;x&#039;&#039; from the left with spaces to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $padcut_right(x,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns first &#039;&#039;len&#039;&#039; characters from the left of &#039;&#039;x&#039;&#039;, if &#039;&#039;x&#039;&#039; is longer than &#039;&#039;len&#039;&#039; characters. Otherwise pads &#039;&#039;x&#039;&#039; from the right with spaces to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $progress(pos,range,len,a,b) ===&lt;br /&gt;
&lt;br /&gt;
Creates a progress bar: &#039;&#039;pos&#039;&#039; contains position, &#039;&#039;range&#039;&#039; contains range, &#039;&#039;len&#039;&#039; progress bar length in characters, &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039; are characters to build progress bar with.&lt;br /&gt;
&lt;br /&gt;
Example:&#039;&#039;$progress(%_time_elapsed_seconds%, %_time_total_seconds%, 20,&#039;#&#039;,&#039;=&#039;)&#039;&#039; produces &amp;quot;====#===============&amp;quot;, the # character is moving with playback position.&lt;br /&gt;
&lt;br /&gt;
=== $progress2(pos,range,len,a,b) ===&lt;br /&gt;
&lt;br /&gt;
Creates a progress bar: &#039;&#039;pos&#039;&#039; contains position, &#039;&#039;range&#039;&#039; contains range, &#039;&#039;len&#039;&#039; progress bar length in characters, &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039; are characters to build progress bar with. Produces different appearance than &#039;&#039;$progress&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $repeat(a,n) ===&lt;br /&gt;
&lt;br /&gt;
Returns &#039;&#039;n&#039;&#039; copies of &#039;&#039;a&#039;&#039;. Note that &#039;&#039;a&#039;&#039; is evaluated once before its value is used, so &#039;&#039;$repeat&#039;&#039; cannot be used for loops.&lt;br /&gt;
&lt;br /&gt;
=== $replace(a,b,c) ===&lt;br /&gt;
&lt;br /&gt;
Replaces all occurrences of string &#039;&#039;b&#039;&#039; in string &#039;&#039;a&#039;&#039; with string &#039;&#039;c&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can also be used with an arbitrary number of arguments. Note that &#039;&#039;$replace(a,b1,c1,b2,c2)&#039;&#039; is generally not the same as &#039;&#039;$replace($replace(a,b1,c1),b2,c2)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$replace(ab,a,b,b,c)&#039;&#039; → &amp;quot;bc&amp;quot;, &#039;&#039;$replace($replace(ab,a,b),b,c)&#039;&#039; → &amp;quot;cc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $right(a,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns the first &#039;&#039;len&#039;&#039; characters from the right of &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $roman(n) ===&lt;br /&gt;
&lt;br /&gt;
Formats the integer number &#039;&#039;n&#039;&#039; in roman notation.&lt;br /&gt;
&lt;br /&gt;
=== $rot13() ===&lt;br /&gt;
&lt;br /&gt;
Performs [http://en.wikipedia.org/wiki/ROT13 ROT13] transformation to given string.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$rot13(&#039;foobar2000&#039;)&#039;&#039; → &amp;quot;sbbone2000&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== $shortest ===&lt;br /&gt;
&lt;br /&gt;
Returns the shortest of its arguments. Can be used with an arbitrary number of strings.&lt;br /&gt;
&lt;br /&gt;
=== $strchr(s,c) ===&lt;br /&gt;
&lt;br /&gt;
Finds first occurence of character &#039;&#039;c&#039;&#039; in string &#039;&#039;s&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$strchr(abca,a)&#039;&#039; → 1&lt;br /&gt;
&lt;br /&gt;
=== $strrchr(s,c) ===&lt;br /&gt;
&lt;br /&gt;
Finds last occurence of character &#039;&#039;c&#039;&#039; in string &#039;&#039;s&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$strrchr(abca,a)&#039;&#039; → 4&lt;br /&gt;
&lt;br /&gt;
=== $strstr(s1,s2) ===&lt;br /&gt;
&lt;br /&gt;
Finds first occurence of string &#039;&#039;s2&#039;&#039; in string &#039;&#039;s1&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $strcmp(s1,s2) ===&lt;br /&gt;
&lt;br /&gt;
Performs a case-sensitive comparison of the strings &#039;&#039;s1&#039;&#039; and &#039;&#039;s2&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $stricmp(s1,s2) ===&lt;br /&gt;
&lt;br /&gt;
Performs a case-insensitive comparison of the strings &#039;&#039;s1&#039;&#039; and &#039;&#039;s2&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $substr(s,m,n) ===&lt;br /&gt;
&lt;br /&gt;
Returns substring of string &#039;&#039;s&#039;&#039;, starting from &#039;&#039;m&#039;&#039;-th character and ending at &#039;&#039;n&#039;&#039;-th character.&lt;br /&gt;
&lt;br /&gt;
=== $stripprefix(x) ===&lt;br /&gt;
&lt;br /&gt;
Removes &#039;&#039;A&#039;&#039; and &#039;&#039;The&#039;&#039; prefixes from x. &lt;br /&gt;
&lt;br /&gt;
=== $stripprefix(x,prefix1,prefix2,...) ===&lt;br /&gt;
&lt;br /&gt;
Removes the specified prefixes from x. &lt;br /&gt;
&lt;br /&gt;
=== $swapprefix(x) ===&lt;br /&gt;
&lt;br /&gt;
Moves &#039;&#039;A&#039;&#039; and &#039;&#039;The&#039;&#039; prefixes to the end of x. &lt;br /&gt;
&lt;br /&gt;
=== $swapprefix(x,prefix1,prefix2,...) ===&lt;br /&gt;
&lt;br /&gt;
Moves the specified prefixes to the end of x. &lt;br /&gt;
&lt;br /&gt;
=== $trim(s) ===&lt;br /&gt;
&lt;br /&gt;
Removes leading and trailing spaces from string &#039;&#039;s&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $tab() ===&lt;br /&gt;
&lt;br /&gt;
Inserts one tabulator character.&lt;br /&gt;
&lt;br /&gt;
=== $tab(n) ===&lt;br /&gt;
&lt;br /&gt;
Inserts &#039;&#039;n&#039;&#039; tabulator characters.&lt;br /&gt;
&lt;br /&gt;
=== $upper(s) ===&lt;br /&gt;
&lt;br /&gt;
Converts string &#039;&#039;s&#039;&#039; to uppercase.&lt;br /&gt;
&lt;br /&gt;
= Track info =&lt;br /&gt;
&lt;br /&gt;
The functions and fields in this section can be used to access information about tracks. See [[Foobar2000:0.9 Track Info Panel Mod (foo uie trackinfo mod)|this]] for more info about Track info mod.&lt;br /&gt;
&lt;br /&gt;
== Metadata ==&lt;br /&gt;
&lt;br /&gt;
=== $meta(name) ===&lt;br /&gt;
Returns value of tag called &#039;&#039;name&#039;&#039;. If multiple values of that tag exist, they are concatenated with &amp;quot;, &amp;quot; as separator.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta(artist)&#039;&#039; → &amp;quot;He, She, It&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $meta(name,n) ===&lt;br /&gt;
Returns value of &#039;&#039;n&#039;&#039;-th (0,1,2 and so on) tag called &#039;&#039;name&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta(artist,1)&#039;&#039; → &amp;quot;She&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $meta_sep(name,sep) ===&lt;br /&gt;
Returns value of tag called &#039;&#039;name&#039;&#039;. If multiple values of that tag exist, they are concatenated with &#039;&#039;sep&#039;&#039; as separator.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta_sep(artist,&#039; + &#039;)&#039;&#039; → &amp;quot;He + She + It&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $meta_sep(name,sep,lastsep) ===&lt;br /&gt;
Returns value of tag called &#039;&#039;name&#039;&#039;. If multiple values of that tag exist, they are concatenated with &#039;&#039;sep&#039;&#039; as separator between all but the last two values which are concatenated with &#039;&#039;lastsep&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta_sep(artist,&#039;, &#039;,&#039;, and &#039;)&#039;&#039; → &amp;quot;He, She, and It&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $meta_test(...) === &lt;br /&gt;
Returns &#039;&#039;1&#039;&#039;, if all given tags exist, &#039;&#039;undefined&#039;&#039; otherwise.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta_test(artist,title)&#039;&#039; → true&lt;br /&gt;
&lt;br /&gt;
=== $meta_num(name) ===&lt;br /&gt;
Returns the number of values for the tag called &#039;&#039;name&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta_num(artist)&#039;&#039; → 3&lt;br /&gt;
&lt;br /&gt;
== Technical information ==&lt;br /&gt;
&lt;br /&gt;
=== $info(name) ===&lt;br /&gt;
Returns value of technical information field called &#039;&#039;name&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
For convenience, the &#039;&#039;&#039;%__name%&#039;&#039;&#039; alias is also available.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$info(channels)&#039;&#039; → 2&lt;br /&gt;
&lt;br /&gt;
Here is an &#039;&#039;&#039;informative&#039;&#039;&#039; list of recognized fields. Some of these depend on the media file type being queried.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! field name&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; style=&amp;quot;background-color:#CCF&amp;quot;|&#039;&#039;&#039;General&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|codec&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Codec&#039;&#039;&#039; (&#039;&#039;e.g.&#039;&#039; MP3)&lt;br /&gt;
|-&lt;br /&gt;
|codec_profile&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Codec Profile&#039;&#039;&#039; (&#039;&#039;e.g.&#039;&#039; CBR)&lt;br /&gt;
|-&lt;br /&gt;
|samplerate&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Sample Rate&#039;&#039;&#039;, in hertz (&#039;&#039;e.g.&#039;&#039; 44100)&lt;br /&gt;
|-&lt;br /&gt;
|bitrate&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Bitrate&#039;&#039;&#039;, in kilobits per second (&#039;&#039;e.g.&#039;&#039; 320)&lt;br /&gt;
|-&lt;br /&gt;
|tool&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Tool&#039;&#039;&#039; used to produce the file, possibly guessed (&#039;&#039;e.g.&#039;&#039; LAME3.97)&lt;br /&gt;
|-&lt;br /&gt;
|encoding&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Encoding&#039;&#039;&#039; lossiness (&#039;&#039;e.g.&#039;&#039; lossy)&lt;br /&gt;
|-&lt;br /&gt;
|channels&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Channels&#039;&#039;&#039; count (&#039;&#039;e.g.&#039;&#039; 2 &amp;lt;nowiki&amp;gt;[for stereo]&amp;lt;/nowiki&amp;gt;)&lt;br /&gt;
|-&lt;br /&gt;
|bitspersample&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Bits Per Sample&#039;&#039;&#039; (&#039;&#039;e.g.&#039;&#039; 16)&lt;br /&gt;
|-&lt;br /&gt;
|tagtype&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Tag Type&#039;&#039;&#039;, comma-separated list of tag formats (&#039;&#039;e.g.&#039;&#039; id3v2|apev2)&lt;br /&gt;
|-&lt;br /&gt;
|cue_embedded&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Embedded Cuesheet&#039;&#039;&#039; presence (&#039;&#039;e.g.&#039;&#039; no &amp;lt;nowiki&amp;gt;[may be empty!]&amp;lt;/nowiki&amp;gt;)&lt;br /&gt;
|-&lt;br /&gt;
|md5&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Audio MD5&#039;&#039;&#039; hash, if container defines it (&#039;&#039;e.g.&#039;&#039; 1E24A910D91EF09A8CF403C9B6963961)&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; style=&amp;quot;background-color:#CCF&amp;quot;|&#039;&#039;&#039;Other&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|ENC_DELAY&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|LAME proprietary MP3 &#039;&#039;&#039;enc_delay&#039;&#039;&#039; value (&#039;&#039;e.g.&#039;&#039; 576)&lt;br /&gt;
|-&lt;br /&gt;
|ENC_PADDING&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|LAME proprietary MP3 &#039;&#039;&#039;enc_padding&#039;&#039;&#039; value (&#039;&#039;e.g.&#039;&#039; 1536)&lt;br /&gt;
|-&lt;br /&gt;
|MP3_ACCURATE_LENGTH&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;mp3_accurate_length&#039;&#039;&#039; supported (LAME proprietary header)? (&#039;&#039;e.g.&#039;&#039; yes)&lt;br /&gt;
|-&lt;br /&gt;
|MP3_STEREO_MODE&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|Stereo mode used in MP3 file (&#039;&#039;e.g.&#039;&#039; mono, stereo, joint stereo, etc.)&lt;br /&gt;
|-&lt;br /&gt;
|VERSION&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Version&#039;&#039;&#039; of tool (&#039;&#039;e.g.&#039;&#039; 3.99)&lt;br /&gt;
|-&lt;br /&gt;
|FLAGS&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Flags&#039;&#039;&#039; of tool (&#039;&#039;e.g.&#039;&#039; 22)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== $channels() === &lt;br /&gt;
Returns number of channels in text format.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$channels()&#039;&#039; → &amp;quot;stereo&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== %replaygain_album_gain% ===&lt;br /&gt;
&lt;br /&gt;
Returns ReplayGain album gain value.&lt;br /&gt;
&lt;br /&gt;
=== %replaygain_album_peak% ===&lt;br /&gt;
&lt;br /&gt;
Returns ReplayGain album peak value.&lt;br /&gt;
&lt;br /&gt;
=== %replaygain_track_gain% ===&lt;br /&gt;
&lt;br /&gt;
Returns ReplayGain track gain value.&lt;br /&gt;
&lt;br /&gt;
=== %replaygain_track_peak% ===&lt;br /&gt;
&lt;br /&gt;
Returns ReplayGain track peak value.&lt;br /&gt;
&lt;br /&gt;
== Special fields ==&lt;br /&gt;
&lt;br /&gt;
==== %filename% ====&lt;br /&gt;
&lt;br /&gt;
Returns the filename without directory and extension.&lt;br /&gt;
&lt;br /&gt;
==== %filename_ext% ====&lt;br /&gt;
&lt;br /&gt;
Returns the filename with extension, but without the directory.&lt;br /&gt;
&lt;br /&gt;
==== %directoryname% ====&lt;br /&gt;
&lt;br /&gt;
Returns the name of the parent directory only, not the complete path.&lt;br /&gt;
&lt;br /&gt;
==== %last_modified% ====&lt;br /&gt;
&lt;br /&gt;
Returns the date and time the file was last modified. Eg: &#039;&#039;2005-12-22 00:04:10&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== %path% ====&lt;br /&gt;
&lt;br /&gt;
Returns the path.&lt;br /&gt;
&lt;br /&gt;
==== %_path_raw% ====&lt;br /&gt;
&lt;br /&gt;
Returns the path as URL including the protocol scheme.&lt;br /&gt;
&lt;br /&gt;
==== %subsong% ====&lt;br /&gt;
&lt;br /&gt;
Returns the subsong index. The subsong index is used to distuingish multiple tracks in a single file, for example for cue sheets, tracker modules and various container formats.&lt;br /&gt;
&lt;br /&gt;
==== %_foobar2000_version% ====&lt;br /&gt;
Returns a string representing the version of foobar2000.&lt;br /&gt;
&lt;br /&gt;
= Time/Date Functions =&lt;br /&gt;
&lt;br /&gt;
These functions are used to manipulate time/date strings, notably (but not limited to), [[Foobar2000:Titleformat_Playback_Statistics|those gathered]] by the [[Foobar2000:Components_0.9/Playback_Statistics_(foo_playcount)|Playback Statistics component]].&lt;br /&gt;
&lt;br /&gt;
=== $year(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the year part (formatted as four digits) from a time/date string.&lt;br /&gt;
&lt;br /&gt;
=== $month(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the month part (formatted as two digits) from a time/date string.&lt;br /&gt;
&lt;br /&gt;
=== $day_of_month(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the day of month part (formatted as two digits) from a time/date string.&lt;br /&gt;
&lt;br /&gt;
=== $date(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the date part (formatted as YYYY-MM-DD) from a time/date string.&lt;br /&gt;
&lt;br /&gt;
=== $time(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the time part (formatted as HH:MM:SS or HH:MM) from a date/time string.&lt;br /&gt;
&lt;br /&gt;
= Variable operations =&lt;br /&gt;
&lt;br /&gt;
Variables can be used to store strings and number. They cannot store truth values. They are best used to store intermediate results that you need multiple times. Variable names are not case-sensitive.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! code&lt;br /&gt;
! output&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;pre&amp;gt;$put(foo,bar)$char(10)&lt;br /&gt;
$get(foo)$char(10)&lt;br /&gt;
$get(Foo)$char(10)&lt;br /&gt;
$puts(foo,2000)$char(10)&lt;br /&gt;
$get(foo)$char(10)&amp;lt;/pre&amp;gt;&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot; |&amp;lt;pre&amp;gt;bar&lt;br /&gt;
bar&lt;br /&gt;
bar&lt;br /&gt;
&lt;br /&gt;
2000&amp;lt;/pre&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
=== $get(name) ===&lt;br /&gt;
&lt;br /&gt;
Returns the value that was last stored in the variable &#039;&#039;name&#039;&#039;, if the variable was not defined (yet), it returns nothing. The truth value returned by &#039;&#039;$get&#039;&#039; indicates if the variable &#039;&#039;name&#039;&#039; was defined&lt;br /&gt;
&lt;br /&gt;
=== $put(name,value) ===&lt;br /&gt;
&lt;br /&gt;
Stores &#039;&#039;value&#039;&#039; in the variable &#039;&#039;name&#039;&#039; and returns &#039;&#039;value&#039;&#039; unaltered&lt;br /&gt;
&lt;br /&gt;
=== $puts(name,value) ===&lt;br /&gt;
&lt;br /&gt;
Stores &#039;&#039;value&#039;&#039; in the variable &#039;&#039;name&#039;&#039; and returns nothing&lt;br /&gt;
&lt;br /&gt;
= Component-provided fields and functions on tracks =&lt;br /&gt;
&lt;br /&gt;
This section lists components that provide additional fields and functions that are useable in the context of any track.&lt;br /&gt;
&lt;br /&gt;
== Playback statistics ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.foobar2000.org/components/view/foo_playcount Playback statistics homepage]&lt;br /&gt;
* [[Foobar2000:Titleformat Playback Statistics|Playback statistics titleformat reference]]&lt;br /&gt;
&lt;br /&gt;
= Component-specific fields and functions =&lt;br /&gt;
&lt;br /&gt;
This section lists components that provide additional fields and functions that are only usable in the context of the particular component.&lt;br /&gt;
&lt;br /&gt;
== Album list ==&lt;br /&gt;
&lt;br /&gt;
* [[Foobar2000:Preferences:Album List|Preferences: Album List]]&lt;br /&gt;
&lt;br /&gt;
== Columns UI ==&lt;br /&gt;
&lt;br /&gt;
* [http://music.morbo.org/wiki/columns_ui:manual Columns UI homepage]&lt;br /&gt;
* [http://music.morbo.org/wiki/columns_ui:config:global_variables Global variables reference]&lt;br /&gt;
* [http://music.morbo.org/wiki/columns_ui:config:colour_string Playlist colors reference]&lt;br /&gt;
* [http://music.morbo.org/wiki/columns_ui:config:playlist_switcher_titleformatting Playlist switcher reference]&lt;br /&gt;
&lt;br /&gt;
= Additional Reading =&lt;br /&gt;
&lt;br /&gt;
* [[Foobar2000:Titleformat_Introduction|Introduction to titleformat scripts]]&lt;br /&gt;
* &#039;&#039;&#039;titleformat_help.html&#039;&#039;&#039; in your Foobar2000 directory (ie C:\Program Files\foobar2000\titleformat_help.html) file:///C:/Program%20Files/foobar2000/titleformat_help.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:foobar2000 Guides|Titleformat Reference]]&lt;/div&gt;</summary>
		<author><name>Chiwou</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Title_Formatting_Reference&amp;diff=19774</id>
		<title>Foobar2000:Title Formatting Reference</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Title_Formatting_Reference&amp;diff=19774"/>
		<updated>2009-10-08T16:20:42Z</updated>

		<summary type="html">&lt;p&gt;Chiwou: /* $char(x) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{fb2k}}&lt;br /&gt;
This article contains information about built-in titleformatting functions and field references with special meaning. References to documentation about fields and function which can only be used in specific components or which are provided by specific components can be found at the end of this article.&lt;br /&gt;
&lt;br /&gt;
A field reference is a field name enclosed in percent signs, for example &#039;&#039;%artist%&#039;&#039;. A function call starts with a dollar sign, followed by the function name and the parameter list. A parameter list can either be empty - denoted as &#039;&#039;()&#039;&#039; - or contain one or more parameters separated by commata, for example &#039;&#039;$abbr(%artist%)&#039;&#039;. Note that there must be no whitespace between the dollar sign and the function name, or the function name and the opening parenthesis of the parameter list.&lt;br /&gt;
&lt;br /&gt;
Please see [[Foobar2000:Title Formatting Introduction|Title Formatting Introduction]] for a presentation of titleformat syntax in general. For details of the query syntax, which uses these fields, see: [[Foobar2000:Query_syntax|Query Syntax]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Field remappings =&lt;br /&gt;
&lt;br /&gt;
Some of the fields accessible through &#039;&#039;%name%&#039;&#039; are remapped to other values to make writing titleformat scripts more convenient.&lt;br /&gt;
&lt;br /&gt;
== Metadata ==&lt;br /&gt;
&lt;br /&gt;
=== %album artist% ===&lt;br /&gt;
Name of the artist of the album specified track belongs to. Checks following metadata fields, in this order: &amp;quot;album artist&amp;quot;, &amp;quot;artist&amp;quot;, &amp;quot;composer&amp;quot;, &amp;quot;performer&amp;quot;. The difference between this and &#039;&#039;%artist%&#039;&#039; is that &#039;&#039;%album artist%&#039;&#039; is intended for use where consistent value across entire album is needed even when per-track artists values vary.&lt;br /&gt;
&lt;br /&gt;
=== %album% ===&lt;br /&gt;
Name of the album specified track belongs to. Checks following metadata fields, in this order: &amp;quot;album&amp;quot;, &amp;quot;venue&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== %artist% ===&lt;br /&gt;
Name of the artist of the track. Checks following metadata fields, in this order: &amp;quot;artist&amp;quot;, &amp;quot;album artist&amp;quot;, &amp;quot;composer&amp;quot;, &amp;quot;performer&amp;quot;. For a SHOUTcast stream which contains metadata, it is the StreamTitle up to the first &amp;quot;-&amp;quot; character.&lt;br /&gt;
&lt;br /&gt;
=== %discnumber% ===&lt;br /&gt;
Index of disc specified track belongs to, within the album. Available only when &amp;quot;discnumber&amp;quot;/&amp;quot;disc&amp;quot; field is present in track’s metadata.&lt;br /&gt;
&lt;br /&gt;
=== %track artist% ===&lt;br /&gt;
Name of the artist of the track; present only if &#039;&#039;%album artist%&#039;&#039; is different than &#039;&#039;%artist%&#039;&#039; for specific track. Intended for use together with &#039;&#039;%album artist%&#039;&#039;, to indicate track-specific artist info, e.g. &amp;quot;%album artist% - %title%[ &#039;//&#039; %track artist%]&amp;quot;. In this case, the last part will be displayed only when track-specific artist info is present.&lt;br /&gt;
&lt;br /&gt;
=== %title% ===&lt;br /&gt;
Title of the track. If &amp;quot;title&amp;quot; metadata field is missing, file name is used instead. For a SHOUTcast stream which contains metadata, it is the StreamTitle after the first &amp;quot;-&amp;quot; character.&lt;br /&gt;
&lt;br /&gt;
=== %tracknumber% ===&lt;br /&gt;
Two-digit index of specified track within the album. Available only when &amp;quot;tracknumber&amp;quot; field is present in track’s metadata.&lt;br /&gt;
&lt;br /&gt;
== Technical information ==&lt;br /&gt;
&lt;br /&gt;
=== %bitrate% ===&lt;br /&gt;
Bitrate of the track; includes dynamic VBR bitrate display for currently played track.&lt;br /&gt;
&lt;br /&gt;
=== %channels% ===&lt;br /&gt;
Number of channels in the track (mono/stereo/etc). Returns the number of channels in text form; returns &amp;quot;mono&amp;quot; and &amp;quot;stereo&amp;quot; instead of &amp;quot;1&amp;quot; and &amp;quot;2&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== %filesize% ===&lt;br /&gt;
Defined as &#039;&#039;%_filesize%&#039;&#039;. Returns the filesize in bytes.&lt;br /&gt;
&lt;br /&gt;
=== %filesize_natural% ===&lt;br /&gt;
Size of the file, automatically formatted in appropriate units such as megabytes or kilobytes. &lt;br /&gt;
&lt;br /&gt;
=== %samplerate% ===&lt;br /&gt;
Sample rate of the track, in Hz.&lt;br /&gt;
&lt;br /&gt;
=== %codec% ===&lt;br /&gt;
Name of codec used to encode the track. If exact codec name is not available, file extension is used.&lt;br /&gt;
&lt;br /&gt;
== Special fields ==&lt;br /&gt;
&lt;br /&gt;
= Control flow =&lt;br /&gt;
&lt;br /&gt;
The functions in this section can be used to conditionally execute statements.&lt;br /&gt;
&lt;br /&gt;
=== [...] (conditional section) ===&lt;br /&gt;
&lt;br /&gt;
Evaluates the expression between &#039;&#039;[&#039;&#039; and &#039;&#039;]&#039;&#039;. If it has the truth value &#039;&#039;true&#039;&#039;, its string value and the truth value &#039;&#039;true&#039;&#039; are returned. Otherwise an empty string and &#039;&#039;false&#039;&#039; are returned.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;[%artist%]&#039;&#039; returns the value of the artist tag, if it exists. Otherwise it returns nothing, when &#039;&#039;artist&#039;&#039; would return &amp;quot;?&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== $if(cond,then) ===&lt;br /&gt;
&lt;br /&gt;
If &#039;&#039;cond&#039;&#039; evaluates to &#039;&#039;true&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise, &#039;&#039;false&#039;&#039; is returned.&lt;br /&gt;
&lt;br /&gt;
=== $if(cond,then,else) ===&lt;br /&gt;
&lt;br /&gt;
If &#039;&#039;cond&#039;&#039; evaluates to &#039;&#039;true&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise, the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $if2(a,else) ===&lt;br /&gt;
&lt;br /&gt;
Like &#039;&#039;$if(a,a,else)&#039;&#039; except that &#039;&#039;a&#039;&#039; is only evaluated once.&lt;br /&gt;
&lt;br /&gt;
=== $if3(a1,a2,...,aN,else) ===&lt;br /&gt;
&lt;br /&gt;
Evaluates arguments &#039;&#039;a1&#039;&#039; ... &#039;&#039;aN&#039;&#039;, until one is found that evaluates to &#039;&#039;true&#039;&#039;. If that happens, its value is returned. Otherwise the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $ifequal(n1,n2,then,else) ===&lt;br /&gt;
&lt;br /&gt;
Compares the integer numbers &#039;&#039;n1&#039;&#039; and &#039;&#039;n2&#039;&#039;, if &#039;&#039;n1&#039;&#039; is equal to &#039;&#039;n2&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $ifgreater(n1,n2,then,else) ===&lt;br /&gt;
&lt;br /&gt;
Compares the integer numbers &#039;&#039;n1&#039;&#039; and &#039;&#039;n2&#039;&#039;, if &#039;&#039;n1&#039;&#039; is greater than &#039;&#039;n2&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $iflonger(s1,s2,then,else) ===&lt;br /&gt;
&lt;br /&gt;
Compares the length of the strings &#039;&#039;s1&#039;&#039; and &#039;&#039;s2&#039;&#039;, if &#039;&#039;s1&#039;&#039; is longer than &#039;&#039;s2&#039;&#039;, the &#039;&#039;then&#039;&#039; part is evaluated and its value returned. Otherwise the &#039;&#039;else&#039;&#039; part is evaluated and its value returned.&lt;br /&gt;
&lt;br /&gt;
=== $select(n,a1,...,aN) ===&lt;br /&gt;
&lt;br /&gt;
If the value of &#039;&#039;n&#039;&#039; is between 1 and N, &#039;&#039;an&#039;&#039; is evaluated and its value returned. Otherwise &#039;&#039;false&#039;&#039; is returned.&lt;br /&gt;
&lt;br /&gt;
= Arithmetic functions =&lt;br /&gt;
&lt;br /&gt;
The functions in this section can be used to perform arithmetic on integer numbers. A string will be automatically converted to a number and vice versa. The conversion to a number uses the longest prefix of the string, that can be interpreted as number. Leading whitespace is ignored.&lt;br /&gt;
&lt;br /&gt;
Example: &amp;quot;c3po&amp;quot; → 0, &amp;quot; -12&amp;quot; → -12, but &amp;quot;- 12&amp;quot; → 0&lt;br /&gt;
&lt;br /&gt;
=== $add(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Adds &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$add(a,b,...)&#039;&#039; is the same as &#039;&#039;$add($add(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $div(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Divides &#039;&#039;a&#039;&#039; through &#039;&#039;b&#039;&#039;. If &#039;&#039;b&#039;&#039; evaluates to zero, it returns &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$div(a,b,...)&#039;&#039; is the same as &#039;&#039;$div($div(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $greater(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Returns true, if &#039;&#039;a&#039;&#039; is greater than &#039;&#039;b&#039;&#039;, otherwise false.&lt;br /&gt;
&lt;br /&gt;
=== $max(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Returns the maximum of &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$max(a,b,...)&#039;&#039; is the same as &#039;&#039;$max($max(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $min(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Returns the minimum of &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$min(a,b,...)&#039;&#039; is the same as &#039;&#039;$min($min(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $mod(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Computes the remainder of dividing &#039;&#039;a&#039;&#039; through &#039;&#039;b&#039;&#039;. The result has the same sign as &#039;&#039;a&#039;&#039;. If &#039;&#039;b&#039;&#039; evaluates to zero, the result is &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$mod(a,b,...)&#039;&#039; is the same as &#039;&#039;$mod($mod(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $mul(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Multiplies &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$mul(a,b,...)&#039;&#039; is the same as &#039;&#039;$mul($mul(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $muldiv(a,b,c) ===&lt;br /&gt;
&lt;br /&gt;
Multiplies &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039;, then divides by &#039;&#039;c&#039;&#039;. The result is rounded to the nearest integer.&lt;br /&gt;
&lt;br /&gt;
=== $rand() ===&lt;br /&gt;
&lt;br /&gt;
Generates a random number in the range from 0 to 2&amp;lt;sup&amp;gt;32&amp;lt;/sup&amp;gt;-1. Available only in sort-related contexts, such as the &#039;&#039;Edit → Sort → Sort by ...&#039;&#039; menu command.&lt;br /&gt;
&lt;br /&gt;
=== $sub(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Subtracts &#039;&#039;b&#039;&#039; from &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can be used with an arbitrary number of arguments. &#039;&#039;$sub(a,b,...)&#039;&#039; is the same as &#039;&#039;$sub($sub(a,b),...)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= Boolean functions =&lt;br /&gt;
&lt;br /&gt;
The functions in this section can be used to work with truth values (&#039;&#039;true&#039;&#039; and &#039;&#039;false&#039;&#039;), which have no explicit representation in titleformat scripts. They do not return a string or number value. You can use them for more complex conditions with &#039;&#039;$if&#039;&#039; and related functions.&lt;br /&gt;
&lt;br /&gt;
=== $and(...) ===&lt;br /&gt;
&lt;br /&gt;
Logical And of an arbitrary number of arguments. Returns &#039;&#039;true&#039;&#039;, if and only if all arguments evaluate to &#039;&#039;true&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Special case: &#039;&#039;$and(x,y)&#039;&#039; is &#039;&#039;true&#039;&#039;, if both &#039;&#039;x&#039;&#039; and &#039;&#039;y&#039;&#039; are &#039;&#039;true&#039;&#039;. Otherwise it is &#039;&#039;false&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $or(...) ===&lt;br /&gt;
&lt;br /&gt;
Logical Or of an arbitrary number of arguments. Returns &#039;&#039;true&#039;&#039;, if at least one argument evaluates to &#039;&#039;true&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Special case: &#039;&#039;$or(x,y)&#039;&#039; is &#039;&#039;true&#039;&#039;, if &#039;&#039;x&#039;&#039; or &#039;&#039;y&#039;&#039; is &#039;&#039;true&#039;&#039;, or if both are &#039;&#039;true&#039;&#039;. Otherwise it is &#039;&#039;false&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $not(x) ===&lt;br /&gt;
&lt;br /&gt;
Logical Not. Returns &#039;&#039;false&#039;&#039;, if &#039;&#039;x&#039;&#039; is &#039;&#039;true&#039;&#039;, otherwise it returns &#039;&#039;true&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $xor(...) ===&lt;br /&gt;
&lt;br /&gt;
Logical Exclusive-or of an arbitrary number of arguments. Returns &#039;&#039;true&#039;&#039;, if an odd number of arguments evaluate to &#039;&#039;true&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Special case: &#039;&#039;$xor(x,y)&#039;&#039; is &#039;&#039;true&#039;&#039;, if one of &#039;&#039;x&#039;&#039; and &#039;&#039;y&#039;&#039; is &#039;&#039;true&#039;&#039;, but not both. Otherwise it is &#039;&#039;false&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= Color functions =&lt;br /&gt;
&lt;br /&gt;
=== $blend(color1,color2,part,total) ===&lt;br /&gt;
&lt;br /&gt;
Returns a color that is a blend between &#039;&#039;color1&#039;&#039; and &#039;&#039;color2&#039;&#039;. If &#039;&#039;part&#039;&#039; is smaller than or equal to zero, &#039;&#039;color1&#039;&#039; is returned. If &#039;&#039;part&#039;&#039; is greater than or equal to &#039;&#039;total&#039;&#039;, &#039;&#039;color2&#039;&#039; is returned. Otherwise a blended color is returned that is &#039;&#039;part&#039;&#039; parts &#039;&#039;color1&#039;&#039; and &#039;&#039;total&#039;&#039;-&#039;&#039;part&#039;&#039; parts &#039;&#039;color2&#039;&#039;. The blending is performed in the RGB color space.&lt;br /&gt;
&lt;br /&gt;
=== $hsl() ===&lt;br /&gt;
&lt;br /&gt;
Resets the text color to the default color.&lt;br /&gt;
&lt;br /&gt;
=== $hsl(h,s,l) ===&lt;br /&gt;
&lt;br /&gt;
Sets the color for text in the HSL color space. &#039;&#039;h&#039;&#039;, &#039;&#039;s&#039;&#039; and &#039;&#039;l&#039;&#039; are the hue, saturation, and lightness of the color for unselected text. The color for selected text is set to the inverse color.&lt;br /&gt;
The ranges of &#039;&#039;h&#039;&#039;, &#039;&#039;s&#039;&#039;, and &#039;&#039;l&#039;&#039; are from 0 to 240; the function is designed to interpret those values in the same way as the standard Windows color dialog.&lt;br /&gt;
&lt;br /&gt;
=== $hsl(h1,s1,l1,h2,s2,l2) ===&lt;br /&gt;
&lt;br /&gt;
Sets the color for text in the HSL color space. &#039;&#039;h1&#039;&#039;, &#039;&#039;s1&#039;&#039; and &#039;&#039;l1&#039;&#039; are the hue, saturation, and lightness of the color for unselected text. &#039;&#039;h2&#039;&#039;, &#039;&#039;s2&#039;&#039; and &#039;&#039;l2&#039;&#039; are the hue, saturation, and lightness of the color for selected text.&lt;br /&gt;
&lt;br /&gt;
=== $rgb() ===&lt;br /&gt;
&lt;br /&gt;
Resets the text color to the default color.&lt;br /&gt;
&lt;br /&gt;
=== $rgb(r,g,b) ===&lt;br /&gt;
&lt;br /&gt;
Sets the color for text. &#039;&#039;r&#039;&#039;, &#039;&#039;g&#039;&#039; and &#039;&#039;b&#039;&#039; are the red, green and blue component of the color for unselected text. The color for selected text is set to the inverse color.&lt;br /&gt;
&lt;br /&gt;
=== $rgb(r1,g1,b1,r2,g2,b2) ===&lt;br /&gt;
&lt;br /&gt;
Sets the color for text. &#039;&#039;r1&#039;&#039;, &#039;&#039;g1&#039;&#039; and &#039;&#039;b1&#039;&#039; are the red, green and blue component of the color for unselected text. &#039;&#039;r2&#039;&#039;, &#039;&#039;g2&#039;&#039; and &#039;&#039;b2&#039;&#039; are the red, green and blue component of the color for selected text.&lt;br /&gt;
&lt;br /&gt;
=== $transition(string,color1,color2) ===&lt;br /&gt;
&lt;br /&gt;
Inserts color codes into &#039;&#039;string&#039;&#039;, so that the first character has &#039;&#039;color1&#039;&#039;, the last character has &#039;&#039;color2&#039;&#039;, and intermediate characters have blended colors. The blending is performed in the RGB color space. Note that color codes are additional characters that will also be counted by string manipulation functions. For example, if you need to truncate a string, you should do this before applying &#039;&#039;$transition&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
= Now playing info =&lt;br /&gt;
The following functions and fields are usable for scripts used with the currently playing item, for example the status bar, the main window title and the copy command script.&lt;br /&gt;
&lt;br /&gt;
== Special fields ==&lt;br /&gt;
&lt;br /&gt;
=== %playback_time% ===&lt;br /&gt;
Returns the elapsed time formatted as [HH:]MM:SS.&lt;br /&gt;
&lt;br /&gt;
=== %playback_time_seconds% ===&lt;br /&gt;
Returns elapsed time in seconds.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_elapsed%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %playback_time_remaining% ===&lt;br /&gt;
Returns remaining time until track ends, formatted as [HH:]MM:SS.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_remaining%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %playback_time_remaining_seconds% ===&lt;br /&gt;
Returns remaining time in seconds.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_remaining_seconds%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %length% ===&lt;br /&gt;
Returns the length of the track formatted as hours, minutes, and seconds.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_total%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %length_ex% ===&lt;br /&gt;
Returns the length of the track formatted as hours, minutes, seconds, and milliseconds.&lt;br /&gt;
&lt;br /&gt;
=== %length_seconds% ===&lt;br /&gt;
Returns the length of the track in seconds.&lt;br /&gt;
Old version: &amp;lt;code&amp;gt;%_time_total_seconds%&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== %length_seconds_fp% ===&lt;br /&gt;
Returns the length of the track in seconds as floating point number.&lt;br /&gt;
&lt;br /&gt;
=== %length_samples% ===&lt;br /&gt;
Returns the length of the track in samples.&lt;br /&gt;
&lt;br /&gt;
= Playlist info =&lt;br /&gt;
The following functions and fields are usable for playlist display formatting (eg. per-column title formatting patterns).&lt;br /&gt;
&lt;br /&gt;
== Special fields ==&lt;br /&gt;
&lt;br /&gt;
=== %isplaying% ===&lt;br /&gt;
&lt;br /&gt;
Returns &amp;quot;1&amp;quot; if file is currently playing and empty string otherwise.&lt;br /&gt;
&lt;br /&gt;
=== %ispaused% ===&lt;br /&gt;
&lt;br /&gt;
Returns &amp;quot;1&amp;quot; if playback is paused, empty string otherwise.&lt;br /&gt;
&lt;br /&gt;
=== %list_index% ===&lt;br /&gt;
&lt;br /&gt;
Returns a zero-padded playlist index of specified item. The first item is at index 1.&lt;br /&gt;
&lt;br /&gt;
=== %list_total% ===&lt;br /&gt;
&lt;br /&gt;
Returns number of items in the playlist.&lt;br /&gt;
&lt;br /&gt;
=== %queue_index% ===&lt;br /&gt;
&lt;br /&gt;
Index of the specified item in the playback queue; available in playlist only. If the item has been queued multiple times, %queue_index% evaluates to the first index.&lt;br /&gt;
&lt;br /&gt;
=== %queue_indexes% ===&lt;br /&gt;
&lt;br /&gt;
List of indexes of the specified item in the playback queue; available in playlist only. Same as %queue_index% unless the item has been queued more than once.&lt;br /&gt;
&lt;br /&gt;
=== %queue_total% ===&lt;br /&gt;
&lt;br /&gt;
Total amount of tracks in playback queue. Available only for queued tracks, for technical reasons. &lt;br /&gt;
&lt;br /&gt;
= String functions =&lt;br /&gt;
&lt;br /&gt;
The functions in this section can be used to manipulate character strings.&lt;br /&gt;
&lt;br /&gt;
=== $abbr(x) ===&lt;br /&gt;
&lt;br /&gt;
Returns abbreviation of &#039;&#039;x&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $abbr(x,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns abbreviation of &#039;&#039;x&#039;&#039;, if &#039;&#039;x&#039;&#039; is longer than &#039;&#039;len&#039;&#039; characters, otherwise returns &#039;&#039;x&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $ansi(x) ===&lt;br /&gt;
&lt;br /&gt;
Converts &#039;&#039;x&#039;&#039; to system codepage and back. Any characters that are not present in the system codepage will be removed / replaced. Useful for mass-renaming files to ensure compatibility with non-unicode-capable software.&lt;br /&gt;
&lt;br /&gt;
=== $ascii(x) ===&lt;br /&gt;
&lt;br /&gt;
Converts &#039;&#039;x&#039;&#039; to ASCII. Any characters that are not present in ASCII will be removed / replaced.&lt;br /&gt;
&lt;br /&gt;
=== $caps(x) ===&lt;br /&gt;
&lt;br /&gt;
Converts first letter in every word of x to uppercase, and all other letters to lowercase.&lt;br /&gt;
&lt;br /&gt;
=== $caps2(x) ===&lt;br /&gt;
&lt;br /&gt;
Converts first letter in every word of x to uppercase, and leaves all other letters as they are.&lt;br /&gt;
&lt;br /&gt;
=== $char(x) ===&lt;br /&gt;
&lt;br /&gt;
Inserts Unicode character with code &#039;&#039;x&#039;&#039;. You can search for characters an find the matching decimal number on this [http://www.fileformat.info/info/unicode/char/search.htm site].&lt;br /&gt;
&lt;br /&gt;
=== $crc32(a) ===&lt;br /&gt;
&lt;br /&gt;
Computes the CRC32 of the string &#039;&#039;a&#039;&#039; as a number. Intended for use in coloring scripts.&lt;br /&gt;
&lt;br /&gt;
Example: $rgb($mod($crc32(%album%),256),128,128)&lt;br /&gt;
&lt;br /&gt;
=== $crlf() ===&lt;br /&gt;
&lt;br /&gt;
Inserts end-of-line marker (carriage return, line feed). Can be used to generate multiple lines in the output, for example for the tooltip of the system  notification area (&amp;quot;systray&amp;quot;) icon.&lt;br /&gt;
&lt;br /&gt;
=== $cut(a,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns first &#039;&#039;len&#039;&#039; characters on the left of &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $directory(x) ===&lt;br /&gt;
&lt;br /&gt;
Extracts directory name from the file path &#039;&#039;x&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $directory(x,n) ===&lt;br /&gt;
&lt;br /&gt;
Extracts directory name from the file path &#039;&#039;x&#039;&#039;; goes up by &#039;&#039;n&#039;&#039; levels.&lt;br /&gt;
&lt;br /&gt;
=== $directory_path(x) ===&lt;br /&gt;
&lt;br /&gt;
Extracts directory path from the file path &#039;&#039;x&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $ext(x) ===&lt;br /&gt;
&lt;br /&gt;
Extracts file extension from &#039;&#039;x&#039;&#039; which must be a file name or path.&lt;br /&gt;
&lt;br /&gt;
=== $filename(x) ===&lt;br /&gt;
&lt;br /&gt;
Extracts file name from full path.&lt;br /&gt;
&lt;br /&gt;
=== $fix_eol(x) ===&lt;br /&gt;
&lt;br /&gt;
If &#039;&#039;x&#039;&#039; contains an end-of-line marker (CR-LF), the end-of-line marker and all text to the right of it is replaced by &amp;quot; (...)&amp;quot;. Otherwise &#039;&#039;x&#039;&#039; is returned unaltered.&lt;br /&gt;
&lt;br /&gt;
=== $fix_eol(x,indicator) ===&lt;br /&gt;
&lt;br /&gt;
If &#039;&#039;x&#039;&#039; contains an end-of-line marker (CR-LF), the end-of-line marker and all text to the right of it is replaced by &#039;&#039;indicator&#039;&#039;. Otherwise &#039;&#039;x&#039;&#039; is returned unaltered.&lt;br /&gt;
&lt;br /&gt;
=== $hex(n) ===&lt;br /&gt;
&lt;br /&gt;
Formats the integer number &#039;&#039;n&#039;&#039; in hexadecimal notation.&lt;br /&gt;
&lt;br /&gt;
=== $hex(n,len) ===&lt;br /&gt;
&lt;br /&gt;
Formats the integer number &#039;&#039;n&#039;&#039; in hexadecimal notation with &#039;&#039;len&#039;&#039; digits. Pads with zeros from the left if necessary.&lt;br /&gt;
&lt;br /&gt;
=== $insert(a,b,n) ===&lt;br /&gt;
&lt;br /&gt;
Inserts &#039;&#039;b&#039;&#039; into &#039;&#039;a&#039;&#039; after &#039;&#039;n&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $left(a,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns the first &#039;&#039;len&#039;&#039; characters from the left of &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $len(a) ===&lt;br /&gt;
&lt;br /&gt;
Returns length of string &#039;&#039;a&#039;&#039; in characters.&lt;br /&gt;
&lt;br /&gt;
=== $len2(a) ===&lt;br /&gt;
&lt;br /&gt;
Returns length of string x in characters, respecting double-width character rules (double-width characters will be counted as two).&lt;br /&gt;
&lt;br /&gt;
=== $longer(a,b) ===&lt;br /&gt;
&lt;br /&gt;
Returns &#039;&#039;true&#039;&#039;, if string &#039;&#039;a&#039;&#039; is longer than string &#039;&#039;b&#039;&#039;, false otherwise.&lt;br /&gt;
&lt;br /&gt;
=== $lower(a) ===&lt;br /&gt;
&lt;br /&gt;
Converts &#039;&#039;a&#039;&#039; to lowercase.&lt;br /&gt;
&lt;br /&gt;
=== $longest(a,...) ===&lt;br /&gt;
&lt;br /&gt;
Returns the longest of its arguments. Can be used with an arbitrary number of strings.&lt;br /&gt;
&lt;br /&gt;
=== $num(n,len) ===&lt;br /&gt;
&lt;br /&gt;
Formats the integer number &#039;&#039;n&#039;&#039; in decimal notation with &#039;&#039;len&#039;&#039; digits. Pads with zeros from the left if necessary.&lt;br /&gt;
&lt;br /&gt;
=== $pad(x,len) ===&lt;br /&gt;
&lt;br /&gt;
Pads &#039;&#039;x&#039;&#039; from the left with spaces to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $pad_right(x,y) ===&lt;br /&gt;
&lt;br /&gt;
Pads &#039;&#039;x&#039;&#039; from the right with spaces to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $pad(x,len,char) ===&lt;br /&gt;
&lt;br /&gt;
Pads &#039;&#039;x&#039;&#039; from the left with &#039;&#039;char&#039;&#039; to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $pad_right(x,len,char) ===&lt;br /&gt;
&lt;br /&gt;
Pads &#039;&#039;x&#039;&#039; from the right with &#039;&#039;char&#039;&#039; to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $padcut(x,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns first &#039;&#039;len&#039;&#039; characters from the left of &#039;&#039;x&#039;&#039;, if &#039;&#039;x&#039;&#039; is longer than &#039;&#039;len&#039;&#039; characters. Otherwise pads &#039;&#039;x&#039;&#039; from the left with spaces to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $padcut_right(x,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns first &#039;&#039;len&#039;&#039; characters from the left of &#039;&#039;x&#039;&#039;, if &#039;&#039;x&#039;&#039; is longer than &#039;&#039;len&#039;&#039; characters. Otherwise pads &#039;&#039;x&#039;&#039; from the right with spaces to &#039;&#039;len&#039;&#039; characters.&lt;br /&gt;
&lt;br /&gt;
=== $progress(pos,range,len,a,b) ===&lt;br /&gt;
&lt;br /&gt;
Creates a progress bar: &#039;&#039;pos&#039;&#039; contains position, &#039;&#039;range&#039;&#039; contains range, &#039;&#039;len&#039;&#039; progress bar length in characters, &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039; are characters to build progress bar with.&lt;br /&gt;
&lt;br /&gt;
Example:&#039;&#039;$progress(%_time_elapsed_seconds%, %_time_total_seconds%, 20,&#039;#&#039;,&#039;=&#039;)&#039;&#039; produces &amp;quot;====#===============&amp;quot;, the # character is moving with playback position.&lt;br /&gt;
&lt;br /&gt;
=== $progress2(pos,range,len,a,b) ===&lt;br /&gt;
&lt;br /&gt;
Creates a progress bar: &#039;&#039;pos&#039;&#039; contains position, &#039;&#039;range&#039;&#039; contains range, &#039;&#039;len&#039;&#039; progress bar length in characters, &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039; are characters to build progress bar with. Produces different appearance than &#039;&#039;$progress&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $repeat(a,n) ===&lt;br /&gt;
&lt;br /&gt;
Returns &#039;&#039;n&#039;&#039; copies of &#039;&#039;a&#039;&#039;. Note that &#039;&#039;a&#039;&#039; is evaluated once before its value is used, so &#039;&#039;$repeat&#039;&#039; cannot be used for loops.&lt;br /&gt;
&lt;br /&gt;
=== $replace(a,b,c) ===&lt;br /&gt;
&lt;br /&gt;
Replaces all occurrences of string &#039;&#039;b&#039;&#039; in string &#039;&#039;a&#039;&#039; with string &#039;&#039;c&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Can also be used with an arbitrary number of arguments. Note that &#039;&#039;$replace(a,b1,c1,b2,c2)&#039;&#039; is generally not the same as &#039;&#039;$replace($replace(a,b1,c1),b2,c2)&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$replace(ab,a,b,b,c)&#039;&#039; → &amp;quot;bc&amp;quot;, &#039;&#039;$replace($replace(ab,a,b),b,c)&#039;&#039; → &amp;quot;cc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $right(a,len) ===&lt;br /&gt;
&lt;br /&gt;
Returns the first &#039;&#039;len&#039;&#039; characters from the right of &#039;&#039;a&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $roman(n) ===&lt;br /&gt;
&lt;br /&gt;
Formats the integer number &#039;&#039;n&#039;&#039; in roman notation.&lt;br /&gt;
&lt;br /&gt;
=== $rot13() ===&lt;br /&gt;
&lt;br /&gt;
Performs [http://en.wikipedia.org/wiki/ROT13 ROT13] transformation to given string.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$rot13(&#039;foobar2000&#039;)&#039;&#039; → &amp;quot;sbbone2000&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== $shortest ===&lt;br /&gt;
&lt;br /&gt;
Returns the shortest of its arguments. Can be used with an arbitrary number of strings.&lt;br /&gt;
&lt;br /&gt;
=== $strchr(s,c) ===&lt;br /&gt;
&lt;br /&gt;
Finds first occurence of character &#039;&#039;c&#039;&#039; in string &#039;&#039;s&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$strchr(abca,a)&#039;&#039; → 1&lt;br /&gt;
&lt;br /&gt;
=== $strrchr(s,c) ===&lt;br /&gt;
&lt;br /&gt;
Finds last occurence of character &#039;&#039;c&#039;&#039; in string &#039;&#039;s&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$strrchr(abca,a)&#039;&#039; → 4&lt;br /&gt;
&lt;br /&gt;
=== $strstr(s1,s2) ===&lt;br /&gt;
&lt;br /&gt;
Finds first occurence of string &#039;&#039;s2&#039;&#039; in string &#039;&#039;s1&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $strcmp(s1,s2) ===&lt;br /&gt;
&lt;br /&gt;
Performs a case-sensitive comparison of the strings &#039;&#039;s1&#039;&#039; and &#039;&#039;s2&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $stricmp(s1,s2) ===&lt;br /&gt;
&lt;br /&gt;
Performs a case-insensitive comparison of the strings &#039;&#039;s1&#039;&#039; and &#039;&#039;s2&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $substr(s,m,n) ===&lt;br /&gt;
&lt;br /&gt;
Returns substring of string &#039;&#039;s&#039;&#039;, starting from &#039;&#039;m&#039;&#039;-th character and ending at &#039;&#039;n&#039;&#039;-th character.&lt;br /&gt;
&lt;br /&gt;
=== $stripprefix(x) ===&lt;br /&gt;
&lt;br /&gt;
Removes &#039;&#039;A&#039;&#039; and &#039;&#039;The&#039;&#039; prefixes from x. &lt;br /&gt;
&lt;br /&gt;
=== $stripprefix(x,prefix1,prefix2,...) ===&lt;br /&gt;
&lt;br /&gt;
Removes the specified prefixes from x. &lt;br /&gt;
&lt;br /&gt;
=== $swapprefix(x) ===&lt;br /&gt;
&lt;br /&gt;
Moves &#039;&#039;A&#039;&#039; and &#039;&#039;The&#039;&#039; prefixes to the end of x. &lt;br /&gt;
&lt;br /&gt;
=== $swapprefix(x,prefix1,prefix2,...) ===&lt;br /&gt;
&lt;br /&gt;
Moves the specified prefixes to the end of x. &lt;br /&gt;
&lt;br /&gt;
=== $trim(s) ===&lt;br /&gt;
&lt;br /&gt;
Removes leading and trailing spaces from string &#039;&#039;s&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== $tab() ===&lt;br /&gt;
&lt;br /&gt;
Inserts one tabulator character.&lt;br /&gt;
&lt;br /&gt;
=== $tab(n) ===&lt;br /&gt;
&lt;br /&gt;
Inserts &#039;&#039;n&#039;&#039; tabulator characters.&lt;br /&gt;
&lt;br /&gt;
=== $upper(s) ===&lt;br /&gt;
&lt;br /&gt;
Converts string &#039;&#039;s&#039;&#039; to uppercase.&lt;br /&gt;
&lt;br /&gt;
= Track info =&lt;br /&gt;
&lt;br /&gt;
The functions and fields in this section can be used to access information about tracks. See [[Foobar2000:0.9 Track Info Panel Mod (foo uie trackinfo mod)|this]] for more info about Track info mod.&lt;br /&gt;
&lt;br /&gt;
== Metadata ==&lt;br /&gt;
&lt;br /&gt;
=== $meta(name) ===&lt;br /&gt;
Returns value of tag called &#039;&#039;name&#039;&#039;. If multiple values of that tag exist, they are concatenated with &amp;quot;, &amp;quot; as separator.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta(artist)&#039;&#039; → &amp;quot;He, She, It&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $meta(name,n) ===&lt;br /&gt;
Returns value of &#039;&#039;n&#039;&#039;-th (0,1,2 and so on) tag called &#039;&#039;name&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta(artist,1)&#039;&#039; → &amp;quot;She&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $meta_sep(name,sep) ===&lt;br /&gt;
Returns value of tag called &#039;&#039;name&#039;&#039;. If multiple values of that tag exist, they are concatenated with &#039;&#039;sep&#039;&#039; as separator.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta_sep(artist,&#039; + &#039;)&#039;&#039; → &amp;quot;He + She + It&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $meta_sep(name,sep,lastsep) ===&lt;br /&gt;
Returns value of tag called &#039;&#039;name&#039;&#039;. If multiple values of that tag exist, they are concatenated with &#039;&#039;sep&#039;&#039; as separator between all but the last two values which are concatenated with &#039;&#039;lastsep&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta_sep(artist,&#039;, &#039;,&#039;, and &#039;)&#039;&#039; → &amp;quot;He, She, and It&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== $meta_test(...) === &lt;br /&gt;
Returns &#039;&#039;1&#039;&#039;, if all given tags exist, &#039;&#039;undefined&#039;&#039; otherwise.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta_test(artist,title)&#039;&#039; → true&lt;br /&gt;
&lt;br /&gt;
=== $meta_num(name) ===&lt;br /&gt;
Returns the number of values for the tag called &#039;&#039;name&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$meta_num(artist)&#039;&#039; → 3&lt;br /&gt;
&lt;br /&gt;
== Technical information ==&lt;br /&gt;
&lt;br /&gt;
=== $info(name) ===&lt;br /&gt;
Returns value of technical information field called &#039;&#039;name&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
For convenience, the &#039;&#039;&#039;%__name%&#039;&#039;&#039; alias is also available.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$info(channels)&#039;&#039; → 2&lt;br /&gt;
&lt;br /&gt;
Here is an &#039;&#039;&#039;informative&#039;&#039;&#039; list of recognized fields. Some of these depend on the media file type being queried.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! field name&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; style=&amp;quot;background-color:#CCF&amp;quot;|&#039;&#039;&#039;General&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|codec&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Codec&#039;&#039;&#039; (&#039;&#039;e.g.&#039;&#039; MP3)&lt;br /&gt;
|-&lt;br /&gt;
|codec_profile&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Codec Profile&#039;&#039;&#039; (&#039;&#039;e.g.&#039;&#039; CBR)&lt;br /&gt;
|-&lt;br /&gt;
|samplerate&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Sample Rate&#039;&#039;&#039;, in hertz (&#039;&#039;e.g.&#039;&#039; 44100)&lt;br /&gt;
|-&lt;br /&gt;
|bitrate&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Bitrate&#039;&#039;&#039;, in kilobits per second (&#039;&#039;e.g.&#039;&#039; 320)&lt;br /&gt;
|-&lt;br /&gt;
|tool&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Tool&#039;&#039;&#039; used to produce the file, possibly guessed (&#039;&#039;e.g.&#039;&#039; LAME3.97)&lt;br /&gt;
|-&lt;br /&gt;
|encoding&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Encoding&#039;&#039;&#039; lossiness (&#039;&#039;e.g.&#039;&#039; lossy)&lt;br /&gt;
|-&lt;br /&gt;
|channels&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Channels&#039;&#039;&#039; count (&#039;&#039;e.g.&#039;&#039; 2 &amp;lt;nowiki&amp;gt;[for stereo]&amp;lt;/nowiki&amp;gt;)&lt;br /&gt;
|-&lt;br /&gt;
|bitspersample&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Bits Per Sample&#039;&#039;&#039; (&#039;&#039;e.g.&#039;&#039; 16)&lt;br /&gt;
|-&lt;br /&gt;
|tagtype&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Tag Type&#039;&#039;&#039;, comma-separated list of tag formats (&#039;&#039;e.g.&#039;&#039; id3v2|apev2)&lt;br /&gt;
|-&lt;br /&gt;
|cue_embedded&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Embedded Cuesheet&#039;&#039;&#039; presence (&#039;&#039;e.g.&#039;&#039; no &amp;lt;nowiki&amp;gt;[may be empty!]&amp;lt;/nowiki&amp;gt;)&lt;br /&gt;
|-&lt;br /&gt;
|md5&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Audio MD5&#039;&#039;&#039; hash, if container defines it (&#039;&#039;e.g.&#039;&#039; 1E24A910D91EF09A8CF403C9B6963961)&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; style=&amp;quot;background-color:#CCF&amp;quot;|&#039;&#039;&#039;Other&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|ENC_DELAY&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|LAME proprietary MP3 &#039;&#039;&#039;enc_delay&#039;&#039;&#039; value (&#039;&#039;e.g.&#039;&#039; 576)&lt;br /&gt;
|-&lt;br /&gt;
|ENC_PADDING&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|LAME proprietary MP3 &#039;&#039;&#039;enc_padding&#039;&#039;&#039; value (&#039;&#039;e.g.&#039;&#039; 1536)&lt;br /&gt;
|-&lt;br /&gt;
|MP3_ACCURATE_LENGTH&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;mp3_accurate_length&#039;&#039;&#039; supported (LAME proprietary header)? (&#039;&#039;e.g.&#039;&#039; yes)&lt;br /&gt;
|-&lt;br /&gt;
|MP3_STEREO_MODE&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|Stereo mode used in MP3 file (&#039;&#039;e.g.&#039;&#039; mono, stereo, joint stereo, etc.)&lt;br /&gt;
|-&lt;br /&gt;
|VERSION&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Version&#039;&#039;&#039; of tool (&#039;&#039;e.g.&#039;&#039; 3.99)&lt;br /&gt;
|-&lt;br /&gt;
|FLAGS&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot;|&#039;&#039;&#039;Flags&#039;&#039;&#039; of tool (&#039;&#039;e.g.&#039;&#039; 22)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== $channels() === &lt;br /&gt;
Returns number of channels in text format.&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;$channels()&#039;&#039; → &amp;quot;stereo&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== %replaygain_album_gain% ===&lt;br /&gt;
&lt;br /&gt;
Returns ReplayGain album gain value.&lt;br /&gt;
&lt;br /&gt;
=== %replaygain_album_peak% ===&lt;br /&gt;
&lt;br /&gt;
Returns ReplayGain album peak value.&lt;br /&gt;
&lt;br /&gt;
=== %replaygain_track_gain% ===&lt;br /&gt;
&lt;br /&gt;
Returns ReplayGain track gain value.&lt;br /&gt;
&lt;br /&gt;
=== %replaygain_track_peak% ===&lt;br /&gt;
&lt;br /&gt;
Returns ReplayGain track peak value.&lt;br /&gt;
&lt;br /&gt;
== Special fields ==&lt;br /&gt;
&lt;br /&gt;
==== %filename% ====&lt;br /&gt;
&lt;br /&gt;
Returns the filename without directory and extension.&lt;br /&gt;
&lt;br /&gt;
==== %filename_ext% ====&lt;br /&gt;
&lt;br /&gt;
Returns the filename with extension, but without the directory.&lt;br /&gt;
&lt;br /&gt;
==== %directoryname% ====&lt;br /&gt;
&lt;br /&gt;
Returns the name of the parent directory only, not the complete path.&lt;br /&gt;
&lt;br /&gt;
==== %last_modified% ====&lt;br /&gt;
&lt;br /&gt;
Returns the date and time the file was last modified. Eg: &#039;&#039;2005-12-22 00:04:10&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== %path% ====&lt;br /&gt;
&lt;br /&gt;
Returns the path.&lt;br /&gt;
&lt;br /&gt;
==== %_path_raw% ====&lt;br /&gt;
&lt;br /&gt;
Returns the path as URL including the protocol scheme.&lt;br /&gt;
&lt;br /&gt;
==== %subsong% ====&lt;br /&gt;
&lt;br /&gt;
Returns the subsong index. The subsong index is used to distuingish multiple tracks in a single file, for example for cue sheets, tracker modules and various container formats.&lt;br /&gt;
&lt;br /&gt;
==== %_foobar2000_version% ====&lt;br /&gt;
Returns a string representing the version of foobar2000.&lt;br /&gt;
&lt;br /&gt;
= Time/Date Functions =&lt;br /&gt;
&lt;br /&gt;
These functions are used to manipulate time/date strings, notably (but not limited to), [[Foobar2000:Titleformat_Playback_Statistics|those gathered]] by the [[Foobar2000:Components_0.9/Playback_Statistics_(foo_playcount)|Playback Statistics component]].&lt;br /&gt;
&lt;br /&gt;
=== $year(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the year part (formatted as four digits) from a time/date string.&lt;br /&gt;
&lt;br /&gt;
=== $month(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the month part (formatted as two digits) from a time/date string.&lt;br /&gt;
&lt;br /&gt;
=== $day_of_month(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the day of month part (formatted as two digits) from a time/date string.&lt;br /&gt;
&lt;br /&gt;
=== $date(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the date part (formatted as YYYY-MM-DD) from a time/date string.&lt;br /&gt;
&lt;br /&gt;
=== $time(time) ===&lt;br /&gt;
&lt;br /&gt;
Retrieves the time part (formatted as HH:MM:SS or HH:MM) from a date/time string.&lt;br /&gt;
&lt;br /&gt;
= Variable operations =&lt;br /&gt;
&lt;br /&gt;
Variables can be used to store strings and number. They cannot store truth values. They are best used to store intermediate results that you need multiple times. Variable names are not case-sensitive.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! code&lt;br /&gt;
! output&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;pre&amp;gt;$put(foo,bar)$char(10)&lt;br /&gt;
$get(foo)$char(10)&lt;br /&gt;
$get(Foo)$char(10)&lt;br /&gt;
$puts(foo,2000)$char(10)&lt;br /&gt;
$get(foo)$char(10)&amp;lt;/pre&amp;gt;&lt;br /&gt;
| style=&amp;quot;background-color:#EEF&amp;quot; |&amp;lt;pre&amp;gt;bar&lt;br /&gt;
bar&lt;br /&gt;
bar&lt;br /&gt;
&lt;br /&gt;
2000&amp;lt;/pre&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
=== $get(name) ===&lt;br /&gt;
&lt;br /&gt;
Returns the value that was last stored in the variable &#039;&#039;name&#039;&#039;, if the variable was not defined (yet), it returns nothing. The truth value returned by &#039;&#039;$get&#039;&#039; indicates if the variable &#039;&#039;name&#039;&#039; was defined&lt;br /&gt;
&lt;br /&gt;
=== $put(name,value) ===&lt;br /&gt;
&lt;br /&gt;
Stores &#039;&#039;value&#039;&#039; in the variable &#039;&#039;name&#039;&#039; and returns &#039;&#039;value&#039;&#039; unaltered&lt;br /&gt;
&lt;br /&gt;
=== $puts(name,value) ===&lt;br /&gt;
&lt;br /&gt;
Stores &#039;&#039;value&#039;&#039; in the variable &#039;&#039;name&#039;&#039; and returns nothing&lt;br /&gt;
&lt;br /&gt;
= Component-provided fields and functions on tracks =&lt;br /&gt;
&lt;br /&gt;
This section lists components that provide additional fields and functions that are useable in the context of any track.&lt;br /&gt;
&lt;br /&gt;
== Playback statistics ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.foobar2000.org/components/view/foo_playcount Playback statistics homepage]&lt;br /&gt;
* [[Foobar2000:Titleformat Playback Statistics|Playback statistics titleformat reference]]&lt;br /&gt;
&lt;br /&gt;
= Component-specific fields and functions =&lt;br /&gt;
&lt;br /&gt;
This section lists components that provide additional fields and functions that are only usable in the context of the particular component.&lt;br /&gt;
&lt;br /&gt;
== Album list ==&lt;br /&gt;
&lt;br /&gt;
* [[Foobar2000:Preferences:Album List|Preferences: Album List]]&lt;br /&gt;
&lt;br /&gt;
== Columns UI ==&lt;br /&gt;
&lt;br /&gt;
* [http://music.morbo.org/wiki/columns_ui:manual Columns UI homepage]&lt;br /&gt;
* [http://music.morbo.org/wiki/columns_ui:config:global_variables Global variables reference]&lt;br /&gt;
* [http://music.morbo.org/wiki/columns_ui:config:colour_string Playlist colors reference]&lt;br /&gt;
* [http://music.morbo.org/wiki/columns_ui:config:playlist_switcher_titleformatting Playlist switcher reference]&lt;br /&gt;
&lt;br /&gt;
= Additional Reading =&lt;br /&gt;
&lt;br /&gt;
* [[Foobar2000:Titleformat_Introduction|Introduction to titleformat scripts]]&lt;br /&gt;
* &#039;&#039;&#039;titleformat_help.html&#039;&#039;&#039; in your Foobar2000 directory (ie C:\Program Files\foobar2000\titleformat_help.html) file:///C:/Program%20Files/foobar2000/titleformat_help.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:foobar2000 Guides|Titleformat Reference]]&lt;/div&gt;</summary>
		<author><name>Chiwou</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/ELplaylist_panel_(foo_uie_elplaylist)&amp;diff=19481</id>
		<title>Foobar2000:Components 0.9/ELplaylist panel (foo uie elplaylist)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/ELplaylist_panel_(foo_uie_elplaylist)&amp;diff=19481"/>
		<updated>2009-03-10T22:31:12Z</updated>

		<summary type="html">&lt;p&gt;Chiwou: first version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{fb2k}}&lt;br /&gt;
{{stub}}&lt;br /&gt;
&lt;br /&gt;
foobar2000 v0.9.5.1+, Columns UI 0.3+&lt;br /&gt;
&lt;br /&gt;
= Requirements =&lt;br /&gt;
* [http://www.foobar2000.org/ foobar2000 v0.9.5.1+]&lt;br /&gt;
* [http://yuo.be/columns.php Columns UI 0.3+]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Read me (translated from the Japanese original) =&lt;br /&gt;
&lt;br /&gt;
foo_uie_elplaylist.dll v0.6.4.2beta &lt;br /&gt;
 for foobar2000 v0.9.5.1 +, Columns UI0.3 +, WindowsXP + &lt;br /&gt;
 (Testing is only WindowsXP) &lt;br /&gt;
&lt;br /&gt;
 SDK version &lt;br /&gt;
 foobar2000 :2008-07-20 &lt;br /&gt;
        cui: 6.3 &lt;br /&gt;
&lt;br /&gt;
 SCPL like Columns UI for the Playlist view &lt;br /&gt;
 A group format each track of the playlist list and grouping of elements in the set. &lt;br /&gt;
&lt;br /&gt;
 When you change settings, right-click menu, please call the Settings ... dialog. &lt;br /&gt;
 (At least General -&amp;gt; Title format Processor -&amp;gt; __ART_PATH__ you have bad balance and do not set the path to the images in the album.) &lt;br /&gt;
 To edit the settings, Titleformat (TF) knowledge is required. About Titleformat Please refer to the descriptions of other sites separately. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● Setting items &lt;br /&gt;
&lt;br /&gt;
 [Script] &lt;br /&gt;
 Customize your drawing inside the lines of the list. &lt;br /&gt;
 title format script presets: to control the drawing and describe the TF. Settings can be registered. &lt;br /&gt;
 Track list &lt;br /&gt;
 To control the drawing of the track line TF. &lt;br /&gt;
 Group header &lt;br /&gt;
 To draw the header control group TF. &lt;br /&gt;
 Per Second &lt;br /&gt;
 To control the line drawn in the second track is updated play TF. (Now playing info in the TF system can be used.) &lt;br /&gt;
 Popup (Background) &lt;br /&gt;
 Pop-up window to control the drawing of TF. Popup (Track) will be executed before. &lt;br /&gt;
 Most of the extended field use. &lt;br /&gt;
 Popup (Track) &lt;br /&gt;
 Unit to control the drawing of the track pop-up window TF. Popup header when the group will be executed for each track in the group. &lt;br /&gt;
 Most of the extended field use. &lt;br /&gt;
 The origin of BOPPUAPPU, header or group, please send the track to determine% el_is_group%. &lt;br /&gt;
 Also, if the group header,% el_item_index% Please shift your position. &lt;br /&gt;
 [Note]: Popup after updates have been implemented in the version from the version that is not implemented, &lt;br /&gt;
 Opens a dialog and set the default Popup Titleformat is no longer what it was reset, and is by design. &lt;br /&gt;
 In this state, and to save the settings, Popup will not appear on anything. &lt;br /&gt;
 Graphical Browser Popup features are quite helpful. If you have problems, HAZUSHIMASU. &lt;br /&gt;
&lt;br /&gt;
 In entering the default description is the assumption that there is a picture album. &lt;br /&gt;
 General-&amp;gt; title format preprocessor-&amp;gt; ART.PATH please set the path to the appropriate image. &lt;br /&gt;
 For example C: \ image \% album%. Jpg and. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 [style] &lt;br /&gt;
 Custom background colour: &lt;br /&gt;
 Specify a custom background color. &lt;br /&gt;
 Total: Specifies the background color of the whole. &lt;br /&gt;
 odd item: Specifies the background color and several odd. &lt;br /&gt;
 even item: Specifies the background color for even-numbered lines. &lt;br /&gt;
 selected item: Specifies the background color of selected rows. &lt;br /&gt;
 playing item: Specifies the background color of the track playing. &lt;br /&gt;
 selected playing item: Specifies the background color of selected tracks行KATSU play. &lt;br /&gt;
&lt;br /&gt;
 odd and even item for the right padding and left padding can be drawn in the area. &lt;br /&gt;
&lt;br /&gt;
 Odd and even are calculated by the list index: &lt;br /&gt;
 on when the odd / determined in an even row number of the list. &lt;br /&gt;
 off time is determined by order of the group. &lt;br /&gt;
&lt;br /&gt;
 ※ change to display the character, script editing only. &lt;br /&gt;
&lt;br /&gt;
 Default font ...: &lt;br /&gt;
 Please specify the default font. &lt;br /&gt;
&lt;br /&gt;
 Pseudo transparent: &lt;br /&gt;
 And a pseudo-transparent background. I tend to be heavier to process. &lt;br /&gt;
 (If severe, may be better to narrow the viewing area. &lt;br /&gt;
 No I do not use it to optimize the authors・・・) &lt;br /&gt;
&lt;br /&gt;
 Enable Visual Style: &lt;br /&gt;
 The background of the line and automatically draws VisualStyle. Primarily for Windows Vista. &lt;br /&gt;
 After drawing a custom background colour, title format script will be drawn prior to evaluation. &lt;br /&gt;
 Text color does not change automatically. &lt;br /&gt;
&lt;br /&gt;
 Scrollbar: &lt;br /&gt;
 Status of the scroll bar settings: default (auto show / hide switch) / hide (displayed) / show (always displayed), &lt;br /&gt;
 School and set the volume (0 is the system default). &lt;br /&gt;
&lt;br /&gt;
 [Grouping] &lt;br /&gt;
 And customized for the group, you can customize the display of the list across multiple lines. &lt;br /&gt;
&lt;br /&gt;
 group by: a set of preset can be saved as. &lt;br /&gt;
 Group format: &lt;br /&gt;
 Grouping for each track describes Titleformat. &lt;br /&gt;
 TF as a group that tracks the same flight as a result. &lt;br /&gt;
 The group format is the same, leaving tracks on the playlist that is treated as a different group. &lt;br /&gt;
 &amp;quot;|||&amp;quot; in a group format to split, you can set up the group hierarchy. &lt;br /&gt;
&lt;br /&gt;
 Example:% album artist %|||% album% &lt;br /&gt;
 The group with the child group, there are constraints that can not be assigned a truck. &lt;br /&gt;
割RI当TEYOU and tracks such groups, is inserted DAMIGURUPUHEDDA. &lt;br /&gt;
 Are written in some detail at the end of this text. &lt;br /&gt;
&lt;br /&gt;
 Sort format: &lt;br /&gt;
 Sort in the playlist for Titleformat described. &lt;br /&gt;
 execution of the sort is done from the context menu. &lt;br /&gt;
 Note: It does not automatically execute the sort. &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
 Row height: &lt;br /&gt;
 In a list and set the height of the base line. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Row number of group header: &lt;br /&gt;
 &amp;quot;row height&amp;quot; and set the height of the header unit of the group. &lt;br /&gt;
 Titleformat is enabled. TF figures as a result of the process (0-16) should return. &lt;br /&gt;
 The height of the header for this group, always an integral multiple of row height (0-16 times). &lt;br /&gt;
 [Note: the group with a track, group row is evaluated. &lt;br /&gt;
&lt;br /&gt;
 Minimum row number of group: &lt;br /&gt;
 You can set the minimum number of lines in each group. &lt;br /&gt;
 For example, you can use to ensure the scope and application of images to reduce the number of albums and tracks. &lt;br /&gt;
 Titleformat is enabled. TF as a result of the process must return a value of 0. &lt;br /&gt;
 After grouping, this value is less than the number of tracks in the group, empty rows and then inflated. &lt;br /&gt;
&lt;br /&gt;
 Note: the group with a track, min item num will be evaluated. &lt;br /&gt;
 The line is empty, Track list Titleformat at $ enabledraw () as long as you do not use the feature will be drawn off. &lt;br /&gt;
 If you want to draw the line as well as other effective, $ enabledraw (1) and, drawing on the features please. &lt;br /&gt;
 Track list Titleformat the empty line will be evaluated using only the last track of the group. &lt;br /&gt;
&lt;br /&gt;
 Playlist filter: &lt;br /&gt;
 enable playlist filter is on, the name of the playlist from the playlist when切RI替WATTA the group by preset can be selected automatically. &lt;br /&gt;
 enable all playlists in the playlist of all the active preset. &lt;br /&gt;
 If you enable only on the playlist name matches the specified preset is enabled. &lt;br /&gt;
 If you disable on the playlist name matches the specified preset is disabled. &lt;br /&gt;
 preset determines the priority order of the list. &lt;br /&gt;
&lt;br /&gt;
 ※ The name of the playlist specified, &amp;quot;;&amp;quot; that can be separated by more than one. TF or wild card is invalid. &lt;br /&gt;
&lt;br /&gt;
 Associated titleformat script name: &lt;br /&gt;
 This preset tileformat scrpit関連付KETAI and the name of a single set. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Enable playlist filter: &lt;br /&gt;
 playlist from the playlist filter name to enable you to group by preset automatically selected. &lt;br /&gt;
&lt;br /&gt;
 Prioritize active preset: &lt;br /&gt;
 Find a preset valid time has now selected the first group by preset priority. &lt;br /&gt;
&lt;br /&gt;
 [field definition] &lt;br /&gt;
 Title format preprocessor: &lt;br /&gt;
 Each Titleformat [Track list] [Group header] [Per Second] [Popup (Background)] [Popup (Track)] [row number of group header] [minimum row number of group] &lt;br /&gt;
 Before evaluating, field and displacement. &lt;br /&gt;
 Titleformat each set may be useful to refer to a common code. &lt;br /&gt;
 foo: C: \% album%. jpg and if you set, &lt;br /&gt;
 % Foo% Titleformat each of the C: \% album%. Jpg will be substituted. &lt;br /&gt;
&lt;br /&gt;
 [Behaviour] &lt;br /&gt;
 Click action: &lt;br /&gt;
 You can change your behavior when you click on the playlist. &lt;br /&gt;
&lt;br /&gt;
 Mouse hover action: &lt;br /&gt;
 You can run when the mouse stops for a while. &lt;br /&gt;
&lt;br /&gt;
 Enable hover: &lt;br /&gt;
 Mouse hover action for on / off can be. &lt;br /&gt;
&lt;br /&gt;
 Delay: &lt;br /&gt;
 Will stop the mouse from the mouse hover action to implement a delay. &lt;br /&gt;
&lt;br /&gt;
 Display only the focused group: &lt;br /&gt;
 Show only a focus group. Other panel playlists (Graphical Browser or) is predicated on collaboration. &lt;br /&gt;
&lt;br /&gt;
 Collapse all groups when playlist is changed: &lt;br /&gt;
 Close the group by default. &lt;br /&gt;
 Threshold of number of groups: &lt;br /&gt;
 Close the Group when more than this number the number of groups. &lt;br /&gt;
 Auto-collapse: &lt;br /&gt;
 Close the Group other than focus groups. &lt;br /&gt;
 This option is on a group header in a single click to see the track line / switch that you hide. &lt;br /&gt;
 Click the Action Group in the open does not close automatically. &lt;br /&gt;
 If you want to follow the track playback, Playback / Cursor Follows Playback Please use a combination. &lt;br /&gt;
&lt;br /&gt;
 Allow collapsing group with no group header: &lt;br /&gt;
 No group header (group row 0) in the group to close it. &lt;br /&gt;
&lt;br /&gt;
 disable focus change by single click at group header &lt;br /&gt;
 Group headers and empty line in a single click when you stop to move the focus. &lt;br /&gt;
&lt;br /&gt;
 Update every second: &lt;br /&gt;
 The tracks play Enabling Per Second. More precisely, the second update of the drawing of the unit on / off only. &lt;br /&gt;
&lt;br /&gt;
 Move items with drag and dop: &lt;br /&gt;
 Drag &amp;amp; Drop the selected tracks to go. &lt;br /&gt;
 But this option is off, [Alt] while pressing the Drag &amp;amp; Drop, you can move on. &lt;br /&gt;
&lt;br /&gt;
 Enable incremental search: &lt;br /&gt;
 According to key inputs, group format (% el_group_format%) and incremental search. &lt;br /&gt;
 Keyword search is logged in the status bar. &lt;br /&gt;
 Also, you did not enter a second valid key, your search terms are automatically reset. &lt;br /&gt;
 See also SHOTOKATTOKIBAINDO. &lt;br /&gt;
 IME in XP then I will support as possible to find it in Japanese. &lt;br /&gt;
 Alphabet in Vista (ASCII) may only search. (Originally I未確認work with Vista.) &lt;br /&gt;
 If you want to search for Vista in non-ASCII, Ctrl-f search DAIAROGUBESU it is possible, please use there. &lt;br /&gt;
 &lt;br /&gt;
 Resize quality: &lt;br /&gt;
 Enlarge Image / You can set the quality down. &lt;br /&gt;
 If you just want a quality, HighQualityBicubic would be good if you have. &lt;br /&gt;
&lt;br /&gt;
 Context menu: &lt;br /&gt;
 KONTEKISUTOMEYU each (right-click menu) to display the item, you can set up or not. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 [misc] &lt;br /&gt;
 Popup &lt;br /&gt;
 Pop-up mouse hover action is executed. &lt;br /&gt;
 Max size: &lt;br /&gt;
 The maximum size of the popup. Titleformat small can. &lt;br /&gt;
&lt;br /&gt;
 Popup opacity: &lt;br /&gt;
 Opacity of the popup. 0 will be completely transparent and you will not be displayed. &lt;br /&gt;
&lt;br /&gt;
 Fade-in: &lt;br /&gt;
 TSUKEMASU a fade effect when viewed. I made quite appropriate. (Vista will fade in the default?) &lt;br /&gt;
&lt;br /&gt;
 Enable colorkey: &lt;br /&gt;
 Set the color key. The transparent color is set. Same background color (default) if the background is transparent. &lt;br /&gt;
 However, it is anti-aliasing, transparency is not beautiful. &lt;br /&gt;
&lt;br /&gt;
 Prevent going outside of display &lt;br /&gt;
 To avoid as much as possible out of the pop-up display. Multi-Display is not supported. &lt;br /&gt;
 &lt;br /&gt;
 Max track num: &lt;br /&gt;
 Popup (Track) limit the number of trucks running. &lt;br /&gt;
 Popup the Titleformat script, &lt;br /&gt;
 Popup (Background) -&amp;gt; Popup (Track) -&amp;gt; Popup (Track) -&amp;gt;・・・&lt;br /&gt;
 Runs. &lt;br /&gt;
&lt;br /&gt;
 Additional sort format &lt;br /&gt;
 Sort of context menu to add the item to set the sort format. &lt;br /&gt;
 Group by preset and is independent. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● SHOTOKATTOKIBAINDO &lt;br /&gt;
 Ctrl-c: Copy &lt;br /&gt;
 Ctrl-v: Paste &lt;br /&gt;
 Ctrl-x: Cut &lt;br /&gt;
 Ctrl-a: select all &lt;br /&gt;
 Ctrl-f: Find dialog (% el_group_format% of your search) &lt;br /&gt;
 Ctrl-g: Go to the following groups: &lt;br /&gt;
 Ctrl-b: Go to the previous group &lt;br /&gt;
 Delete: remove a track from the playlist &lt;br /&gt;
 Alt-[Up] / [Down]: Move the selected track ( &amp;quot;hide all items when playlist is changed&amp;quot; is that it is off) &lt;br /&gt;
 [Note]: foobar2000 body of General-&amp;gt; Keyboard Shortcuts settings will take precedence. &lt;br /&gt;
&lt;br /&gt;
 # # [Alt] + Drag &amp;amp; Drop, you can move the selected tracks. &lt;br /&gt;
&lt;br /&gt;
 ■ incremental search &lt;br /&gt;
 Keystrokes group format (% el_group_format%) or incremental search. (enable incremental search is on only) &lt;br /&gt;
 The following shortcuts are available. &lt;br /&gt;
 Ctrl-e: to reset the search keywords. &lt;br /&gt;
 Ctrl-d: Find Next. (Ctrl-s if I could spare a・・・) &lt;br /&gt;
 Ctrl-r: find. &lt;br /&gt;
&lt;br /&gt;
 ● Main Menu &lt;br /&gt;
 All panels will be affected. &lt;br /&gt;
 Show now playing: Scroll to the track so that you are playing. &lt;br /&gt;
 Show focused item: Scroll to see the focus track. &lt;br /&gt;
 Expand all groups: Expand all groups. &lt;br /&gt;
 Collapse all groups: Close all of the groups. &lt;br /&gt;
 Refresh: redraw causes the explicit. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● Extended Command Reference &lt;br /&gt;
 (And other than what it says here you can use foobar&#039;s default unit is roughly TF) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ■ ■ ■ ■ ■ ■ fields ■ ■ ■ ■ ■ ■ &lt;br /&gt;
&lt;br /&gt;
 % el_width% &lt;br /&gt;
 Returns the width of the viewing area of the line &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Popup] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_height% &lt;br /&gt;
 Returns the height of the viewing area of the line. &lt;br /&gt;
 (Line group% el_height% =% el_group_row% *% el_row_height% &lt;br /&gt;
 Track line% el_height% =% el_row_height%) &lt;br /&gt;
 $ Setworldtransform () is affected. &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Popup] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_isplaying% &lt;br /&gt;
 Whether during playback &lt;br /&gt;
 [Track list] [Group header] [Per Second] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_selected% &lt;br /&gt;
 On whether the selected playlist &lt;br /&gt;
 [Track list] [Per Second] &lt;br /&gt;
 click action of the Select group whether the selected group &lt;br /&gt;
 [Group header] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_focused% &lt;br /&gt;
 Focus on whether or not in the playlist &lt;br /&gt;
 [Track list] [Per Second] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_row_height% &lt;br /&gt;
 Returns the height of the basic line. &lt;br /&gt;
 (% El_height% header line is a different group.) &lt;br /&gt;
 [Track list] [Group header] [Per Second] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_group_row% &lt;br /&gt;
 The group header row height% el_row_height% or one minute. &lt;br /&gt;
 The group header% el_height% =% el_group_row% *% el_row_height% of &lt;br /&gt;
 [Track list] [Group header] [Per Second] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_item_count% &lt;br /&gt;
 Number of tracks in the group &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
 [Popup] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_item_count2% &lt;br /&gt;
 number of empty trucks in the group that contains the line &lt;br /&gt;
 [Track list] [Group header] [Per Second] &lt;br /&gt;
 Number of tracks processed in Popup &lt;br /&gt;
 [Popup] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_direct_item_count% &lt;br /&gt;
 Do you track the number of directly assigned to the group. &lt;br /&gt;
 Except in special cases, a group with a sub-group will be 0. &lt;br /&gt;
 The group does not have a sub-group,% el_direct_item_count% =% el_item_count% and (should). &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_item_index% &lt;br /&gt;
 The index tracks the group (counting from 0) &lt;br /&gt;
 The line does not count up empty. &lt;br /&gt;
 [Track list] [Per Second] [Popup] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_item_index2% &lt;br /&gt;
 The index tracks the group (counting from 0) &lt;br /&gt;
 Count up the line is empty. &lt;br /&gt;
 [Track list] [Per Second] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_total_group_count% &lt;br /&gt;
 Number of groups (number of headers for all groups) &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_total_group_index% &lt;br /&gt;
 Index group (index group headers in the list) &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_group_count% &lt;br /&gt;
 Number of groups that belong to the same parent group &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_group_index% &lt;br /&gt;
 The index of the group as seen from a parent group (counting from 0) &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_group_depth% &lt;br /&gt;
 The depth of the current group (counting from 0) &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] [Popup] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_subgroup_count% &lt;br /&gt;
 The number of subgroups &lt;br /&gt;
 Number of groups of children, grandchildren and the number of groups are not counted. &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_subgroup_count2% &lt;br /&gt;
 Cumulative number of subgroups &lt;br /&gt;
 Be counted against the group after the grandchildren. &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_group_format% &lt;br /&gt;
 The current group of the TF group format in the process and return the result. &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_is_collapsed% (% el_is_hide_item%) &lt;br /&gt;
 Whether to close the group. &lt;br /&gt;
 (Whether or not display the group header only) &lt;br /&gt;
 [Group header] [Group row] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_is_empty% &lt;br /&gt;
 Empty or no go. &lt;br /&gt;
 (Just opposite% el_is_valid%) &lt;br /&gt;
 [Track list] [Per Second] &lt;br /&gt;
 Well if you can not configure the sub-group structure, or whether groups can go into a dummy. &lt;br /&gt;
 [Group header] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_is_valid% &lt;br /&gt;
 Valid (empty lines are not), or no go. &lt;br /&gt;
 [Track list] [Per Second] &lt;br /&gt;
 [Group header] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_is_noheader% &lt;br /&gt;
 Do not you have a group header &lt;br /&gt;
 (% El_group_row% to 0 if 1) &lt;br /&gt;
 [Track list] [Per Second] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_sum_length% &lt;br /&gt;
 Total length of the track of the group [hh:] mm: ss &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_sum_length_seconds% &lt;br /&gt;
 Total length of the track of the group (s) &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_backcolour% &lt;br /&gt;
 The background color back in the r-g-b format. &lt;br /&gt;
 R-g-b-a if you want to format, &lt;br /&gt;
 % el_backcolour% -192 can add value and alpha. &lt;br /&gt;
 [Track list] [Group header] [Per Second] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_preset_index% &lt;br /&gt;
 The current group by the preset index returns. &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_preset_name% &lt;br /&gt;
 Returns the current group by the preset name. &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_is_group% &lt;br /&gt;
 Popup whether the group header. &lt;br /&gt;
 [Popup] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_popup_width%,% el_popup_height% &lt;br /&gt;
 Size pop-up at that time. &lt;br /&gt;
 % el_width%,% el_height% note that the max size is returned. &lt;br /&gt;
 [Popup] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % el_is_themed% &lt;br /&gt;
 Whether or not enable Visual Style valid &lt;br /&gt;
 [Track list] [Group header] [Per Second] [Group row] [Min item num] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ■ ■ ■ ■ ■ ■ functions ■ ■ ■ ■ ■ ■ &lt;br /&gt;
&lt;br /&gt;
 ● Draw control function &lt;br /&gt;
 [Track list], [Group header], [Per Second], [Popup] valid. &lt;br /&gt;
&lt;br /&gt;
 $ font (name, size, OPTIONS) &lt;br /&gt;
 Font settings. &lt;br /&gt;
 OPTIONS: bold italic underline strikeout &lt;br /&gt;
&lt;br /&gt;
 Example: $ font (Tahoma, 10, bold italic) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawstring (text, x, y, W, H, rgba, OPTIONS [, OPTIONS2]) &lt;br /&gt;
 String drawing functions. &lt;br /&gt;
 Text coordinates (x, y) to draw on. &lt;br /&gt;
 [Note] This function is a string and DrawText drawtextex not only in view. &lt;br /&gt;
 Maybe only TrueType fonts. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS: Alain specified, the specified quality of drawing, and to specify the clip. &lt;br /&gt;
 Alain left hcenter right specified horizontal &lt;br /&gt;
 Alain specified top vcenter bottom vertical &lt;br /&gt;
&lt;br /&gt;
 nowrap not wraparound &lt;br /&gt;
&lt;br /&gt;
  noaa ClearType and disable anti-aliasing. &lt;br /&gt;
 aa put the anti-aliasing mode. ClearType font such as resistance to the anti-aliasing. &lt;br /&gt;
 hq high quality rendering mode. ClearType mode. (default) &lt;br /&gt;
&lt;br /&gt;
 If you set the trimming trimchar trimword fit the display range &lt;br /&gt;
 elipchar elipword the last to fit the display range If・・・set to replace the &lt;br /&gt;
&lt;br /&gt;
 mempos getlastpos, to be able to get the coordinates of the drawing. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS2 (optional experimental, experimental option) &lt;br /&gt;
 Specifying the terms of the glow effect. &lt;br /&gt;
&lt;br /&gt;
 glow: expand: colour [: strength] glow options &lt;br /&gt;
 Expand - [0-5] &lt;br /&gt;
 Colour - r-g-b &lt;br /&gt;
 Strength - [0-3] glow_aa case of disabled &lt;br /&gt;
&lt;br /&gt;
 Offset: x: y &lt;br /&gt;
 X - glow in the horizontal offset &lt;br /&gt;
 Y - glow in the vertical offset &lt;br /&gt;
&lt;br /&gt;
 ※ glow is a heavy process. (Especially the pseudo transparent) &lt;br /&gt;
&lt;br /&gt;
 Example, $ drawstring (abcd, 10,10,, ,255-128-64-128,) &lt;br /&gt;
 $ drawstring (abcd, 10,10,, ,255-128-64-128, left vcenter, glow :2:255-255-255: 3) &lt;br /&gt;
 $ drawstring (wxyz, 10,10,, ,255-255-255,, glow :2:32-168-268: 1 offset: 1:1) &lt;br /&gt;
 $ drawstring (wxyz, 10,10,, ,255-255-255, elipchar) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawrect (x, y, w, h, R1-G1-B1-A1, R2-G2-B2-A2, OPTIONS) &lt;br /&gt;
 Rectangular drawing functions. &lt;br /&gt;
 Coordinates (x, y) size (w, h) Draws a rectangle. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Aa - put ANCHIERIASU &lt;br /&gt;
&lt;br /&gt;
 Example $ drawrect (0,50,50,50,255-128-64-128,, aa) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ gradientrect (x, y, w, h, r1-g1-b1-a1, r2-g2-b2-a2, OPTIONS, PEAK) &lt;br /&gt;
 Gradient fill in the drawing functions in the rectangle. &lt;br /&gt;
 Coordinates (x, y) size (w, h) Draws a rectangle. &lt;br /&gt;
 R1-g1-b1-a1 Gradient start color &lt;br /&gt;
 R2-g2-b2-a2 peak color gradient &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Vertical gradient of vertical &lt;br /&gt;
 Gradient horizontal horizontal &lt;br /&gt;
 Aa put ANCHIERIASU &lt;br /&gt;
 how nonlinear nonlinear gradient &lt;br /&gt;
&lt;br /&gt;
 PEAK: 0-100 &lt;br /&gt;
 Shifted the peak position of the gradient. &lt;br /&gt;
 0 by default, to end at peak color. &lt;br /&gt;
 50 When is the peak of color. &lt;br /&gt;
&lt;br /&gt;
 Example: $ gradientrect (0,50,50,50255-128-64-128255-255-255, vertical aa) &lt;br /&gt;
 $ gradientrect (0,50,50,50255-128-64-128255-255-255,, 10) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawblurrect (x, y, w, h, colour, level) &lt;br /&gt;
 Filling a rectangle drawing functions to blur the outline. &lt;br /&gt;
 Level [1-7] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawfocusrect (x, y, w, h) &lt;br /&gt;
 Function to draw a dotted line shows the focus rectangle frame specified. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawthemerect (x, y, w, h, control_name, partId, stateId) &lt;br /&gt;
 Visual Style in a rectangle with a control (button or progress bar) function to draw. &lt;br /&gt;
 The only practical to draw a picture may be low. &lt;br /&gt;
 Visual Style not defined in control will not be drawn. &lt;br /&gt;
 At least WindowXP required. &lt;br /&gt;
&lt;br /&gt;
 control_name: Specify the name of the type of control you want to draw. One of the following. &lt;br /&gt;
 window button rebar toolbar status listview header progress tab trackbar tooltip treeview spin scrollbar &lt;br /&gt;
 edit combobox taskbar taskband startpanel explorerbar &lt;br /&gt;
&lt;br /&gt;
 PartId: the parts you want to draw ID. Could we use the following number in the range for each control as a guide. &lt;br /&gt;
 In most cases, less than what I have defined. &lt;br /&gt;
 Window: 1-37 &lt;br /&gt;
 Button rebar listview tooltip: 1-5 &lt;br /&gt;
 Toolbar: 1-6 &lt;br /&gt;
 Status treeview taskband: 1-3 &lt;br /&gt;
 Header spin: 1-4 &lt;br /&gt;
 Progress: 1-4 &lt;br /&gt;
 Tab trackbar scrollbar :1-10 &lt;br /&gt;
 Edit: 1-2 &lt;br /&gt;
 Combobox: 1 &lt;br /&gt;
 Taskbar: 1-8 &lt;br /&gt;
 Startpanel: 1-11 &lt;br /&gt;
 Explorerbar: 1-12 &lt;br /&gt;
&lt;br /&gt;
 StateId: the state and selected ID. If the component does not have to specify the state is 0. &lt;br /&gt;
 stateId is 0 or 1 or 2 would not be drawn in, the parts are not defined. &lt;br /&gt;
&lt;br /&gt;
 Example: &lt;br /&gt;
         Vista Then, apply the style of Windows Explorer. &lt;br /&gt;
 $ drawthemerect (0,0,% el_width%,% el_height%, listview, 1,1) / / default &lt;br /&gt;
 $ drawthemerect (0,0,% el_width%,% el_height%, listview, 1,2) / / hot &lt;br /&gt;
 $ drawthemerect (0,0,% el_width%,% el_height%, listview, 1,3) / / selected &lt;br /&gt;
 $ drawthemerect (0,0,% el_width%,% el_height%, listview, 1,4) / / disable &lt;br /&gt;
 $ drawthemerect (0,0,% el_width%,% el_height%, listview, 1,5) / / notfocused selected &lt;br /&gt;
 $ drawthemerect (0,0,% el_width%,% el_height%, listview, 1,6) / / hot selected &lt;br /&gt;
             $ drawthemerect (0,0,% el_width%, 1, listview, 7,0) / / group header line &lt;br /&gt;
&lt;br /&gt;
 $ drawroundrect (x, y, w, h, w2, h2, R1-G1-B1-A1, R2-G2-B2-A2, RESERVED) &lt;br /&gt;
 Draw a rectangle rolled angle function. &lt;br /&gt;
 Coordinates (x, y) size (w, h) to draw a rectangle with the corners rolled. &lt;br /&gt;
 Rounded the corner, w2, h2 can be adjusted. &lt;br /&gt;
 w&amp;gt; 4 * w2 &amp;amp; &amp;amp; h&amp;gt; 4 * h2 satisfy the need. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
     Example $ drawroundrect (10,20,50,50,4,4255-255-128-255,,) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawellipse (x, y, w, h, R1-G1-B1-A1, R2-G2-B2-A2, RESERVED) &lt;br /&gt;
 Ellipse drawing functions. &lt;br /&gt;
 Coordinates (x, y) size (w, h) draws an ellipse. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawtriangle (x1, y1, x2, y2, x3, y3, R1-G1-B1-A1, R2-G2-B2-A2, OPTIONS) &lt;br /&gt;
 (x1, y1), (x2, y2), (x3, y3) Draw a triangle and vertex function. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Aa - put ANCHIERIASU &lt;br /&gt;
&lt;br /&gt;
 Example: $ drawtriangle (10,5,20,10,10,15200-100-100,, aa) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ imageabs (x, y, w, h, path, OPTIONS, n, alpha, OPTIONS2) &lt;br /&gt;
 Coordinates (x, y) size (w, h) show the images in the path is specified. &lt;br /&gt;
 Retained in memory and after resizing the image, if you raise the efficiency of the process see below. &lt;br /&gt;
 The image is referenced, the memory is removed from them. &lt;br /&gt;
 w, h in the original image size is omitted, and the cache. &lt;br /&gt;
 (However, w, h if you are already cached in memory and then the image size to be directly cached) &lt;br /&gt;
&lt;br /&gt;
扱ITAI a reduced rate if more than one &lt;br /&gt;
 Poor quality and will be expanded after the reduction. &lt;br /&gt;
 Nodisplay noexpansion and use, &lt;br /&gt;
 Cache memory may be the largest reduction in the rate of reduction in the rate of use. &lt;br /&gt;
&lt;br /&gt;
 If there are images true, if false is returned. &lt;br /&gt;
&lt;br /&gt;
 Dipsplays the image specified by path. &lt;br /&gt;
 after the image is resized, it is cached on the memory. &lt;br /&gt;
&lt;br /&gt;
 path: absolute path of the image (or an embedded image of AudioFile path) &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 ■ &amp;lt;appearance&amp;gt; &lt;br /&gt;
 nokeepaspect not maintain the aspect ratio (nodisplay, archive, icon options and non-exclusive). &lt;br /&gt;
 Hide nodisplay read only memory. &lt;br /&gt;
 noexpansion will reduce, not increase. &lt;br /&gt;
&lt;br /&gt;
 ■ &amp;lt;align&amp;gt; exclusive. &lt;br /&gt;
 Left right horizontal aryne specified. &lt;br /&gt;
 Specify vertical aryne top bottom. &lt;br /&gt;
&lt;br /&gt;
 ■ &amp;lt;misc&amp;gt; &lt;br /&gt;
 wc wildcard (*,?) enabled. &lt;br /&gt;
&lt;br /&gt;
 ■ &amp;lt;read engine&amp;gt; exclusive. &lt;br /&gt;
 archive archive reader through the path of the images. &lt;br /&gt;
 The format of the archive reader is path dependent, the absolute path of the archive | base path in the archive file. &lt;br /&gt;
 Example: C: \ aaa \ image.zip | bbb / ccc.jpg &lt;br /&gt;
 icon path is specified in the icon file (*. ico) to appear. &lt;br /&gt;
&lt;br /&gt;
 Audio artreader path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 If you do not have embedded images, Audio files to load the images folder. However slow. &lt;br /&gt;
 Audio artreader_front path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 Audio artreader_back path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 Audio artreader_disc path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 Audio artreader_icon path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 (artreader *** are currently disrecommended options because these option seem to be slow) &lt;br /&gt;
&lt;br /&gt;
 N rotateflip Index for &lt;br /&gt;
 One ninety &lt;br /&gt;
 2: 180 &lt;br /&gt;
 3: 270 &lt;br /&gt;
 4: flip horizontal &lt;br /&gt;
 Five ninety + flip horizontal &lt;br /&gt;
 6: Flipped vertically &lt;br /&gt;
 Seven ninety Flip Vertically + &lt;br /&gt;
&lt;br /&gt;
 Alpha 0-255 &lt;br /&gt;
 Opacity &lt;br /&gt;
&lt;br /&gt;
 OPTIONS2 (shadow effect) &lt;br /&gt;
 Glow: expand: colour &lt;br /&gt;
 Offset: x: y &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
     Example $ imageabs (10,10,50,50, C: \% album%. Jpg) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg, left top) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg,, 6) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album% .*, wc, 6) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg, bottom,, 128) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg, bottom,,, glow :2:0-0-0 offset: 4:4) &lt;br /&gt;
         $ imageabs (10,10,50,50,% path%, artreader) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ imageabs_rc (rw, rh, srcx, srcy, srcw, srch, x, y, path, OPTIONS, n, alpha, OPTIONS2) &lt;br /&gt;
 To view the clip and resize images. &lt;br /&gt;
 path specified by the image size (rw, rh) after resizing, &lt;br /&gt;
 Portion of the area (srcx, srcy, srcw, srch) coordinates (x, y) size (srcw, srch) to display. &lt;br /&gt;
&lt;br /&gt;
 In memory (rw, rh) cache. &lt;br /&gt;
 When you evaluate the TF (rw, rh) with changes in, to refresh the image. &lt;br /&gt;
 Therefore, rw, rh is to specify a fixed value. &lt;br /&gt;
&lt;br /&gt;
 If there are images true, if false is returned. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS (imageabs). &lt;br /&gt;
 nokeepaspect not maintain the aspect ratio &lt;br /&gt;
 Hide nodisplay read only memory &lt;br /&gt;
 Archive &lt;br /&gt;
 Icon &lt;br /&gt;
     (Left &lt;br /&gt;
       Hcener &lt;br /&gt;
        Right &lt;br /&gt;
        Top &lt;br /&gt;
        Vcenter &lt;br /&gt;
            bottom) &lt;br /&gt;
 N rotateflip Index for &lt;br /&gt;
 One ninety &lt;br /&gt;
 2: 180 &lt;br /&gt;
 3: 270 &lt;br /&gt;
 4: flip horizontal &lt;br /&gt;
 Five ninety + flip horizontal &lt;br /&gt;
 6: Flipped vertically &lt;br /&gt;
 Seven ninety Flip Vertically + &lt;br /&gt;
&lt;br /&gt;
 Alpha 0-255 &lt;br /&gt;
         Opacity &lt;br /&gt;
    &lt;br /&gt;
 Example: &lt;br /&gt;
 $ imageabs_rc (200100,0,0100,50,10,10, C: \% album%. jpg,, 6192) &lt;br /&gt;
 $ imageabs_rc (200100,0,0200100,10,10, C: \% album%. jpg,,) (= $ imageabs (10,10200100, C: \% album%. jpg, left top,,)) &lt;br /&gt;
 $ imageabs_rc (150120,0,0150120,20,15, C: \% album%. jpg, hcenter vcenter,) (= $ imageabs (20,15150120, C: \% album%. jpg,,,)) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● auxiliary drawing &lt;br /&gt;
&lt;br /&gt;
 $ getlastpos (elem) &lt;br /&gt;
 Display function imageabs, imageabs_rc right after, to get the coordinates to draw a picture. &lt;br /&gt;
 Also, measurestring use them when you get the results. &lt;br /&gt;
 If you are drawString, mempos available only immediately after the specified coordinates. &lt;br /&gt;
&lt;br /&gt;
    Elem element to retrieve. &lt;br /&gt;
 X: left &lt;br /&gt;
 Y: top &lt;br /&gt;
 W: width &lt;br /&gt;
 H: height &lt;br /&gt;
 R: right &lt;br /&gt;
 B: bottom &lt;br /&gt;
&lt;br /&gt;
 Example: &lt;br /&gt;
 $ Setworldtransform (2) &lt;br /&gt;
 $ Puts (img_path, C: \% album%. Jpg) &lt;br /&gt;
 $ imageabs (10,4100100, $ get (img_path), top noexpansion,) &lt;br /&gt;
 $ imageabs ($ getlastpos (x), $ getlastpos (b), $ getlastpos (w), 20, $ get (img_path), top nokeepaspect, 6) &lt;br /&gt;
 $ gradientrect ($ getlastpos (x), $ getlastpos (y), $ getlastpos (w), $ getlastpos (h),% el_backcolour% -128,% el_backcolour% -255) &lt;br /&gt;
 $ Setworldtransform (0) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ measurestring (text, x, y, W, H, OPTIONS) &lt;br /&gt;
 $ drawstring to calculate the area when drawing text. &lt;br /&gt;
 As a result, returns to the horizontal width of the viewing area. &lt;br /&gt;
 The display area is to get $ getlastpos. &lt;br /&gt;
 OPTIONS is the same as $ drawstring. &lt;br /&gt;
 Also, drawstring in, glow_aa glow if put in effect, &lt;br /&gt;
 Measurestring see the range of results and may not match. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ getimagewidth (path), $ getimageheight (path) &lt;br /&gt;
 The image path is specified in $ imageabs $ imageabs_rc of cache memory &lt;br /&gt;
 If the image has been resized in the horizontal width and vertical width returns. &lt;br /&gt;
 This means that only have $ imageabs $ imageabs_rc behind. &lt;br /&gt;
 nokeepaspect may be able to calculate the aspect ratio should be applied. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ setcoordinate (mode) &lt;br /&gt;
 $ setcoordinate (0, X, Y, W, H) &lt;br /&gt;
 $ setcoordinate (1, X, Y, R, B) &lt;br /&gt;
 Drawing function argument &amp;quot;(x, y, w, h)&amp;quot; designated by a, (x, y, right, bottom) change the designation. &lt;br /&gt;
 $ imageabs_rc and $ drawtriangle for the disabled. &lt;br /&gt;
 The X, Y, W, H is specified, you can change the default position if the specified coordinates omitted in the drawing functions. &lt;br /&gt;
 $ imageab, $ imageabs_rc and $ drawtriangle for the disabled. &lt;br /&gt;
&lt;br /&gt;
 Mode: Specifies the coordinate mode &lt;br /&gt;
 0 default (x, y, w, h) &lt;br /&gt;
 1 (x, y, right, bottom) &lt;br /&gt;
&lt;br /&gt;
  (x, y )&amp;lt;------ w -------&amp;gt; &lt;br /&gt;
     |----------------| &lt;br /&gt;
     | | &lt;br /&gt;
   h | | &lt;br /&gt;
     | | &lt;br /&gt;
     |________________| &lt;br /&gt;
                     (right, bottom) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ setworldtransform (mode) &lt;br /&gt;
 Changing the coordinate system. &lt;br /&gt;
 We can draw a line in another coordinate system is not changed. &lt;br /&gt;
 Group should be useful when you do multiple tracks and draw MATAIDA whole. &lt;br /&gt;
 Enabled to view images. &lt;br /&gt;
 Popup prohibited. &lt;br /&gt;
 (TF see early examples.) &lt;br /&gt;
&lt;br /&gt;
 Mode &lt;br /&gt;
 0: default &lt;br /&gt;
 The origin of each track (x, y) = (0,0), the top left of each track. &lt;br /&gt;
&lt;br /&gt;
 1: group common coordinate system &lt;br /&gt;
 Group and the origin of each track (x, y) = (0,0) Group and the upper left of the line. &lt;br /&gt;
 % el_height% = (% el_item_count2% +% el_group_row%) *% el_row_height% will. &lt;br /&gt;
&lt;br /&gt;
 2: item list of common coordinate system &lt;br /&gt;
 The origin of each track (x, y) = (0,0) and upper left of the group&#039;s first line of the track. &lt;br /&gt;
 % el_height% =% el_item_count2% *% el_row_height% will. &lt;br /&gt;
&lt;br /&gt;
 default &lt;br /&gt;
   (0,0) &lt;br /&gt;
      |----------------| &lt;br /&gt;
      |________________| &lt;br /&gt;
                     (el_width, el_height) &lt;br /&gt;
&lt;br /&gt;
 common coordinate system group &lt;br /&gt;
   (0,0) &lt;br /&gt;
      |----------------| &lt;br /&gt;
      | Group header | &lt;br /&gt;
      |----------------| &lt;br /&gt;
      |----------------| &lt;br /&gt;
      |----------------| &lt;br /&gt;
      |----------------| &lt;br /&gt;
      |________________| &lt;br /&gt;
                     (el_width, el_height) &lt;br /&gt;
&lt;br /&gt;
 item list of common coordinate system &lt;br /&gt;
      |----------------| &lt;br /&gt;
      | Group header | &lt;br /&gt;
 (0,0 )|----------------| &lt;br /&gt;
      |----------------| &lt;br /&gt;
      |----------------| &lt;br /&gt;
      |----------------| &lt;br /&gt;
      |________________| &lt;br /&gt;
                     (el_width, el_height) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ enabledraw (mode) &lt;br /&gt;
 System function draw ($ draw **** or $ imageabs **) to control whether or not the drawing. &lt;br /&gt;
 Called back to the drawing of this function on / off. &lt;br /&gt;
 Mainly used to control the drawing of the empty line. &lt;br /&gt;
&lt;br /&gt;
 Mode &lt;br /&gt;
 0: disable the function of drawing &lt;br /&gt;
 1: Enable &lt;br /&gt;
&lt;br /&gt;
 Example: $ enabledraw (1) &lt;br /&gt;
 $ Enabledraw (% el_is_valid%) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ getsyscolour (index) &lt;br /&gt;
 The r-g-b color system in the form of returns. &lt;br /&gt;
&lt;br /&gt;
 index: [0-30] color index system &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ averagecolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b-a to the average color of the form. &lt;br /&gt;
 (Colour1 + colour2 +・・・) / N &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ blendcolour (colour1, w1, colour2, w2, [,・・・]) &lt;br /&gt;
 R-g-b-a return with the average weight in the form. &lt;br /&gt;
 (w1 * colur1 + w2 * colour2 +・・・+ wN * colourN) / (w1 + w2 +・・・+ wN) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ addcolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b-a to add the color of the form. &lt;br /&gt;
・・・Colour1 + colour2 + + colourN &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ subcolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b-a to form a color subtraction. &lt;br /&gt;
 Colour1 - colour2 - colour3・・・- colourN &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ xorcolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b of the color of the form to the XOR operator. Returns only colour1 alpha channel. &lt;br /&gt;
 colour1 xor colour2 xor colour3・・・xor colourN &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● General-purpose system function &lt;br /&gt;
 Basically, [Track list] [Group header] [Per Second] [Group row] [Min item num] [Popup] valid. &lt;br /&gt;
&lt;br /&gt;
 $ getgroupformat (group_index) &lt;br /&gt;
 group_index groups are specified in a group format and return the result as TF. &lt;br /&gt;
 group_index: to specify the group or what number (counting from 0). &lt;br /&gt;
 % el_group_format% = $ getgroupformat (% el_total_group_index%) relationship. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ findfile (path, [path2, path3 ,...]) &lt;br /&gt;
 path (wildcards accepted) to be specified in the file exists, returns the first file. &lt;br /&gt;
 If you do not have the file does not return anything. (Strictly speaking, &amp;quot;false&amp;quot; returns) &lt;br /&gt;
 Path can be specified. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ el_scale (val, factor [, DIV]) &lt;br /&gt;
 val * factor/100 or val * factor / DIV returns. &lt;br /&gt;
 val and the overflow factor is too large. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● GDI drawing functions of &lt;br /&gt;
 Using the GDI to draw. Simple minutes, may be faster. &lt;br /&gt;
&lt;br /&gt;
 $ drawtext (text, x, y, W, H, r-g-b, OPTIONS) &lt;br /&gt;
 GDI text drawing functions &lt;br /&gt;
 Text coordinates (x, y) in output &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Alain left hcenter right specified horizontal &lt;br /&gt;
 Alain specified top vcenter bottom vertical &lt;br /&gt;
 Not noclip clip &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawtextex (text, x, y, W, H, r-g-b, OPTIONS) &lt;br /&gt;
 GDI drawing functions text_2 &lt;br /&gt;
 Text coordinates (x, y) in output &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Alain left hcenter right specified horizontal &lt;br /&gt;
 Alain specified top vcenter bottom vertical &lt;br /&gt;
 Not noclip clip &lt;br /&gt;
 Allow specified wrap wraparound (vcenter, bottom and exclusive) &lt;br /&gt;
 end_ellipsis If you clip text, replace the end of the text ... &lt;br /&gt;
 &lt;br /&gt;
 Example: $ drawtextex (text, 0,0,% _width%,% _height% ,0-0-0, hcenter vcenter end_ellipsis) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ gettextwidth (text, [FONTNAME, SIZE, OPTIONS]) &lt;br /&gt;
 GDI (drawtext, drawtextex) returns the width in the text when drawing horizontal text. &lt;br /&gt;
 can specify the font ($ font option). specified font is optional &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ gettextheight ([FONTNAME, SIZE, OPTIONS]) &lt;br /&gt;
 GDI returns vertical width of text when drawn. &lt;br /&gt;
 can specify the font ($ font option). specified font is optional &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ fillrect (x, y, w, h, r-g-b, RESERVED) &lt;br /&gt;
 Filled rectangle function &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ fillroundrect (x, y, w, h, w2, h2, r1-g1-b1, r2-g2-b2) &lt;br /&gt;
 Function of the fill rectangle with rounded corners &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ■ ■ ■ Popup system function ■ ■ ■ &lt;br /&gt;
 [Popup (Background)], [Popup (Track)] domain. &lt;br /&gt;
&lt;br /&gt;
 $ popupsize (w, h) &lt;br /&gt;
 Pop-up function to reduce the size. &lt;br /&gt;
 In other words, &lt;br /&gt;
 W &amp;lt;max size (width) &lt;br /&gt;
 H &amp;lt;max size (height) &lt;br /&gt;
 Must satisfy. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ popuphide () &lt;br /&gt;
 Do not pop up. &lt;br /&gt;
 At that point and call it once and decided not to pop up. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ popuptracknum (num) &lt;br /&gt;
 The maximum number of tracks to reduce the num treatment. &lt;br /&gt;
 Popup (Background) only available. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 [Note]: drawstring with DrawText and drawtextex &lt;br /&gt;
          Characters are drawn in different ways, good and bad points. &lt;br /&gt;
         And not even being able to function at all (probably) is not a bug. &lt;br /&gt;
         DrawText problem now is if I do not use. &lt;br /&gt;
&lt;br /&gt;
 [Aside]: I take the argument to the rgba color function in a format other than $ rgb (r, g, b) can be longer (should). &lt;br /&gt;
         DrawText The only argument in the text, $ rgb $ transition function and can specify the color using the function (should be).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= External links =&lt;br /&gt;
* [http://foo2k.chottu.net/ Official page with download link] (Japanese)&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=62133 Discussion thread]&lt;/div&gt;</summary>
		<author><name>Chiwou</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Panel_Stack_Splitter_(foo_uie_panel_splitter)&amp;diff=19480</id>
		<title>Foobar2000:Components 0.9/Panel Stack Splitter (foo uie panel splitter)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Panel_Stack_Splitter_(foo_uie_panel_splitter)&amp;diff=19480"/>
		<updated>2009-03-10T22:27:44Z</updated>

		<summary type="html">&lt;p&gt;Chiwou: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{fb2k}}&lt;br /&gt;
{{stub}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;foo_uie_panel_splitter&#039;&#039;&#039; is an extension for Columns UI that allows you to place objects freely within the foobar2000 window, including panels, text (e.g., track info), and images.&lt;br /&gt;
&lt;br /&gt;
foobar2000 v0.9.5.1+, Columns UI 0.3+&lt;br /&gt;
&lt;br /&gt;
= Requirements =&lt;br /&gt;
* [http://www.foobar2000.org/ foobar2000 v0.9.5.1+]&lt;br /&gt;
* [http://yuo.be/columns.php Columns UI 0.3+]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Read me (translated from the Japanese original) =&lt;br /&gt;
&lt;br /&gt;
foo_uie_panel_splitter.dll v0.3.6.3 (alpha ver) &lt;br /&gt;
 for foobar2000 v0.9.5.1 +, Columns UI0.3 +, WindowsXP + &lt;br /&gt;
&lt;br /&gt;
 Columns UI panel to place the splitter &lt;br /&gt;
 And without borders, or a little over a panel and set the highest possible degree of freedom. &lt;br /&gt;
 Has been stable or loose? &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Description &lt;br /&gt;
 Add and remove panels from the basic layout of the ColumnsUI do. &lt;br /&gt;
 They can add from the context menu. &lt;br /&gt;
&lt;br /&gt;
 Placement of the panel and automatic alignment mode, forced mode is set. &lt;br /&gt;
 Auto-deploy mode, a horizontal (Horizontal) or placed in a vertical direction (Vertical) or choose a place. &lt;br /&gt;
 forced layout mode that is placed on the force placed on the panel. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 size: size of the display panel (Horizontal size if horizontal, Vertical Vertical size of it) &lt;br /&gt;
 lock size: a place without scaling. &lt;br /&gt;
               off when the size of each panel to be placed according to the Splitter and the appropriate scaling for size. &lt;br /&gt;
               ± 1 to lock the current situation that would blur pixel minutes. &lt;br /&gt;
               -&amp;gt; So hard to fix, could not fix. &lt;br /&gt;
&lt;br /&gt;
 forced layout: left Top width right under it to force the panel to be placed in the specified range. &lt;br /&gt;
               (size and auto-scaling is disabled) &lt;br /&gt;
&lt;br /&gt;
               If you stacked the panel appears on the front panel as a list of the top panel &lt;br /&gt;
               (But depends on the implementation of the child panel. I have come to the front panel profusely.) &lt;br /&gt;
               Title Formatting is enabled. &lt;br /&gt;
               % _width%% _height% in the horizontal width of the Panel Stack Splitter, you can see the vertical width. &lt;br /&gt;
               Example: &lt;br /&gt;
               left: $ div (% _width%, 4) &lt;br /&gt;
               top: $ div (% _height%, 4) &lt;br /&gt;
               width: $ div (% _width%, 2) &lt;br /&gt;
               height: $ div (% _height%, 2) &lt;br /&gt;
&lt;br /&gt;
               Also, Splitter mode to specify a value relative to size. &lt;br /&gt;
               is on the use parsentage value is, Splitter percentage for the size of the [0-100] can be specified. &lt;br /&gt;
               use parsentage value of setting the example on: &lt;br /&gt;
               left: 25 &lt;br /&gt;
               top: 25 &lt;br /&gt;
               width: 50 &lt;br /&gt;
               height: 50 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 padding: Add a space around the panel. &lt;br /&gt;
               Title Formatting to put the numbers are fixed, so invalid. &lt;br /&gt;
               If the automatic alignment panels, padding can be resized with the mouse as if the border is set. &lt;br /&gt;
               enable resizable border with on / off can be &lt;br /&gt;
&lt;br /&gt;
 caption: The name of the panel, the identifier &lt;br /&gt;
 use background color: the color specified, the background fill. &lt;br /&gt;
 use image: specify a fixed background image. TitleFormatting is disabled. &lt;br /&gt;
 pseudo transparent: splitter to simulate a transparent background. (splitter and if you use the nest) &lt;br /&gt;
&lt;br /&gt;
 [Note] &lt;br /&gt;
   ColumnsUI in the panel is to present the panel with the transparent background feature, &lt;br /&gt;
   use background color or use image backgrounds are often not transparent and does not use the panel. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 titleformat mode on startup: when you start the TitleFormat PerTrack modes. &lt;br /&gt;
       now playing TF play that track &lt;br /&gt;
       follow cursor on the selected tracks in playlist &lt;br /&gt;
       last mode at the end of the previous mode (the switch mode button to save) &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
 title formatting script: &lt;br /&gt;
 Titleformat here to describe, and decorative backgrounds. However, the child is on the panel can not be drawn. &lt;br /&gt;
&lt;br /&gt;
 Extended Command Reference &lt;br /&gt;
 Sensitive argument, or optional, and not implemented. &lt;br /&gt;
 Note: Do not waste the space. (Carriage return accepted) &lt;br /&gt;
&lt;br /&gt;
 in title formatting script is evaluated, &lt;br /&gt;
 Today &lt;br /&gt;
 Per Track: track and play and play・When the user changes the size of the state changed when paused. Function when the REFRESH button. &lt;br /&gt;
 Per Second: second, when a change in the state play in the function when the REFRESH button. &lt;br /&gt;
&lt;br /&gt;
 [Note] &lt;br /&gt;
 Per Second, especially that not only can handle high-stress functions. &lt;br /&gt;
 GDI is recommended that you use the drawing functions. &lt;br /&gt;
&lt;br /&gt;
 [Field] &lt;br /&gt;
 % ps_width% &lt;br /&gt;
   Returns the width of the Splitter &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % ps_height% &lt;br /&gt;
   Returns the height of the Splitter &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % ps_tfmode% &lt;br /&gt;
    TF mode returns. (Per Track when enabled) &lt;br /&gt;
    0 nowplaying mode &lt;br /&gt;
    1 follow cursor mode &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % ps_isplaying% &lt;br /&gt;
 Whether during playback &lt;br /&gt;
&lt;br /&gt;
 % ps_ispause% &lt;br /&gt;
 Whether suspended &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % ps_foobar2000_path% &lt;br /&gt;
 Foobar2000 executable path &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 [Function] &lt;br /&gt;
 $ font (name, size, OPTIONS) &lt;br /&gt;
 Font settings. &lt;br /&gt;
 OPTIONS: bold italic underline strikeout &lt;br /&gt;
&lt;br /&gt;
 Example: $ font (Tahoma, 10, bold italic) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawstring (text, x, y, W, H, rgba, OPTIONS [, OPTIONS2]) &lt;br /&gt;
 String drawing functions. &lt;br /&gt;
 Text coordinates (x, y) to draw on. &lt;br /&gt;
 [Note] This function is a string and DrawText drawtextex not only in view. &lt;br /&gt;
 Maybe only TrueType fonts. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS: Alain specified, the specified quality of drawing, and to specify the clip. &lt;br /&gt;
 Alain left hcenter right specified horizontal &lt;br /&gt;
 Alain specified top vcenter bottom vertical &lt;br /&gt;
&lt;br /&gt;
 nowrap not wraparound &lt;br /&gt;
&lt;br /&gt;
  noaa ClearType and disable anti-aliasing. &lt;br /&gt;
 aa put the anti-aliasing mode. ClearType font such as resistance to the anti-aliasing. &lt;br /&gt;
 hq high quality rendering mode. ClearType mode. (default now) &lt;br /&gt;
 glow_aa glow option to use a special mode. (noaa, aa, hq exclusive) &lt;br /&gt;
&lt;br /&gt;
 If you set the trimming trimchar trimword fit the display range &lt;br /&gt;
 elipchar elipword the last to fit the display range If・・・set to replace the &lt;br /&gt;
&lt;br /&gt;
 mempos getlastpos, to be able to get the coordinates of the drawing. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS2 (optional experimental, experimental option) &lt;br /&gt;
 Specifying the terms of the glow effect. &lt;br /&gt;
 Specified in the OPTIONS glow_aa only, outline and semibold is available. &lt;br /&gt;
&lt;br /&gt;
 glow: expand: colour [: strength] glow options &lt;br /&gt;
 Expand - [0-5] &lt;br /&gt;
 Colour - r-g-b &lt;br /&gt;
 Strength - [0-3] glow_aa case of disabled &lt;br /&gt;
&lt;br /&gt;
 Offset: x: y &lt;br /&gt;
 X - glow in the horizontal offset &lt;br /&gt;
 Y - glow in the vertical offset &lt;br /&gt;
&lt;br /&gt;
 ↓ glow_aa be used only when the specified &lt;br /&gt;
 outline: colour color draws a thin border of the specified character (if glow_aa) &lt;br /&gt;
 Colour r-g-b &lt;br /&gt;
&lt;br /&gt;
 semibold to the characters a little thick (if glow_aa) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ※ These specifications may be changed. &lt;br /&gt;
 Changes in the glow, especially drawing, and semibold outline and may be discontinued. &lt;br /&gt;
 ※ glow is a heavy process. (Especially the pseudo transparent) &lt;br /&gt;
&lt;br /&gt;
 Example, $ drawstring (abcd, 10,10,, ,255-128-64-128,) &lt;br /&gt;
 $ drawstring (abcd, 10,10,, ,255-128-64-128, left vcenter, glow :2:255-255-255) &lt;br /&gt;
 $ drawstring (efgh, 10,10,, ,255-255-255, vcenter glow_aa, glow :1:32-168-268 semibold) &lt;br /&gt;
 $ drawstring (wxyz, 10,10,, ,255-255-255, glow_aa, glow :0:32-168-268 semibold offset: 2:1 outline :32-168-268) &lt;br /&gt;
 $ drawstring (wxyz, 10,10,, ,255-255-255,, glow :2:32-168-268: 1) &lt;br /&gt;
 $ drawstring (wxyz, 10,10,, ,255-255-255, elipchar) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawrect (x, y, w, h, R1-G1-B1-A1, R2-G2-B2-A2, OPTIONS) &lt;br /&gt;
 Rectangular drawing functions. &lt;br /&gt;
 Coordinates (x, y) size (w, h) Draws a rectangle. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Aa - put ANCHIERIASU &lt;br /&gt;
&lt;br /&gt;
 Example $ drawrect (0,50,50,50,255-128-64-128,, aa) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ gradientrect (x, y, w, h, r1-g1-b1-a1, r2-g2-b2-a2, OPTIONS, peak_point) &lt;br /&gt;
 Gradient fill in the drawing functions in the rectangle. &lt;br /&gt;
 Coordinates (x, y) size (w, h) Draws a rectangle. &lt;br /&gt;
 R1-g1-b1-a1 Gradient start color &lt;br /&gt;
 R2-g2-b2-a2 Gradient end color &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Vertical gradient of vertical &lt;br /&gt;
 Gradient horizontal horizontal &lt;br /&gt;
 Aa put ANCHIERIASU &lt;br /&gt;
 how nonlinear nonlinear gradient &lt;br /&gt;
&lt;br /&gt;
 Peak_point: 0-100 &lt;br /&gt;
 Shifted the position of the gradient endpoints. &lt;br /&gt;
 0 by default, r1-g1-b1-a1 -&amp;gt; r2-g2-b2-a2 &lt;br /&gt;
 50 is when, r1-g1-b1-a1 -&amp;gt; r2-g2-b2-a2 -&amp;gt; r1-g1-b1-a1, and. &lt;br /&gt;
&lt;br /&gt;
 Example: $ gradientrect (0,50,50,50255-128-64-128255-255-255, vertical aa) &lt;br /&gt;
 $ gradientrect (0,50,50,50255-128-64-128255-255-255,, 10) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawblurrect (x, y, w, h, colour, level) &lt;br /&gt;
 Filling a rectangle drawing functions to blur the outline. &lt;br /&gt;
 Level [1-7] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawfocusrect (x, y, w, h) &lt;br /&gt;
 Function to draw a dotted line shows the focus rectangle frame specified. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawthemerect (x, y, w, h, control_name, partId, stateId) &lt;br /&gt;
 VisualStyle in the rectangle with a control (button or progress bar) function to draw. &lt;br /&gt;
 The only practical to draw a picture may be low. &lt;br /&gt;
 VisualStyle not defined in control will not be drawn. &lt;br /&gt;
 At least WindowXP required. &lt;br /&gt;
&lt;br /&gt;
 control_name: Specify the name of the type of control you want to draw. One of the following. &lt;br /&gt;
 window button rebar toolbar status listview header progress tab trackbar tooltip treeview spin scrollbar &lt;br /&gt;
 edit combobox taskbar taskband startpanel explorerbar &lt;br /&gt;
&lt;br /&gt;
 PartId: the parts you want to draw ID. Could we use the following number in the range for each control as a guide. &lt;br /&gt;
 In most cases, less than what I have defined. &lt;br /&gt;
 Window: 1-37 &lt;br /&gt;
 Button rebar listview tooltip: 1-5 &lt;br /&gt;
 Toolbar: 1-6 &lt;br /&gt;
 Status treeview taskband: 1-3 &lt;br /&gt;
 Header spin: 1-4 &lt;br /&gt;
 Progress: 1-4 &lt;br /&gt;
 Tab trackbar scrollbar :1-10 &lt;br /&gt;
 Edit: 1-2 &lt;br /&gt;
 Combobox: 1 &lt;br /&gt;
 Taskbar: 1-8 &lt;br /&gt;
 Startpanel: 1-11 &lt;br /&gt;
 Explorerbar: 1-12 &lt;br /&gt;
&lt;br /&gt;
 StateId: the state and selected ID. If the component does not have to specify the state is 0. &lt;br /&gt;
 stateId is 0 or 1 if not drawn in, the parts are not defined. &lt;br /&gt;
&lt;br /&gt;
 Example: $ drawthemerect (0,0,% el_width%,% el_height%, tab, 10,0) / / tab of body parts drawn &lt;br /&gt;
 $ drawthemerect (,,,, progress, 3,0) / / Draw the progress bar bar &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawroundrect (x, y, w, h, w2, h2, R1-G1-B1-A1, R2-G2-B2-A2, RESERVED) &lt;br /&gt;
 Draw a rectangle rolled angle function. &lt;br /&gt;
 Coordinates (x, y) size (w, h) to draw a rectangle with the corners rolled. &lt;br /&gt;
 Rounded the corner, w2, h2 can be adjusted. &lt;br /&gt;
 w&amp;gt; 4 * w2 &amp;amp; &amp;amp; h&amp;gt; 4 * h2 satisfy the need. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
     Example $ drawroundrect (10,20,50,50,4,4255-255-128-255,,) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawellipse (x, y, w, h, R1-G1-B1-A1, R2-G2-B2-A2, RESERVED) &lt;br /&gt;
 Ellipse drawing functions. &lt;br /&gt;
 Coordinates (x, y) size (w, h) draws an ellipse. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawtriangle (x1, y1, x2, y2, x3, y3, R1-G1-B1-A1, R2-G2-B2-A2, OPTIONS) &lt;br /&gt;
 (x1, y1), (x2, y2), (x3, y3) Draw a triangle and vertex function. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Aa - put ANCHIERIASU &lt;br /&gt;
&lt;br /&gt;
 Example: $ drawtriangle (10,5,20,10,10,15200-100-100,, aa) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ imageabs (x, y, w, h, path, OPTIONS, n, alpha, OPTIONS2) &lt;br /&gt;
 Coordinates (x, y) size (w, h) show the images in the path is specified. &lt;br /&gt;
 Retained in memory and after resizing the image, if you raise the efficiency of the process see below. &lt;br /&gt;
 The image is referenced, the memory is removed from them. &lt;br /&gt;
 w, h in the original image size is omitted, and the cache. &lt;br /&gt;
 (However, w, h if you are already cached in memory and then the image size to be directly cached) &lt;br /&gt;
&lt;br /&gt;
扱ITAI a reduced rate if more than one &lt;br /&gt;
 Poor quality and will be expanded after the reduction. &lt;br /&gt;
 Nodisplay noexpansion and use, &lt;br /&gt;
 Cache memory may be the largest reduction in the rate of reduction in the rate of use. &lt;br /&gt;
&lt;br /&gt;
 If there are images true, if false is returned. &lt;br /&gt;
&lt;br /&gt;
 Dipsplays the image specified by path. &lt;br /&gt;
 after the image is resized, it is cached on the memory. &lt;br /&gt;
&lt;br /&gt;
 path: absolute path of the image (or an embedded image of AudioFile path) &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 ■ &amp;lt;appearance&amp;gt; &lt;br /&gt;
 nokeepaspect not maintain the aspect ratio (nodisplay, archive, icon options and non-exclusive). &lt;br /&gt;
 Hide nodisplay read only memory. &lt;br /&gt;
 noexpansion will reduce, not increase. &lt;br /&gt;
&lt;br /&gt;
 ■ &amp;lt;align&amp;gt; exclusive. &lt;br /&gt;
 Left right horizontal aryne specified. &lt;br /&gt;
 Specify vertical aryne top bottom. &lt;br /&gt;
&lt;br /&gt;
 ■ &amp;lt;misc&amp;gt; &lt;br /&gt;
 wc wildcard (*,?) enabled. &lt;br /&gt;
&lt;br /&gt;
 ■ &amp;lt;read engine&amp;gt; exclusive. &lt;br /&gt;
 archive archive reader through the path of the images. &lt;br /&gt;
 The format of the archive reader is path dependent, the absolute path of the archive | base path in the archive file. &lt;br /&gt;
 Example: C: \ aaa \ image.zip | bbb / ccc.jpg &lt;br /&gt;
 icon path is specified in the icon file (*. ico) to appear. &lt;br /&gt;
&lt;br /&gt;
 Audio artreader path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 If you do not have embedded images, Audio files to load the images folder. However slow. &lt;br /&gt;
 Audio artreader_front path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 Audio artreader_back path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 Audio artreader_disc path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 Audio artreader_icon path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 (artreader *** are currently disrecommended options because these option seem to be slow) &lt;br /&gt;
&lt;br /&gt;
 N rotateflip Index for &lt;br /&gt;
 One ninety &lt;br /&gt;
 2: 180 &lt;br /&gt;
 3: 270 &lt;br /&gt;
 4: flip horizontal &lt;br /&gt;
 Five ninety + flip horizontal &lt;br /&gt;
 6: Flipped vertically &lt;br /&gt;
 Seven ninety Flip Vertically + &lt;br /&gt;
&lt;br /&gt;
 Alpha 0-255 &lt;br /&gt;
 Opacity &lt;br /&gt;
&lt;br /&gt;
 OPTIONS2 (shadow effect) &lt;br /&gt;
 Glow: expand: colour &lt;br /&gt;
 Offset: x: y &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
     Example $ imageabs (10,10,50,50, C: \% album%. Jpg) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg, left top) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg,, 6) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg, bottom,, 128) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg, bottom,,, glow :2:0-0-0 offset: 4:4) &lt;br /&gt;
         $ imageabs (10,10,50,50,% path%, artreader) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ imageabs_rc (rw, rh, srcx, srcy, srcw, srch, x, y, path, OPTIONS, n, alpha, OPTIONS2) &lt;br /&gt;
 To view the clip and resize images. &lt;br /&gt;
 path specified by the image size (rw, rh) after resizing, &lt;br /&gt;
 Portion of the area (srcx, srcy, srcw, srch) coordinates (x, y) size (srcw, srch) to display. &lt;br /&gt;
&lt;br /&gt;
 In memory (rw, rh) cache. &lt;br /&gt;
 When you evaluate the TF (rw, rh) with changes in, to refresh the image. &lt;br /&gt;
 Therefore, rw, rh is to specify a fixed value. &lt;br /&gt;
&lt;br /&gt;
 If there are images true, if false is returned. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS (imageabs). &lt;br /&gt;
 nokeepaspect not maintain the aspect ratio &lt;br /&gt;
 Hide nodisplay read only memory &lt;br /&gt;
 Archive &lt;br /&gt;
 Icon &lt;br /&gt;
     (Left &lt;br /&gt;
       Hcener &lt;br /&gt;
        Right &lt;br /&gt;
        Top &lt;br /&gt;
        Vcenter &lt;br /&gt;
            bottom) &lt;br /&gt;
 N rotateflip Index for &lt;br /&gt;
 One ninety &lt;br /&gt;
 2: 180 &lt;br /&gt;
 3: 270 &lt;br /&gt;
 4: flip horizontal &lt;br /&gt;
 Five ninety + flip horizontal &lt;br /&gt;
 6: Flipped vertically &lt;br /&gt;
 Seven ninety Flip Vertically + &lt;br /&gt;
&lt;br /&gt;
 Alpha 0-255 &lt;br /&gt;
         Opacity &lt;br /&gt;
    &lt;br /&gt;
 Example: &lt;br /&gt;
 $ imageabs_rc (200100,0,0100,50,10,10, C: \% album%. jpg,, 6192) &lt;br /&gt;
 $ imageabs_rc (200100,0,0200100,10,10, C: \% album%. jpg,,) (= $ imageabs (10,10200100, C: \% album%. jpg, left top,,)) &lt;br /&gt;
 $ imageabs_rc (150120,0,0150120,20,15, C: \% album%. jpg, hcenter vcenter,) (= $ imageabs (20,15150120, C: \% album%. jpg,,,)) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawimage (x, y, w, h, path, OPTIONS, n, aplha) &lt;br /&gt;
 Coordinates (x, y) size (w, h) show the images in the path is specified. &lt;br /&gt;
 $ Imageabs similar. &lt;br /&gt;
 w and h show the size of the original omitted. &lt;br /&gt;
 From memory immediately after display processing will be removed. &lt;br /&gt;
 TF to be reloaded each time the images are evaluated. &lt;br /&gt;
 &lt;br /&gt;
    ※ You can see a huge image, the amount of occupied memory減RASHITAKATTARI to see more pictures, &lt;br /&gt;
      imageabs for those who do not like the resizing process. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS: nokeepaspect not maintain aspect ratio &lt;br /&gt;
 Left &lt;br /&gt;
 Right &lt;br /&gt;
 Top &lt;br /&gt;
 Bottom &lt;br /&gt;
&lt;br /&gt;
    n: rotateflip index for &lt;br /&gt;
        One ninety &lt;br /&gt;
        2: 180 &lt;br /&gt;
        3: 270 &lt;br /&gt;
        4: flip horizontal &lt;br /&gt;
        Five ninety + flip horizontal &lt;br /&gt;
        6: Flipped vertically &lt;br /&gt;
        Seven ninety Flip Vertically + &lt;br /&gt;
&lt;br /&gt;
     alpha 0-255 &lt;br /&gt;
         Opacity (transparency) &lt;br /&gt;
&lt;br /&gt;
 ● auxiliary drawing &lt;br /&gt;
&lt;br /&gt;
 $ getlastpos (elem) &lt;br /&gt;
 Display function imageabs, imageabs_rc right after, to get the coordinates to draw a picture. &lt;br /&gt;
 Also, measurestring use them when you get the results. &lt;br /&gt;
 If you are drawString, mempos available only immediately after the specified coordinates. &lt;br /&gt;
&lt;br /&gt;
    Elem element to retrieve. &lt;br /&gt;
 X: left &lt;br /&gt;
 Y: top &lt;br /&gt;
 W: width &lt;br /&gt;
 H: height &lt;br /&gt;
 R: right &lt;br /&gt;
 B: bottom &lt;br /&gt;
&lt;br /&gt;
 Example: &lt;br /&gt;
 $ Setworldtransform (2) &lt;br /&gt;
 $ Puts (img_path, C: \% album%. Jpg) &lt;br /&gt;
 $ imageabs (10,4100100, $ get (img_path), top noexpansion,) &lt;br /&gt;
 $ imageabs ($ getlastpos (x), $ getlastpos (b), $ getlastpos (w), 20, $ get (img_path), top nokeepaspect, 6) &lt;br /&gt;
 $ gradientrect ($ getlastpos (x), $ getlastpos (y), $ getlastpos (w), $ getlastpos (h),% el_backcolour% -128,% el_backcolour% -255) &lt;br /&gt;
 $ Setworldtransform (0) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ measurestring (text, x, y, W, H, OPTIONS) &lt;br /&gt;
 $ drawstring to calculate the area when drawing text. &lt;br /&gt;
 As a result, returns to the horizontal width of the viewing area. &lt;br /&gt;
 The display area is to get $ getlastpos. &lt;br /&gt;
 OPTIONS is the same as $ drawstring. &lt;br /&gt;
 Also, drawstring in, glow_aa glow if put in effect, &lt;br /&gt;
 Measurestring see the range of results and may not match. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ getimagewidth (path), $ getimageheight (path) &lt;br /&gt;
 The image path is specified in $ imageabs $ imageabs_rc of cache memory &lt;br /&gt;
 If the image has been resized in the horizontal width and vertical width returns. &lt;br /&gt;
 This means that only have $ imageabs $ imageabs_rc behind. &lt;br /&gt;
 nokeepaspect may be able to calculate the aspect ratio should be applied. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ setparcentmode (bx, by, bw, bh) &lt;br /&gt;
    Set the mode to specify the coordinates. &lt;br /&gt;
    Window space &lt;br /&gt;
    (0,0) ~ (% _width%,% _height%) where a, &lt;br /&gt;
    Percentage specified in the mode, (0,0) to (100100) mapping. &lt;br /&gt;
    x, y, w, h can be set individually. &lt;br /&gt;
    x, y, w, h all affect the function of one argument. &lt;br /&gt;
&lt;br /&gt;
    bx x coordinate specified mode &lt;br /&gt;
        0: Splitter mode specified in absolute coordinates &lt;br /&gt;
        1: Splitter value relative to the size (percentage) and designated. &lt;br /&gt;
    mode specified by y coordinates &lt;br /&gt;
    bw w coordinates specified mode &lt;br /&gt;
    bh h coordinates specified mode &lt;br /&gt;
&lt;br /&gt;
 $ getsyscolour (index) &lt;br /&gt;
 The r-g-b color system in the form of returns. &lt;br /&gt;
&lt;br /&gt;
 index: [0-30] color index system &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ averagecolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b-a to the average color of the form. &lt;br /&gt;
 (Colour1 + colour2 +・・・) / N &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ blendcolour (colour1, w1, colour2, w2, [,・・・]) &lt;br /&gt;
 R-g-b-a return with the average weight in the form. &lt;br /&gt;
 (w1 * colur1 + w2 * colour2 +・・・+ wN * colourN) / (w1 + w2 +・・・+ wN) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ addcolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b-a to add the color of the form. &lt;br /&gt;
・・・Colour1 + colour2 + + colourN &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ subcolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b-a to form a color subtraction. &lt;br /&gt;
 Colour1 - colour2 - colour3・・・- colourN &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ findfile (path, [path2, path3 ,...]) &lt;br /&gt;
 path (wildcards accepted) to be specified in the file exists, returns the first file. &lt;br /&gt;
 If you do not have the file does not return anything. (Strictly speaking, &amp;quot;false&amp;quot; returns) &lt;br /&gt;
 Path can be specified. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● function button &lt;br /&gt;
&lt;br /&gt;
 $ textbutton (x, y, w, h, text, mover_text, command, options1, options2) &lt;br /&gt;
    Create a button. &lt;br /&gt;
    Per Track only available. Per Second is not to write. &lt;br /&gt;
&lt;br /&gt;
    text: the button label &lt;br /&gt;
    mover_text: the button label when mouse over &lt;br /&gt;
&lt;br /&gt;
    command: &amp;quot;Type of instruction: arguments&amp;quot; specified in the form of &lt;br /&gt;
              ※ be no extra spaces &lt;br /&gt;
              ; Going to be separated by a specified multiple orders. &lt;br /&gt;
              A few instructions that can be specified. &lt;br /&gt;
              Very difficult to implement. . . &lt;br /&gt;
              : And; the splitter so that the characters and words in these arguments, &lt;br /&gt;
              Could not parse well. &lt;br /&gt;
&lt;br /&gt;
    Note 1: Do not specify the order processing time. &lt;br /&gt;
    Note 2: If you specify more than one instruction, the instruction execution order is not guaranteed. &lt;br /&gt;
              Especially if WINDOWSIZE and COMMAND is specified, WINDOWSIZE probably be better to run. &lt;br /&gt;
              COMMAND, CONTEXT and others, the order may be warranted. &lt;br /&gt;
&lt;br /&gt;
       COMMAND: command_path &lt;br /&gt;
               command_path to run the command specified by menu. &lt;br /&gt;
               COMMAND: View / Equalizer and &lt;br /&gt;
               COMMAND: File / Preferences; COMMAND: Playback / Play &lt;br /&gt;
               To specify that. &lt;br /&gt;
               ※ You can use the input help in setting some of them. . . &lt;br /&gt;
               TF command_path Note also that as &lt;br /&gt;
               COMMAND: &#039;View / Equalizer&#039; and it&#039;s recommended. &lt;br /&gt;
&lt;br /&gt;
       CONTEXT: context_path &lt;br /&gt;
               context_path KONTEKISUTOMENYUKOMANDO be designated to perform. &lt;br /&gt;
               Handles the context menu of the currently playing track. &lt;br /&gt;
               CONTEXT: Properties to specify the like. &lt;br /&gt;
               TF context_path Note also that as &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       PANELSHOW: cap: sh &lt;br /&gt;
               The caption of the child panel cap / hide. &lt;br /&gt;
               sh: 0 hide &lt;br /&gt;
                   1. &lt;br /&gt;
                  -1 Show / hide toggle &lt;br /&gt;
&lt;br /&gt;
       TFMODE: mode &lt;br /&gt;
               Per Track titleformat to change the mode. &lt;br /&gt;
               mode: 0 nowplaying mode &lt;br /&gt;
                     1 follow curosr mode &lt;br /&gt;
                    -1 Toggle &lt;br /&gt;
&lt;br /&gt;
       REFRESH: TF of PerTrack, PerSecond update. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       options1 specify the default decoration (can specify more than one, separated by spaces) &lt;br /&gt;
                fontcolor: r-g-b-color of the text &lt;br /&gt;
                brushcolor: rgba color fills the rectangle button &lt;br /&gt;
                pencolor: r-g-b-a color button border &lt;br /&gt;
                left top bottom right position of the text &lt;br /&gt;
&lt;br /&gt;
       options2: decorative specify when mouse over (can specify more than one, separated by spaces) &lt;br /&gt;
                fontcolor: r-g-b-color of the text &lt;br /&gt;
                brushcolor: rgba color fills the rectangle button &lt;br /&gt;
                pencolor: r-g-b-a color button border &lt;br /&gt;
                left top bottom right position of the text &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    Example $ textbutton (0,0,80,20, play, play, COMMAND: Playback / Play, fontcolor :64-64-64 brushcolor :192-192-192-128 pencolor :0-0-0, fontcolor: 32 -- 32-32) &lt;br /&gt;
 $ textbutton (100,0,80,20, Resize, Resize, PANELSHOW: aaa: -1; REFRESH, fontcolor :64-64-64 left bottom, fontcolor :32-32-32) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ imagebutton (x, y, w, h, path, mover_path, command, options1, options2) &lt;br /&gt;
    Create an image button. &lt;br /&gt;
    Per Track only available. Per Second is not to write. &lt;br /&gt;
    The internal processing of the images are treated equally and $ imageabs will be cached in memory. &lt;br /&gt;
    w, h is omitted, path to original image size is specified. &lt;br /&gt;
    textbutton command is common. &lt;br /&gt;
&lt;br /&gt;
       Display options options1 &lt;br /&gt;
                nokeepaspect &lt;br /&gt;
                left top bottom right &lt;br /&gt;
       options2: When mouse over the image display options &lt;br /&gt;
                 nokeepaspect &lt;br /&gt;
                 left top bottom right &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● GDI drawing functions of &lt;br /&gt;
 Using the GDI to draw. Simple minutes, may be faster. &lt;br /&gt;
&lt;br /&gt;
 $ drawtext (text, x, y, W, H, r-g-b, OPTIONS) &lt;br /&gt;
 GDI text drawing functions &lt;br /&gt;
 Text coordinates (x, y) in output &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Alain left hcenter right specified horizontal &lt;br /&gt;
 Alain specified top vcenter bottom vertical &lt;br /&gt;
 Not noclip clip &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawtextex (text, x, y, W, H, r-g-b, OPTIONS) &lt;br /&gt;
 GDI drawing functions text_2 &lt;br /&gt;
 Text coordinates (x, y) in output &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Alain left hcenter right specified horizontal &lt;br /&gt;
 Alain specified top vcenter bottom vertical &lt;br /&gt;
 Not noclip clip &lt;br /&gt;
 Allow specified wrap wraparound (vcenter, bottom and exclusive) &lt;br /&gt;
 end_ellipsis If you clip text, replace the end of the text ... &lt;br /&gt;
 &lt;br /&gt;
 Example: $ drawtextex (text, 0,0,% _width%,% _height% ,0-0-0, hcenter vcenter end_ellipsis) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ gettextwidth (text, [FONTNAME, SIZE, OPTIONS]) &lt;br /&gt;
 GDI (drawtext, drawtextex) returns the width in the text when drawing horizontal text. &lt;br /&gt;
 can specify the font ($ font option). specified font is optional &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ gettextheight ([FONTNAME, SIZE, OPTIONS]) &lt;br /&gt;
 GDI returns vertical width of text when drawn. &lt;br /&gt;
 can specify the font ($ font option). specified font is optional &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ fillrect (x, y, w, h, r-g-b, RESERVED) &lt;br /&gt;
 Filled rectangle function &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ fillroundrect (x, y, w, h, w2, h2, r1-g1-b1, r2-g2-b2) &lt;br /&gt;
 Function of the fill rectangle with rounded corners &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● Panel operating system functions &lt;br /&gt;
 Apparently drawing functions and the TF is such low efficiency of the frame together, &lt;br /&gt;
 Future plans to別枠. &lt;br /&gt;
&lt;br /&gt;
 $ showpanel (i, sh) or $ showpanel_c (caption, sh) &lt;br /&gt;
    Panel, change the function inactive &lt;br /&gt;
    i somethingth in the child panel list (counting from 0) &lt;br /&gt;
    sh 0: Inactive 1: View &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ movepanel (i, x, y, w, h) or $ movepanel_c (caption, x, y, w, h) &lt;br /&gt;
    i somethingth in the child panel list (counting from 0) &lt;br /&gt;
    Panel Force layout only for the specified coordinates (x, y) size (w, h) to move on. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ getcaption (i) &lt;br /&gt;
    I returns the list of child panel captions are set in the second panel. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ isvisible_c (caption) &lt;br /&gt;
     Returns the status panel. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= External links =&lt;br /&gt;
* [http://foo2k.chottu.net/ Official page with download link] (Japanese)&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=62114 Discussion thread]&lt;/div&gt;</summary>
		<author><name>Chiwou</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components&amp;diff=19479</id>
		<title>Foobar2000:Components</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components&amp;diff=19479"/>
		<updated>2009-03-10T22:25:20Z</updated>

		<summary type="html">&lt;p&gt;Chiwou: /* Panels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{fb2k}}&lt;br /&gt;
This page contains most Foobar2000 v0.9.x components available at time of [http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9&amp;amp;action=history last update].&lt;br /&gt;
=1st Party= &lt;br /&gt;
The following components are created and maintained by the foobar2000 development team. Support for them should be asked for in the [http://www.hydrogenaudio.org/forums/index.php?showforum=29 Support forum]&lt;br /&gt;
===Included in the Installer===&lt;br /&gt;
[[Image:Optional_features.png|thumb|The Optional Features screen of the fb2k Installer]]&lt;br /&gt;
In addition to foobar2000&#039;s core functionality, the following components can be installed as needed, in the Optional Features section of the installer.&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Name&lt;br /&gt;
! foo name&lt;br /&gt;
! description&lt;br /&gt;
|----&lt;br /&gt;
| Audio CD Support&lt;br /&gt;
| foo_cdda&lt;br /&gt;
| Adds Support for [[CD|Audio CD]] Playback&lt;br /&gt;
|----&lt;br /&gt;
| Album List&lt;br /&gt;
| foo_albumlist&lt;br /&gt;
| Gives quick access to Media Library Content with customizable tree view&lt;br /&gt;
|----&lt;br /&gt;
| Standard DSPs&lt;br /&gt;
| foo_dsp_std&lt;br /&gt;
| Equalizer, resampler, advanced limiter, hard limiter, stereo to 4 channel upmixer and a couple other effects&lt;br /&gt;
|----&lt;br /&gt;
| ReplayGain Scanner&lt;br /&gt;
| foo_rgscan&lt;br /&gt;
| advanced solution for volume matching&lt;br /&gt;
|----&lt;br /&gt;
| [[Foobar2000:Converter|Converter]]&lt;br /&gt;
| foo_converter&lt;br /&gt;
| Converts files to WAV or any other formats using command line encoders&lt;br /&gt;
|----&lt;br /&gt;
| [[Foobar2000:File_operations|File Operations]]&lt;br /&gt;
| foo_fileops&lt;br /&gt;
| Renames, moves, or copies files according to specified patterns&lt;br /&gt;
|----&lt;br /&gt;
| Archive Reader&lt;br /&gt;
| foo_unpack&lt;br /&gt;
| Adds support for playing files directly from ZIP RAR and GZIP archives&lt;br /&gt;
|----&lt;br /&gt;
| ABX Comparator&lt;br /&gt;
| foo_abx&lt;br /&gt;
| [[ABX]] component for double blind listening tests&lt;br /&gt;
|----&lt;br /&gt;
| [[Foobar2000:Components_0.9/Freedb_Tagger_(foo_freedb2)|freedb Tagger]]&lt;br /&gt;
| foo_freedb2&lt;br /&gt;
| Tag retrieving support from freedb service for any set of files: mp3,mpc,flac,...-not only CDDA tracks&lt;br /&gt;
|----&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Additional Components===&lt;br /&gt;
These components are provided as separate downloads, found on the [http://www.foobar2000.org/?page=Download Additional Components page]. &lt;br /&gt;
====Input====&lt;br /&gt;
* [[Foobar2000:Components 0.9/Monkey&#039;s Audio Decoder (foo_input_monkey)|Monkey&#039;s Audio Decoder (foo_input_monkey)]] Adds decoding support for Monkey&#039;s Audio files (.[[APE]]) as well as APE Link files (.[[APL]]).&lt;br /&gt;
*[[Foobar2000:Components 0.9/ALAC Decoder (foo_input_alac)|ALAC Decoder (foo_input_alac)]] Apple Lossless ([[ALAC]]) decoder.&lt;br /&gt;
&lt;br /&gt;
====Output====&lt;br /&gt;
* [[Foobar2000:Components 0.9/Kernel Streaming Output (foo_out_ks)|Kernel Streaming support (foo_out_ks)]] Allows bit-exact playback bypassing Windows kernel mixer.&lt;br /&gt;
* [[Foobar2000:Components 0.9/ASIO Output (foo_out_asio)|ASIO output support (foo_out_asio)]] Adds ASIO output support.&lt;br /&gt;
* [[Foobar2000:Components 0.9/WASAPI output support (foo_out_wasapi)|WASAPI output support (foo_out_wasapi)]] Adds Windows Audio Session API exclusive mode output support, allowing bit-exact output and muting all other sounds on Windows Vista systems.&lt;br /&gt;
====Other====&lt;br /&gt;
*[[Foobar2000:Components 0.9/Playback Statistics (foo playcount)|Playback Statistics (foo playcount)]] Collects playback statistics for your Media Library content.&lt;br /&gt;
*[[Foobar2000:Components 0.9/Binary Comparator (foo_bitcompare)|Binary Comparator (foo_bitcompare)]] Performs binary comparison between two or more tracks and reports differences.&lt;br /&gt;
* [[Foobar2000:Components 0.9/File Integrity Verifier (foo_verifier)|File Integrity Verifier (foo_verifier)]] Checks specified media files for decoding errors.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Quick Tagger (foo_quicktag)| Quick Tagger (foo_quicktag)]] Adds customizable context menu commands for quickly setting tag fields to preconfigured values&lt;br /&gt;
* Text Tools (foo_texttools) Adds customizable context menu commands for copying information about the selected tracks to Windows Clipboard. &lt;br /&gt;
* [[Foobar2000:Components 0.9/Decoding Speed Test (foo_benchmark)|Decoding Speed Test (foo_benchmark)]] Measures decoding speed of audio files.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Convolve (foo_convolve)|Impulse response convolver (foo_convolve)]] Allows arbitrary effects to be captured and used inside foobar2000. ([http://www.hydrogenaudio.org/forums/index.php?showtopic=10611 More Info])&lt;br /&gt;
* [[Foobar2000:Components 0.9/Audio CD Writer (foo_burninate)|Audio CD Writer (foo_burninate)]] CD burning support (requires Nero to be installed on your system.)&lt;br /&gt;
* [[Foobar2000:Components 0.9/Masstagger (foo_masstag)|Masstagger (foo_masstag)]]&lt;br /&gt;
&lt;br /&gt;
=3rd Party=&lt;br /&gt;
The following components are created and maintained by 3rd-party authors, using foobar2000&#039;s [http://www.foobar2000.org/SDK.html SDK]. Support for these components should be asked for in the [http://www.hydrogenaudio.org/forums/index.php?showforum=33 3rd Party Plugins forum] Asking for help directly in the component&#039;s thread is usually preferred.&lt;br /&gt;
== User Interfaces ==&lt;br /&gt;
&lt;br /&gt;
=== Columns UI ===&lt;br /&gt;
[[Foobar2000:Components 0.9/Columns UI (foo_ui_columns)|Columns UI (foo_ui_columns)]] Very popular alternate interface for foobar2000 based on a columns and panel layout.&lt;br /&gt;
&lt;br /&gt;
Columns UI introduced components with [[#Panels|panel]] capability which extend the user interface.&lt;br /&gt;
&lt;br /&gt;
===GFX===&lt;br /&gt;
[[Foobar2000:Components 0.9/GFX window (foo_ui_gfx)|GFX window (foo_ui_gfx)]] is a skinnable user interface, which doesn&#039;t only focus on looking good but tries to be as fast and &amp;quot;lightweight&amp;quot; as possible, too. It uses lua as scripting language. Two skins are included in the archive. Development of this component appears to have ceased.&lt;br /&gt;
&lt;br /&gt;
===Panels UI===&lt;br /&gt;
[[Foobar2000:Components 0.9/Panels UI (foo_ui_panels)|Panels UI (foo_ui_panels)]] gives the ability to manage multiple [[#Panels|panels]] through titleformating. No longer maintained and not compatible with current foobar2000 releases anymore.&lt;br /&gt;
&lt;br /&gt;
== User Interface Addons ==&lt;br /&gt;
=== UI Elements ===&lt;br /&gt;
The [[Foobar2000:Components 0.9/Default user interface (foo_ui_std)|default user interface (foo_ui_std)]], included in the standard installation package, can be extended with the following component(s):&lt;br /&gt;
* [[Foobar2000:Components 0.9/Facets (foo_facets)|Facets (foo_facets)]] Flexible media library viewer based on linked lists.&lt;br /&gt;
* [[Foobar2000:Components_0.9/Infospect_%28foo_infospect%29|Infospect (foo_infospect)]] Displays low level playback information.&lt;br /&gt;
* [[Foobar2000:Components_0.9/Screen_Saver_Host_%28foo_vis_screensaver%29|Screen Saver Host (foo_vis_screensaver)]] Displays a screen saver inside foobar2000 main window.&lt;br /&gt;
* [[Foobar2000:Components_0.9/Text_Display_%28foo_textdisplay%29|Text Display (foo_textdisplay)]] Displays information about the playing or selected track.&lt;br /&gt;
&lt;br /&gt;
=== Panels ===&lt;br /&gt;
Panels extend the functionality of Columns UI / Panels UI components.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Album Art Panel (foo_uie_albumart)|Album Art Panel (foo_uie_albumart)]] Panel to display album art.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Album Art Panel for matroska (foo_uie_albumart_mka)|Album Art Panel for matroska (foo_uie_albumart_mka)]] Albumart mod to read matroska covers.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Album List Panel (foo_uie_albumlist)|Album List Panel (foo_uie_albumlist)]] Displays the database in a treeview using customizable sorting methods (by genre, artist, directory, etc.)&lt;br /&gt;
* [[Foobar2000:Components 0.9/Bookmarks (foo_uie_bookmarks)|Bookmarks (foo_uie_bookmarks)]] Help you remember positions in songs.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Console (foo_uie_console)|Console (foo_uie_console)]] Panel version of console. Displays diagnostic messages. Requires Columns UI 0.1.3 beta 1 or newer.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Cover Flow (foo_bubble_coverflow)|Cover Flow (foo_bubble_coverflow)]] The plugin can work either as a UI panel or a standalone window (found in the view menu), and a fullscreen mode for both.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Dockable Panels (foo_dockable_panels)|Dockable Panels (foo_dockable_panels)]] It allows you to create windows that host columns ui panels as floating windows that can be attached to the side of the main foobar2000 window or each other.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Egoh Spectrum Analyser (foo_uie_vis_egoh)|Egoh Spectrum Analyser (foo_uie_vis_egoh)]] Similar to the default spectrum analyser.&lt;br /&gt;
* [[Foobar2000:Components 0.9/ELplaylist panel (foo_uie_elplaylist)|ELplaylist panel (foo_uie_elplaylist)]] Displays the playlist in a single column with a header. Highly customizable.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Explorer Panel (foo_uie_explorer)|Explorer Panel (foo_uie_explorer)]] Displays a treeview of selected disks/folders.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Grouped playlist panel (foo_uie_pvt)|Grouped playlist panel (foo_uie_pvt)]] Preview version of columns playlist with grouping.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Lyrics Panel (foo_uie_lyrics_panel)|Lyrics Panel (foo_uie_lyrics_panel)]] Display lyrics stored in file tags. &lt;br /&gt;
* [[Foobar2000:Components 0.9/Music Browser (foo_browser)|Music Browser (foo_browser)]] Panels for Browsing Library, Similar to iTunes.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Panel Stack Splitter (foo_uie_panel_splitter)|Panel Stack Splitter (foo_uie_panel_splitter)]] Allows free positioning of panels within the foobar2000 window and displays track info.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playlist Dropdown (foo_uie_playlists_dropdown)|Playlist Dropdown (foo_uie_playlists_dropdown)]] Displays the playlist in a dropdown menu.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playlist Tree (foo_playlist_tree)|Playlist Tree (foo_playlist_tree)]] Tree based media library with many available customizations.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Power Panels (foo_uie_powerpanels)|Power Panels (foo_uie_powerpanels)]] Seekbar and volume transparent version panels. Useful for theming.&lt;br /&gt;
* [[Foobar2000:Components 0.9/ProjectM Visualisation Panel (foo_uie_vis_projectM)|ProjectM Visualisation Panel (foo_uie_vis_projectM)]] Based on the ProjectM project, which is a reimplementation of Milkdrop under OpenGL.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Queue Manager (foo_uie_queuemanager)|Queue Manager (foo_uie_queuemanager)]] It provides a window that shows the queue&#039;s contents and allows you to delete parts of them or clear the whole queue.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Quicksearch Panel (foo_uie_quicksearch)|Quicksearch Panel (foo_uie_quicksearch)]] Search toolbar that sends results to a playlist.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Shpeck (foo_vis_shpeck)|Shpeck (foo_vis_shpeck)]] Winamp visualisation plugins wrapper.&lt;br /&gt;
* [[Foobar2000:Components_0.9/Single Column Playlist (foo_uie_single_column_playlist)|Single Column Playlist Viewer (foo_uie_single_column_playlist)]] Displays the playlist in a single column with &amp;quot;headers&amp;quot;. Useful for creating a narrower and smaller layout.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Tabs (foo_uie_tabs)|Tabs (foo_uie_tabs)]] Tabs allows you to break Pauli&#039;s Exclusion principle by placing multiple panels in the same position at the same time.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Track Info Panel (foo_uie_trackinfo)|Track Info Panel (foo_uie_trackinfo)]] Uses TAGZ to display information about a selected track.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Track Info Panel Mod (foo_uie_trackinfo_mod)|Track Info Panel Mod (foo_uie_trackinfo_mod)]] Improved Track Info panel with the ability to use multiple fonts in the same panel. Also has the ability to display images.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Typefind (foo_typefind)|Typefind (foo_typefind)]] Provides some in-line search facilities.&lt;br /&gt;
* [[Foobar2000:Components 0.9/WmpVis (foo_uie_wmpvis)|&amp;lt;span id=&amp;quot;wmpvis&amp;quot;&amp;gt;WmpVis (foo_uie_wmpvis)&amp;lt;/span&amp;gt;]] Uses the visualizations from WMP.&lt;br /&gt;
* [[Foobar2000:Components 0.9/WSH panel (foo_uie_wsh_panel)|WSH panel (foo_uie_wsh_panel)]] Windows script host panel.&lt;br /&gt;
&lt;br /&gt;
==DSP==&lt;br /&gt;
* [[Foobar2000:Components 0.9/4Front Headphones (foo_dsp_headphones9)|4Front Headphones (foo_dsp_headphones9)]] Effects for headphone users.&lt;br /&gt;
* [[Foobar2000:Components 0.9/ATSurround Processor (foo_dsp_atsurround)|ATSurround Processor (foo_dsp_atsurround)]] Reproduces surround sound information present in many stereo audio material and more.&lt;br /&gt;
* [[Foobar2000:Components 0.9/BS2B (foo_dsp_bs2b)|BS2B (foo_dsp_bs2b)]] Improves headphone listening of regular hi-fi stereo records.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Voice Cut Filter (foo_dsp_centercut)|Voice Cut Filter (foo_dsp_centercut)]] Voice cut filter.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Channel Mixer (foo_channel_mixer)|Channel Mixer (foo_channel_mixer)]] Up/down mix to/from 1-6 channels.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Crossfeed (foo_dsp_crossfeed)|Crossfeed (foo_dsp_crossfeed)]] Filters the music to help reduce fatigue caused by listening to music with headphones.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Dolby Headphone Wrapper (foo_dsp_dolbyhp)|Dolby Headphone Wrapper (foo_dsp_dolbyhp)]] Dolby Headphone engine DLL.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Dolby Pro Logic II wrapper (foo_dsp_pl2)|Dolby Pro Logic II wrapper (foo_dsp_pl2)]] Dolby Pro Logic II engine DLL (dll not included).&lt;br /&gt;
* [[Foobar2000:Components 0.9/Downmix (foo_dsp_downmix)|Downmix (foo_dsp_downmix)]] Downmix [[AC3]], [[DTS]], etc. to stereo.&lt;br /&gt;
* [[Foobar2000:Components 0.9/FreeSurround (foo_dsp_fsurround)|FreeSurround (foo_dsp_fsurround)]] It takes Dolby Surround / Pro Logic I/II encoded stereo music and decodes it into 5.1 sound. &lt;br /&gt;
* [[Foobar2000:Components 0.9/George Yohng&#039;s VST Wrapper (foo_dsp_vstwrap)|George Yohng&#039;s VST Wrapper (foo_dsp_vstwrapper)]] Enables VST plug-ins.&lt;br /&gt;
* [[Foobar2000:Components 0.9/LPCM - Delta-PCM Converter (foo_dsp_delta)|LPCM - Delta-PCM Converter (foo_dsp_delta)]] Noise sharpening filter.&lt;br /&gt;
* [[Foobar2000:Components 0.9/OSS/3D (foo_dsp_oss3ddsp)|OSS/3D (foo_dsp_oss3ddsp)]] Audio enhancement. SHAREWARE.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Post-track Silence (foo_dsp_silence)|Post-track Silence (foo_dsp_silence)]] Inserts a configurable amount of silence after each track to help external devices like MiniDisc players to sync track changes.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Secret Rabit Code Resampler (foo_dsp_src9)|Secret Rabit Code Resampler (foo_dsp_src9)]] Mega Nerd&#039;s Secret Rabbit Code sample rate converter.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Skip Silence (foo_dsp_skip_silence)|Skip Silence (foo_dsp_skip_silence)]] Detect and skip silence.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Soundtouch (foo_dsp_soundtouch)|Soundtouch (foo_dsp_soundtouch)]] Ajust pitch, tempo and rate.&lt;br /&gt;
* [[Foobar2000:Components 0.9/SSRC (foo_dsp_ssrc)|SSRC (foo_dsp_ssrc)]] Sample rate converter.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Stereo Convolver (foo_dsp_stereoconv)|Stereo Convolver (foo_dsp_stereoconv)]] Take stereo audio and convolve each channel with two impulse responses.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Surround Pan (foo_dsp_span)|Surround Pan (foo_dsp_span)]] WYSIWYG Surround panning.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Tube Sound (foo_dsp_tube)|Tube Sound (foo_dsp_tube)]] Emulate tube sound.&lt;br /&gt;
* [[Foobar2000:Components 0.9/VLevel (foo_dsp_vlevel)|VLevel (foo_dsp_vlevel)]] Dynamic compressor which amplifies the quiet parts of music.&lt;br /&gt;
* [[Foobar2000:Components 0.9/VST Host (foo_dsp_vst)|VST Host (foo_dsp_vst)]] Adds support to Virtual Studio Technology audio interface.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Winamp DSP Bridge (foo_dsp_winamp)|Winamp DSP Bridge (foo_dsp_winamp)]] Allows the use of Winamp DSPs.&lt;br /&gt;
* [[Foobar2000:Components 0.9/XOver (foo_dsp_xover)|XOver (foo_dsp_xover)]] Implements this digital crossover to achieve active multi-amplification.&lt;br /&gt;
&lt;br /&gt;
==Input==&lt;br /&gt;
===Music codecs===&lt;br /&gt;
* [[Foobar2000:Components 0.9/AC3 Decoder (foo_ac3)|AC3 Decoder (foo_ac3)]] Decodes Dolby Digital lossy audio compression technologies format ([[AC3]]).&lt;br /&gt;
* [[Foobar2000:Components 0.9/AC3 Packet Decoder (foo_packet_decoder_ac3)|AC3 Packet Decoder (foo_packet_decoder_ac3)]] Needed for [[AC3]] in [[Matroska]].&lt;br /&gt;
* [[Foobar2000:Components 0.9/DTS Decoder (foo_dts)|DTS Decoder (foo_dts)]] Decodes Digital Theater Systems ([[DTS]]) audio format.&lt;br /&gt;
* [[Foobar2000:Components 0.9/MIDI Synthesizer Host (foo_midi)|MIDI Synthesizer Host (foo_midi)]] &lt;br /&gt;
* [[Foobar2000:Components 0.9/OptimFROG Lossless Audio Decoder (foo_input_ofr)|OptimFROG Lossless Audio Decoder (foo_input_ofr)]] Decodes both the Lossless ([[OptimFROG|OFR]]) and DualStream (OFS) audio format.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Shorten Decoder (foo_input_shorten)|Shorten Decoder (foo_input_shorten)]] Decodes Shorten ([[SHN]]) audio format.&lt;br /&gt;
* [[Foobar2000:Components 0.9/SPDIF Passthrough (foo_spdif)|SPDIF Passthrough (foo_spdif)]] SPDIF passthrough for [[AC3]] and [[DTS]] files.&lt;br /&gt;
* [[Foobar2000:Components 0.9/TTA Audio Decoder (unofficial) (foo_input_tta)|TTA Audio Decoder (unofficial) (foo_input_tta)]] Decodes True Audio ([[TTA]]) audio format.&lt;br /&gt;
&lt;br /&gt;
===Other codecs===&lt;br /&gt;
* [[Foobar2000:Components 0.9/ADPCM Decoder (foo_adpcm)|ADPCM Decoder (foo_adpcm)]] Plays GameCube ADPCM audio data and some. (DSP, ADP, GCM, HPS, STM, AST, etc.)&lt;br /&gt;
* [[Foobar2000:Components 0.9/Another Slight Atari Player (foo_asap)|Another Slight Atari Player (foo_asap)]] [http://asap.sourceforge.net/ ASAP] is a player/converter of Atari 8-bit music for modern computers. It provides high-quality, identical to the popular Atari800 emulator, emulation of the POKEY sound chip and the 6502 processor.&lt;br /&gt;
* [[Foobar2000:Components 0.9/DUMB Module Decoder (foo_dumb)|DUMB Module Decoder (foo_dumb)]] Plays your favorite module files, and then some. (MOD, S3M, XM, IT, 669, PTM, PSM, MTM, UMX)&lt;br /&gt;
* [[Foobar2000:Components 0.9/Game Audio Decoder (foo_game)|Game Audio Decoder (foo_game)]] Plays Westwood&#039;s audio (AUD), Sierra&#039;s sounds (SFX/AUD), Core design&#039;s cd audio (cdaudio.WAD), Funcom&#039;s music (ISS), Rome Total War&#039;s IDX (.IDX/DAT), Timegate&#039;s format (RWD), EA&#039;s Pathfinder audio (MUS) and Ben Gerard&#039;s music (SC68).&lt;br /&gt;
* [[Foobar2000:Components 0.9/Game Emu Player (foo_gep)|Game Emu Player (foo_gep)]] Plays several emulation formats. (GBS, NSF, SPC, GYM, HES, VGM)&lt;br /&gt;
* [[Foobar2000:Components 0.9/Ganbatte! (foo_ganbatte)|Ganbatte! (foo_ganbatte)]] Plays compressed Edlib (.d00, .d01) files.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Lunar 2 PCM Decoder (foo_lunar2)|Lunar 2 PCM Decoder (foo_lunar2)]] Plays audio files found on the original Lunar: Eternal Blue CD (RP*.PCM).&lt;br /&gt;
* [[Foobar2000:Components 0.9/M1 Decoder (foo_m1)|M1 Decoder (foo_m1)]] Plays arcade/pinball game sound.&lt;br /&gt;
* [[Foobar2000:Components 0.9/MDX Decoder (foo_input_mdx)|MDX Decoder (foo_input_mdx)]] MDX is a MIDI-like format that is designed to be played using the X68000&#039;s FM synthesizer.&lt;br /&gt;
* [[Foobar2000:Components 0.9/NSF Decoder (foo_input_nsf)|NSF Decoder (foo_input_nsf)]] NSF file is a sound data file containing instructions for the Nintendo Entertainment System (NES) sound hardware.&lt;br /&gt;
* [[Foobar2000:Components 0.9/PSF Decoder (foo_psf)|PSF Decoder (foo_psf)]] Plays PlayStation Sound Format (PSF) files.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Reverse (foo_input_reverse)|Reverse (foo_input_reverse)]] Play music in reverse.&lt;br /&gt;
* [[Foobar2000:Components 0.9/SID Player 2 (foo_sid)|SID Player 2 (foo_sid)]] Sound chip of Commodore&#039;s CBM-II, Commodore 64 and Commodore 128 home computers.&lt;br /&gt;
* [[Foobar2000:Components 0.9/S98 Decoder (foo_input_s98)|S98 Decoder (foo_input_s98)]] Sound format for the NEC PC-98 microcomputer.&lt;br /&gt;
* [[Foobar2000:Components 0.9/USF Decoder (foo_input_usf)|USF Decoder (foo_input_usf)]] Decodes sound data ripped directly from a Nintendo 64 video game.&lt;br /&gt;
&lt;br /&gt;
==Visualisation==&lt;br /&gt;
* [[Foobar2000:Components 0.9/Peakmeter (foo uie peakmeter)|Peakmeter for Columns UI (foo_uie_peakmeter)]] Displays the level for each channel in dB.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Peakmeter Spectrum (foo uie vis peakmeter spectrum)|Peakmeter and spectrum analyzer (foo_uie_vis_peakmeter_spectrum)]] Plugin that combines a peakmeter with a spectrum analyzer.&lt;br /&gt;
* [[Foobar2000:Components 0.9/ProjectM Visualisation (foo_vis_projectM)|ProjectM Visualisation (foo_vis_projectM)]] Based on the ProjectM project, which is a reimplementation of Milkdrop under OpenGL.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Shpeck (foo_vis_shpeck)|Shpeck (foo_vis_shpeck)]] Winamp visualisation plugins wrapper.&lt;br /&gt;
* [[#wmpvis|WmpVis (foo_uie_wmpvis)]] Uses the visualizations from WMP. &#039;&#039;Panel version only&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Other==&lt;br /&gt;
===General===&lt;br /&gt;
* [[Foobar2000:Components 0.9/Alarm (foo_alarm)|Alarm (foo_alarm)]] Starts playback at the specified period of time.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Channel Usage Visualisation (foo_vis_channelusage)|Channel Usage Visualisation (foo_vis_channelusage)]] Channel Usage Visualisation.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Common Services (foo_common)|Common Services (foo_common)]] Common services.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Converter (foo converter)|Converter (foo converter)]]&lt;br /&gt;
* [[Foobar2000:Components 0.9/Cwbowron&#039;s Title formating (foo_cwb_hooks)|Cwbowron&#039;s Title Format Hooks (foo_cwb_hooks)]] Adds various global titleformat functions/variables, tagger window, new file tagger, and more. No longer maintained, not compatible with current foobar2000 versions anymore.&lt;br /&gt;
* [[Foobar2000:Components_0.9/Directory_Monitor_(foo_dirwatch)|Directory Monitor (foo_dirwatch)]] Allows you to specify directories to monitor, and notifies the Media Library of any changes (additions, renames, deletions) that occur.&lt;br /&gt;
* [[Foobar2000:Components 0.9/EXTM3U Playlist Creater (foo_extm3u)|EXTM3U Playlist Creater (foo_extm3u)]] Allow to save current playlist in the EXTM3U format.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Feature Watcher (foo_whatsnew)|Feature Watcher (foo_whatsnew)]] Watches for added or removed features.&lt;br /&gt;
* [[Foobar2000:Components 0.9/File Date (foo_filedate)|File Date (foo_filedate)]] Add to file tag date added, accessed, created or modified from context menu entries.&lt;br /&gt;
* [[Foobar2000:Components 0.9/HyperIM (foo_2hyperim)|HyperIM (foo_2hyperim)]] Provides 19 media macros.&lt;br /&gt;
* [[Foobar2000:Components 0.9/iPod Manager (foo_dop)|iPod Manager (foo_dop)]] Experimental iPod plugin for foobar2000 0.9.2+, currently in alpha version.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Logitech G15 LCD Display (foo_g15lcd)|Logitech G15 LCD Display (foo_g15lcd)]] Control the LCD panel on a Logitech G15 keyboard.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Menu Addons (foo_menu_addons)|Menu Addons (foo_menu_addons)]] Adds a few shortcuts in menu.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Open URL (foo_openurl)|Open URL (foo_openurl)]] Adds a context menu item to open URLs from metadata fields in a web browser.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Pause On Lock (foo_lock)|Pause On Lock (foo_lock)]] Pauses/unpauses foobar2000 on workstation lock/unlock.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Pause on Lock (extended) (foo_lock_ex)|Pause on Lock (extended) (foo_lock_ex)]] Pause playing on workstation lock. Optimized for use with Windows XP/2003.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Preview (foo_preview)|Preview (foo_preview)]] Play only part of each track in the playlist.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Replaygain Override (foo_rg_trn)|Replaygain Override (foo_rg_trn)]] Allows you to automatically switch between replaygain modes based on specified criteria (e.g. use track based RG for shuffle mode, etc.)&lt;br /&gt;
* [[Foobar2000:Components 0.9/Run (foo_run)|Run (foo_run)]] Able you to run a external program with the foobar syntax.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Run Commands (foo_runcmd)|Run Commands (foo_runcmd)]] Search and execute menu commands.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Scheduler (foo_scheduler)|Scheduler (foo_scheduler)]] Plugin for scheduling actions like play, stop, system shutdown/wake up and many more.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Send To Device (foo_sendtodevice)|Send To Device (foo_sendtodevice)]] Add &amp;quot;Send to Device&amp;quot; feature.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Shell Link Resolver (foo_lnk)|Shell Link Resolver (foo_lnk)]] Shell link resolver.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Timebomb (foo_timebomb)|Timebomb (foo_timebomb)]] Stop playback / exit program after a specified time.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Unpacker for JMA archive (foo_unpack_jma)|Unpacker for JMA archive (foo_unpack_jma)]]&lt;br /&gt;
* [[Foobar2000:Components 0.9/Unpacker for LHA archive (foo_unpack_lha)|Unpacker for LHA archive (foo_unpack_lha)]]&lt;br /&gt;
* [[Foobar2000:Components 0.9/Winamp API Emulator (foo_winamp_spam)|Winamp API Emulator (foo_winamp_spam)]] Designed to create a fake Winamp 1.x window which will act as a wrapper between applications written to use the Winamp API and foobar2000.&lt;br /&gt;
&lt;br /&gt;
===Lyrics===&lt;br /&gt;
* [[Foobar2000:Components 0.9/Gasazip Lyrics (foo_gasazip)|Gasazip Lyrics (foo_gasazip)]] Search for lyrics and displays it in external window.&lt;br /&gt;
* [[Foobar2000:Components 0.9/LyricsDB (foo_lyricsdb)|LyricsDB (foo_lyricsdb)]] Search lyrics basing on song&#039;s artist title and sometimes album.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Mini Lyrics (foo_ui_minilyrics)|Mini Lyrics (foo_ui_minilyrics)]] Lyrics viewer for synchronizing and displaying lyrics of the currently playing song.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Sakura Script Lyrics (foo_sstp_lyrics)|Sakura Script Lyrics (foo_sstp_lyrics)]] Plays a SAKURA script lyrics to a SSP client.&lt;br /&gt;
&lt;br /&gt;
===Notifier===&lt;br /&gt;
* [[Foobar2000:Components 0.9/AMIP Wrapper (foo_amipwrapper)|AMIP Wrapper (foo_amipwrapper)]] Complete now-playing plug-in for mIRC, PIRCH, Klient, Bersirc, other IRC and Mail clients, supporting full player control from mIRC, playlist search, clipboard integration, HTTP, dynamic image signatures, etc.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Listening To (foo_listeningto)|Listening To (foo_listeningto)]] Sends NowPlaying information to Miranda IM.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Miranda IM Notifier (foo_mim_notify)|Miranda IM Notifier (foo_mim_notify)]] Sends configurable information about the current playing song to Miranda-IM and shows popup windows with this info.&lt;br /&gt;
* [[Foobar2000:Components 0.9/MSN avatar changer (foo_uie_albumart_msn)|MSN avatar changer (foo_uie_albumart_msn)]] Set currently playing song&#039;s album art as avatar.&lt;br /&gt;
* [[Foobar2000:Components 0.9/MSN Now Playing (alt) (foo_msnalt)|MSN Now Playing (alt) (foo_msnalt)]] Show the current song as &amp;quot;Now Playing&amp;quot; in MSN and MS Live messenger.&lt;br /&gt;
* [[Foobar2000:Components 0.9/WLM Notifier (foo_wlm)|WLM Notifier (foo_wlm)]] Show the current song as &amp;quot;Now Playing&amp;quot; in MSN and Windows Live messenger.&lt;br /&gt;
* [[Foobar2000:Components 0.9/On-Screen Display (foo_osd)|On-Screen Display (foo_osd)]] On screen display of track information and volume bar.&lt;br /&gt;
* [[Foobar2000:Components 0.9/On-Screen Display GDI (foo_osd_gdiplus)|On-Screen Display GDI (foo_osd_gdiplus)]] Same as foo_osd but uses GDI+ for osd drawing.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Pretty Popup (foo_prettypop)|Pretty Popup (foo_prettypop)]] Display a moderately sized popup of song information when a new song plays.&lt;br /&gt;
&lt;br /&gt;
===Online database===&lt;br /&gt;
* [[Foobar2000:Components 0.9/Audioscrobbler (foo_audioscrobbler)|Audioscrobbler (foo_audioscrobbler)]] Audioscrobbler will send the name of every song you play on your computer to Last.fm. This effortlessly populates your profile to play radio you like and make personalized recommendations.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Foosic Music Database (foo_sic)|Foosic Music Database (foo_sic)]] Sends track information to the [http://www.foosic.org/ foosic online database]. You can currently view your top artist, album and track statistics with foosic. Now support FooID fingerprints.&lt;br /&gt;
&lt;br /&gt;
===Online radio===&lt;br /&gt;
* [[Foobar2000:Components 0.9/MSLive (foo_input_mslive)|MSLive (foo_input_mslive)]] Support for [[MMS]] and [[RSTP]] broadcast radio protocols.&lt;br /&gt;
* [[Foobar2000:Components 0.9/XM Radio Online Player (foo_xm)|XM Radio Online Player (foo_xm)]] Allow you to listen to XM Radio channels over the Internet by using XM Radio Online.&lt;br /&gt;
&lt;br /&gt;
===Playlist tools===&lt;br /&gt;
* [[Foobar2000:Components 0.9/Audioscrobble Charts (foo_scrobblecharts)|Audioscrobble Charts (foo_scrobblecharts)]] Generate a playlist from an artist&#039;s Last.fm chart. It also allows you to sort a selection in the playlist by the artist&#039;s charts.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Bin Pack (foo_binpack)|Bin Pack (foo_binpack)]] Creates playlists from a list with a maximum length.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Command Playlist (foo_cmd_playlist)|Command Playlist (foo_cmd_playlist)]] Add /playlist-activate:&amp;quot;Name&amp;quot; to the foobar command line to activate the named playlist.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Cuesheet Creator (foo_cuesheet_creator)|Cuesheet Creator (foo_cuesheet_creator)]] Cuesheet creator.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Database Search (foo_dbsearch)|Database Search (foo_dbsearch)]] Database search.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Default Video Player (foo_default_videoplayer)|Default Video Player (foo_default_videoplayer)]] Allows you to play your video clips from foobar playlist with default external player.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Delete Current (foo_deletecurrent)|Delete Current (foo_deletecurrent)]] Adds a menu item giving the possibility to delete from computer the current playing track.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Highlight Playing (foo_highlightplaying)|Highlight Playing (foo_highlightplaying)]] Highlights actual now playing item even when the playlist has been broken.&lt;br /&gt;
* [[Foobar2000:Components 0.9/History (foo_history)|History (foo_history)]] Very basic song history.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Inactive Tracks (foo_skip)|Inactive Tracks (foo_skip)]] Skips tracks that are marked via a tag as inactive.&lt;br /&gt;
* [[Foobar2000:Components 0.9/MeowDB (foo_meowdb)|MeowDB (foo_meowdb)]] Takes the Media Library and outputs the results to a form and uploads it to your server using the cURL library.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Navigator (foo_navigator)|Navigator (foo_navigator)]] Advanced history component.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Now Playing Simple (foo_np_simple)|Now Playing Simple (foo_np_simple)]] Simple now playing plugin to output formatted string to plain text file.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playback Queue Viewer (foo_pqview)|Playback Queue Viewer (foo_pqview)]] Playback queue viewer.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playlist Bind (foo_playlist_bind)|Playlist Bind (foo_playlist_bind)]] Synchronize playlist with contents of specific directory.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playlist Clear (foo_playlistclear)|Playlist Clear (foo_playlistclear)]] All playlists are cleared at startup.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playlist Manager (foo_playlist_manager)|Playlist Manager (foo_playlist_manager)]] Playlist manager.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playlist Name Enhenced (foo_playlist_name_enhanced)|Playlist Name Enhenced (foo_playlist_name_enhanced)]] Appends automatically playlist info (&amp;quot;items / length&amp;quot;) to all playlist names.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playlist Tools (foo_utils)|Playlist Tools (foo_utils)]] Provides various general commands.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playlist Tools for Matroska (foo_utils_mka)|Playlist Tools for Matroska (foo_utils_mka)]] Provides various general commands.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Queue Manager (foo_queuemanager)|Queue Manager (foo_queuemanager)]] It provides a window that shows the queue&#039;s contents and allows you to delete parts of them or clear the whole queue. &#039;&#039;Non-ColumnUI obsolete version, try panel version instead.&#039;&#039;&lt;br /&gt;
* [[Foobar2000:Components 0.9/Randomized Playlist Entry (foo_random)|Randomized Playlist Entry (foo_random)]] Randomized playlist entry.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Rating (foo_rating)|Rating (foo_rating)]] Display an icon in the systray with a tooltip popup from which you can choose a rating between 1 and 5 for the currently playing file.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Remove Played (foo_removeplayed)|Remove Played (foo_removeplayed)]] It removes tracks from the playlist once they&#039;ve been played.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Track Finder (foo_trackfinder)|Track Finder (foo_trackfinder)]] Displays a context menu that lets you quickly find songs based on their album title or artists name.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Track Position (foo_trackpos)|Track Position (foo_trackpos)]] Provides a new context menu item &amp;quot;place after current playing&amp;quot;, that allows you to place any tracks after the current playing one in the playing playlist.&lt;br /&gt;
* [[Foobar2000:Components 0.9/XSPF (foo_xspf)|XSPF (foo_xspf)]] Adds XSPF support. XSPF is an open, XML based playlist format.&lt;br /&gt;
&lt;br /&gt;
===Playback Statistics===&lt;br /&gt;
* [[Foobar2000:Components 0.9/Playback Statistics Custom (foo_playback_custom)|Playback Statistics Custom (foo_playback_custom)]] Stores playback statistics in tags like foo_playcount_mod, with claimed faster response, and uses foo_custominfo db if file is unavailable for writing.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Play Count Mod (foo_playcount_mod)|Play Count Mod (foo_playcount_mod)]] Unofficial playcount modded to supress the update tag popups.&lt;br /&gt;
&lt;br /&gt;
===Remote control===&lt;br /&gt;
* [[Foobar2000:Components 0.9/Advanced Controls (foo_advancedcontrols)|Advanced Controls (foo_advancedcontrols)]]  Control all the playback functions from icons in the Taskbar Notification Area (play, pause, next, previous, open)&lt;br /&gt;
* [[Foobar2000:Components 0.9/Appcommand (foo_appcommand)|Appcommand (foo_appcommand)]] Adds the ability to assign multimedia keyboard buttons that sends APPCOMMAND (for example some HP keyboards) as (global) keyboard hotkeys.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Bluetooth Control (foo_bluetooth_ctrl)|Bluetooth Control (foo_bluetooth_ctrl)]] Control your favourite music player using your favourite Symbian-based bluetooth enabled phone.&lt;br /&gt;
* [[Foobar2000:Components 0.9/COM Automation Server (foo_comserver2)|COM Automation Server (foo_comserver2)]] Allows controlling foobar2000 through COM Automation&lt;br /&gt;
* [[Foobar2000:Components 0.9/Control Server (foo_controlserver)|Control Server (foo_controlserver)]] Acts as a server to control Foobar2000. Connect with a telnet client and control it using ASCII commands.&lt;br /&gt;
* [[Foobar2000:Components 0.9/DDE Control (foo_ddecontrol)|DDE Control (foo_ddecontrol)]] Control foobar remotelly with DDE interprocess communication (interface in japanese only).&lt;br /&gt;
* [[Foobar2000:Components 0.9/HTTP Writer (foo_write_http)|HTTP Writer (foo_write_http)]] It&#039;s TCP/IP server that listens on a specified port for incoming requests such as play, stop, etc.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Joystick Control (foo_joystick_control)|Joystick Control (foo_joystick_control)]] Control foobar2000 from a joystick/gamepad.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Minibar2k (foo_Minibar2k)|Minibar2k (foo_Minibar2k)]] Control Foobar2k from your PDA (PocketPC based).&lt;br /&gt;
* [[Foobar2000:Components 0.9/Remote Control (foo_remotecontrol)|Remote Control (foo_remotecontrol)]] Adds support to Melloware Intelliremote software which claims to work with Creative remote control (Soundblaster Live!, Audigy, Extigy, Audigy ZS and Soundblaster X-Fi.)&lt;br /&gt;
* [[Foobar2000:Components 0.9/RM-1800 (foo_mr1800)|RM-1800 (foo_mr1800)]] Adds support of Creative X-Fi&#039;s remote (RM-1800).&lt;br /&gt;
* [[Foobar2000:Components 0.9/RM-X Media Edition (foo_rmx)|RM-X Media Edition (foo_rmx)]] Yet another plugin for remote control. SHAREWARE.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Titlebar (foo_managedWrapper)|Titlebar (foo_managedWrapper)]] Create a personal title bar that shows the currently playing song on the top of the screen all the time. It supports custom-made skins.&lt;br /&gt;
* [[Foobar2000:Components 0.9/WinLIRC Client (foo_lirc)|WinLIRC Client (foo_lirc)]] Control Foobar from a remote control.&lt;br /&gt;
&lt;br /&gt;
===Tagging===&lt;br /&gt;
* [[Foobar2000:Components 0.9/Custom Info (foo_custominfo)|Custom Info (foo_custominfo)]] Allows you to set info fields for files without modifying them. &lt;br /&gt;
* [[Foobar2000:Components 0.9/Discogs (foo_discogs)|Discogs (foo_discogs)]] Retrieve info and album art from Discogs.com database.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Freedb Tagger (foo_freedb2)|Freedb Tagger (foo_freedb2)]] Freedb.org tagger. Now included with official foobar2000 installers.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Live Show Tagger (foo_tradersfriend)|Live Show Tagger (foo_tradersfriend)]] Live show tagger.&lt;br /&gt;
* [[Foobar2000:Components 0.9/Masstagger Addons (foo_masstag_addons)|Masstagger Addons (foo_masstag_addons)]] Some addons for masstagger, including code page conversion and chinese conversion.&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
* [http://pelit.koillismaa.fi/plugins/ Official third-party components site]&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=42730&amp;amp;st=0 List of components] from earlier versions not yet ported to 0.9.x.&lt;br /&gt;
&lt;br /&gt;
* [[foobar2000:foobar2000|Go back to Main Page]]&lt;/div&gt;</summary>
		<author><name>Chiwou</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Panel_Stack_Splitter_(foo_uie_panel_splitter)&amp;diff=19478</id>
		<title>Foobar2000:Components 0.9/Panel Stack Splitter (foo uie panel splitter)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Panel_Stack_Splitter_(foo_uie_panel_splitter)&amp;diff=19478"/>
		<updated>2009-03-10T22:18:58Z</updated>

		<summary type="html">&lt;p&gt;Chiwou: added the Japanese read me translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{fb2k}}&lt;br /&gt;
{{stub}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;foo_uie_panel_splitter&#039;&#039;&#039; is an extension for Columns UI that allows you to place objects freely within the foobar2000 window, including panels, text (e.g., track info), and images.&lt;br /&gt;
&lt;br /&gt;
foobar2000 v0.9.4.3+, Columns UI0.1.3 beta1 v7+&lt;br /&gt;
&lt;br /&gt;
= Requirements =&lt;br /&gt;
* [http://www.foobar2000.org/ foobar2000 0.9.4.3+]&lt;br /&gt;
* Columns UI 0.1.3 beta1 v7+&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Read me (translated from the Japanese original) =&lt;br /&gt;
&lt;br /&gt;
foo_uie_panel_splitter.dll v0.3.6.3 (alpha ver) &lt;br /&gt;
 for foobar2000 v0.9.5.1 +, Columns UI0.3 +, WindowsXP + &lt;br /&gt;
&lt;br /&gt;
 Columns UI panel to place the splitter &lt;br /&gt;
 And without borders, or a little over a panel and set the highest possible degree of freedom. &lt;br /&gt;
 Has been stable or loose? &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Description &lt;br /&gt;
 Add and remove panels from the basic layout of the ColumnsUI do. &lt;br /&gt;
 They can add from the context menu. &lt;br /&gt;
&lt;br /&gt;
 Placement of the panel and automatic alignment mode, forced mode is set. &lt;br /&gt;
 Auto-deploy mode, a horizontal (Horizontal) or placed in a vertical direction (Vertical) or choose a place. &lt;br /&gt;
 forced layout mode that is placed on the force placed on the panel. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 size: size of the display panel (Horizontal size if horizontal, Vertical Vertical size of it) &lt;br /&gt;
 lock size: a place without scaling. &lt;br /&gt;
               off when the size of each panel to be placed according to the Splitter and the appropriate scaling for size. &lt;br /&gt;
               ± 1 to lock the current situation that would blur pixel minutes. &lt;br /&gt;
               -&amp;gt; So hard to fix, could not fix. &lt;br /&gt;
&lt;br /&gt;
 forced layout: left Top width right under it to force the panel to be placed in the specified range. &lt;br /&gt;
               (size and auto-scaling is disabled) &lt;br /&gt;
&lt;br /&gt;
               If you stacked the panel appears on the front panel as a list of the top panel &lt;br /&gt;
               (But depends on the implementation of the child panel. I have come to the front panel profusely.) &lt;br /&gt;
               Title Formatting is enabled. &lt;br /&gt;
               % _width%% _height% in the horizontal width of the Panel Stack Splitter, you can see the vertical width. &lt;br /&gt;
               Example: &lt;br /&gt;
               left: $ div (% _width%, 4) &lt;br /&gt;
               top: $ div (% _height%, 4) &lt;br /&gt;
               width: $ div (% _width%, 2) &lt;br /&gt;
               height: $ div (% _height%, 2) &lt;br /&gt;
&lt;br /&gt;
               Also, Splitter mode to specify a value relative to size. &lt;br /&gt;
               is on the use parsentage value is, Splitter percentage for the size of the [0-100] can be specified. &lt;br /&gt;
               use parsentage value of setting the example on: &lt;br /&gt;
               left: 25 &lt;br /&gt;
               top: 25 &lt;br /&gt;
               width: 50 &lt;br /&gt;
               height: 50 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 padding: Add a space around the panel. &lt;br /&gt;
               Title Formatting to put the numbers are fixed, so invalid. &lt;br /&gt;
               If the automatic alignment panels, padding can be resized with the mouse as if the border is set. &lt;br /&gt;
               enable resizable border with on / off can be &lt;br /&gt;
&lt;br /&gt;
 caption: The name of the panel, the identifier &lt;br /&gt;
 use background color: the color specified, the background fill. &lt;br /&gt;
 use image: specify a fixed background image. TitleFormatting is disabled. &lt;br /&gt;
 pseudo transparent: splitter to simulate a transparent background. (splitter and if you use the nest) &lt;br /&gt;
&lt;br /&gt;
 [Note] &lt;br /&gt;
   ColumnsUI in the panel is to present the panel with the transparent background feature, &lt;br /&gt;
   use background color or use image backgrounds are often not transparent and does not use the panel. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 titleformat mode on startup: when you start the TitleFormat PerTrack modes. &lt;br /&gt;
       now playing TF play that track &lt;br /&gt;
       follow cursor on the selected tracks in playlist &lt;br /&gt;
       last mode at the end of the previous mode (the switch mode button to save) &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
 title formatting script: &lt;br /&gt;
 Titleformat here to describe, and decorative backgrounds. However, the child is on the panel can not be drawn. &lt;br /&gt;
&lt;br /&gt;
 Extended Command Reference &lt;br /&gt;
 Sensitive argument, or optional, and not implemented. &lt;br /&gt;
 Note: Do not waste the space. (Carriage return accepted) &lt;br /&gt;
&lt;br /&gt;
 in title formatting script is evaluated, &lt;br /&gt;
 Today &lt;br /&gt;
 Per Track: track and play and play・When the user changes the size of the state changed when paused. Function when the REFRESH button. &lt;br /&gt;
 Per Second: second, when a change in the state play in the function when the REFRESH button. &lt;br /&gt;
&lt;br /&gt;
 [Note] &lt;br /&gt;
 Per Second, especially that not only can handle high-stress functions. &lt;br /&gt;
 GDI is recommended that you use the drawing functions. &lt;br /&gt;
&lt;br /&gt;
 [Field] &lt;br /&gt;
 % ps_width% &lt;br /&gt;
   Returns the width of the Splitter &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % ps_height% &lt;br /&gt;
   Returns the height of the Splitter &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % ps_tfmode% &lt;br /&gt;
    TF mode returns. (Per Track when enabled) &lt;br /&gt;
    0 nowplaying mode &lt;br /&gt;
    1 follow cursor mode &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % ps_isplaying% &lt;br /&gt;
 Whether during playback &lt;br /&gt;
&lt;br /&gt;
 % ps_ispause% &lt;br /&gt;
 Whether suspended &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 % ps_foobar2000_path% &lt;br /&gt;
 Foobar2000 executable path &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 [Function] &lt;br /&gt;
 $ font (name, size, OPTIONS) &lt;br /&gt;
 Font settings. &lt;br /&gt;
 OPTIONS: bold italic underline strikeout &lt;br /&gt;
&lt;br /&gt;
 Example: $ font (Tahoma, 10, bold italic) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawstring (text, x, y, W, H, rgba, OPTIONS [, OPTIONS2]) &lt;br /&gt;
 String drawing functions. &lt;br /&gt;
 Text coordinates (x, y) to draw on. &lt;br /&gt;
 [Note] This function is a string and DrawText drawtextex not only in view. &lt;br /&gt;
 Maybe only TrueType fonts. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS: Alain specified, the specified quality of drawing, and to specify the clip. &lt;br /&gt;
 Alain left hcenter right specified horizontal &lt;br /&gt;
 Alain specified top vcenter bottom vertical &lt;br /&gt;
&lt;br /&gt;
 nowrap not wraparound &lt;br /&gt;
&lt;br /&gt;
  noaa ClearType and disable anti-aliasing. &lt;br /&gt;
 aa put the anti-aliasing mode. ClearType font such as resistance to the anti-aliasing. &lt;br /&gt;
 hq high quality rendering mode. ClearType mode. (default now) &lt;br /&gt;
 glow_aa glow option to use a special mode. (noaa, aa, hq exclusive) &lt;br /&gt;
&lt;br /&gt;
 If you set the trimming trimchar trimword fit the display range &lt;br /&gt;
 elipchar elipword the last to fit the display range If・・・set to replace the &lt;br /&gt;
&lt;br /&gt;
 mempos getlastpos, to be able to get the coordinates of the drawing. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS2 (optional experimental, experimental option) &lt;br /&gt;
 Specifying the terms of the glow effect. &lt;br /&gt;
 Specified in the OPTIONS glow_aa only, outline and semibold is available. &lt;br /&gt;
&lt;br /&gt;
 glow: expand: colour [: strength] glow options &lt;br /&gt;
 Expand - [0-5] &lt;br /&gt;
 Colour - r-g-b &lt;br /&gt;
 Strength - [0-3] glow_aa case of disabled &lt;br /&gt;
&lt;br /&gt;
 Offset: x: y &lt;br /&gt;
 X - glow in the horizontal offset &lt;br /&gt;
 Y - glow in the vertical offset &lt;br /&gt;
&lt;br /&gt;
 ↓ glow_aa be used only when the specified &lt;br /&gt;
 outline: colour color draws a thin border of the specified character (if glow_aa) &lt;br /&gt;
 Colour r-g-b &lt;br /&gt;
&lt;br /&gt;
 semibold to the characters a little thick (if glow_aa) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ※ These specifications may be changed. &lt;br /&gt;
 Changes in the glow, especially drawing, and semibold outline and may be discontinued. &lt;br /&gt;
 ※ glow is a heavy process. (Especially the pseudo transparent) &lt;br /&gt;
&lt;br /&gt;
 Example, $ drawstring (abcd, 10,10,, ,255-128-64-128,) &lt;br /&gt;
 $ drawstring (abcd, 10,10,, ,255-128-64-128, left vcenter, glow :2:255-255-255) &lt;br /&gt;
 $ drawstring (efgh, 10,10,, ,255-255-255, vcenter glow_aa, glow :1:32-168-268 semibold) &lt;br /&gt;
 $ drawstring (wxyz, 10,10,, ,255-255-255, glow_aa, glow :0:32-168-268 semibold offset: 2:1 outline :32-168-268) &lt;br /&gt;
 $ drawstring (wxyz, 10,10,, ,255-255-255,, glow :2:32-168-268: 1) &lt;br /&gt;
 $ drawstring (wxyz, 10,10,, ,255-255-255, elipchar) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawrect (x, y, w, h, R1-G1-B1-A1, R2-G2-B2-A2, OPTIONS) &lt;br /&gt;
 Rectangular drawing functions. &lt;br /&gt;
 Coordinates (x, y) size (w, h) Draws a rectangle. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Aa - put ANCHIERIASU &lt;br /&gt;
&lt;br /&gt;
 Example $ drawrect (0,50,50,50,255-128-64-128,, aa) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ gradientrect (x, y, w, h, r1-g1-b1-a1, r2-g2-b2-a2, OPTIONS, peak_point) &lt;br /&gt;
 Gradient fill in the drawing functions in the rectangle. &lt;br /&gt;
 Coordinates (x, y) size (w, h) Draws a rectangle. &lt;br /&gt;
 R1-g1-b1-a1 Gradient start color &lt;br /&gt;
 R2-g2-b2-a2 Gradient end color &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Vertical gradient of vertical &lt;br /&gt;
 Gradient horizontal horizontal &lt;br /&gt;
 Aa put ANCHIERIASU &lt;br /&gt;
 how nonlinear nonlinear gradient &lt;br /&gt;
&lt;br /&gt;
 Peak_point: 0-100 &lt;br /&gt;
 Shifted the position of the gradient endpoints. &lt;br /&gt;
 0 by default, r1-g1-b1-a1 -&amp;gt; r2-g2-b2-a2 &lt;br /&gt;
 50 is when, r1-g1-b1-a1 -&amp;gt; r2-g2-b2-a2 -&amp;gt; r1-g1-b1-a1, and. &lt;br /&gt;
&lt;br /&gt;
 Example: $ gradientrect (0,50,50,50255-128-64-128255-255-255, vertical aa) &lt;br /&gt;
 $ gradientrect (0,50,50,50255-128-64-128255-255-255,, 10) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawblurrect (x, y, w, h, colour, level) &lt;br /&gt;
 Filling a rectangle drawing functions to blur the outline. &lt;br /&gt;
 Level [1-7] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawfocusrect (x, y, w, h) &lt;br /&gt;
 Function to draw a dotted line shows the focus rectangle frame specified. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawthemerect (x, y, w, h, control_name, partId, stateId) &lt;br /&gt;
 VisualStyle in the rectangle with a control (button or progress bar) function to draw. &lt;br /&gt;
 The only practical to draw a picture may be low. &lt;br /&gt;
 VisualStyle not defined in control will not be drawn. &lt;br /&gt;
 At least WindowXP required. &lt;br /&gt;
&lt;br /&gt;
 control_name: Specify the name of the type of control you want to draw. One of the following. &lt;br /&gt;
 window button rebar toolbar status listview header progress tab trackbar tooltip treeview spin scrollbar &lt;br /&gt;
 edit combobox taskbar taskband startpanel explorerbar &lt;br /&gt;
&lt;br /&gt;
 PartId: the parts you want to draw ID. Could we use the following number in the range for each control as a guide. &lt;br /&gt;
 In most cases, less than what I have defined. &lt;br /&gt;
 Window: 1-37 &lt;br /&gt;
 Button rebar listview tooltip: 1-5 &lt;br /&gt;
 Toolbar: 1-6 &lt;br /&gt;
 Status treeview taskband: 1-3 &lt;br /&gt;
 Header spin: 1-4 &lt;br /&gt;
 Progress: 1-4 &lt;br /&gt;
 Tab trackbar scrollbar :1-10 &lt;br /&gt;
 Edit: 1-2 &lt;br /&gt;
 Combobox: 1 &lt;br /&gt;
 Taskbar: 1-8 &lt;br /&gt;
 Startpanel: 1-11 &lt;br /&gt;
 Explorerbar: 1-12 &lt;br /&gt;
&lt;br /&gt;
 StateId: the state and selected ID. If the component does not have to specify the state is 0. &lt;br /&gt;
 stateId is 0 or 1 if not drawn in, the parts are not defined. &lt;br /&gt;
&lt;br /&gt;
 Example: $ drawthemerect (0,0,% el_width%,% el_height%, tab, 10,0) / / tab of body parts drawn &lt;br /&gt;
 $ drawthemerect (,,,, progress, 3,0) / / Draw the progress bar bar &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawroundrect (x, y, w, h, w2, h2, R1-G1-B1-A1, R2-G2-B2-A2, RESERVED) &lt;br /&gt;
 Draw a rectangle rolled angle function. &lt;br /&gt;
 Coordinates (x, y) size (w, h) to draw a rectangle with the corners rolled. &lt;br /&gt;
 Rounded the corner, w2, h2 can be adjusted. &lt;br /&gt;
 w&amp;gt; 4 * w2 &amp;amp; &amp;amp; h&amp;gt; 4 * h2 satisfy the need. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
     Example $ drawroundrect (10,20,50,50,4,4255-255-128-255,,) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawellipse (x, y, w, h, R1-G1-B1-A1, R2-G2-B2-A2, RESERVED) &lt;br /&gt;
 Ellipse drawing functions. &lt;br /&gt;
 Coordinates (x, y) size (w, h) draws an ellipse. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawtriangle (x1, y1, x2, y2, x3, y3, R1-G1-B1-A1, R2-G2-B2-A2, OPTIONS) &lt;br /&gt;
 (x1, y1), (x2, y2), (x3, y3) Draw a triangle and vertex function. &lt;br /&gt;
 R1-G1-B1-A1 internal color &lt;br /&gt;
 R2-G2-B2-A2 Border Color &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Aa - put ANCHIERIASU &lt;br /&gt;
&lt;br /&gt;
 Example: $ drawtriangle (10,5,20,10,10,15200-100-100,, aa) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ imageabs (x, y, w, h, path, OPTIONS, n, alpha, OPTIONS2) &lt;br /&gt;
 Coordinates (x, y) size (w, h) show the images in the path is specified. &lt;br /&gt;
 Retained in memory and after resizing the image, if you raise the efficiency of the process see below. &lt;br /&gt;
 The image is referenced, the memory is removed from them. &lt;br /&gt;
 w, h in the original image size is omitted, and the cache. &lt;br /&gt;
 (However, w, h if you are already cached in memory and then the image size to be directly cached) &lt;br /&gt;
&lt;br /&gt;
扱ITAI a reduced rate if more than one &lt;br /&gt;
 Poor quality and will be expanded after the reduction. &lt;br /&gt;
 Nodisplay noexpansion and use, &lt;br /&gt;
 Cache memory may be the largest reduction in the rate of reduction in the rate of use. &lt;br /&gt;
&lt;br /&gt;
 If there are images true, if false is returned. &lt;br /&gt;
&lt;br /&gt;
 Dipsplays the image specified by path. &lt;br /&gt;
 after the image is resized, it is cached on the memory. &lt;br /&gt;
&lt;br /&gt;
 path: absolute path of the image (or an embedded image of AudioFile path) &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 ■ &amp;lt;appearance&amp;gt; &lt;br /&gt;
 nokeepaspect not maintain the aspect ratio (nodisplay, archive, icon options and non-exclusive). &lt;br /&gt;
 Hide nodisplay read only memory. &lt;br /&gt;
 noexpansion will reduce, not increase. &lt;br /&gt;
&lt;br /&gt;
 ■ &amp;lt;align&amp;gt; exclusive. &lt;br /&gt;
 Left right horizontal aryne specified. &lt;br /&gt;
 Specify vertical aryne top bottom. &lt;br /&gt;
&lt;br /&gt;
 ■ &amp;lt;misc&amp;gt; &lt;br /&gt;
 wc wildcard (*,?) enabled. &lt;br /&gt;
&lt;br /&gt;
 ■ &amp;lt;read engine&amp;gt; exclusive. &lt;br /&gt;
 archive archive reader through the path of the images. &lt;br /&gt;
 The format of the archive reader is path dependent, the absolute path of the archive | base path in the archive file. &lt;br /&gt;
 Example: C: \ aaa \ image.zip | bbb / ccc.jpg &lt;br /&gt;
 icon path is specified in the icon file (*. ico) to appear. &lt;br /&gt;
&lt;br /&gt;
 Audio artreader path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 If you do not have embedded images, Audio files to load the images folder. However slow. &lt;br /&gt;
 Audio artreader_front path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 Audio artreader_back path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 Audio artreader_disc path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 Audio artreader_icon path specified by the embedded image file foobar2000 loaded at the core of the artwork reader. &lt;br /&gt;
 (artreader *** are currently disrecommended options because these option seem to be slow) &lt;br /&gt;
&lt;br /&gt;
 N rotateflip Index for &lt;br /&gt;
 One ninety &lt;br /&gt;
 2: 180 &lt;br /&gt;
 3: 270 &lt;br /&gt;
 4: flip horizontal &lt;br /&gt;
 Five ninety + flip horizontal &lt;br /&gt;
 6: Flipped vertically &lt;br /&gt;
 Seven ninety Flip Vertically + &lt;br /&gt;
&lt;br /&gt;
 Alpha 0-255 &lt;br /&gt;
 Opacity &lt;br /&gt;
&lt;br /&gt;
 OPTIONS2 (shadow effect) &lt;br /&gt;
 Glow: expand: colour &lt;br /&gt;
 Offset: x: y &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
     Example $ imageabs (10,10,50,50, C: \% album%. Jpg) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg, left top) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg,, 6) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg, bottom,, 128) &lt;br /&gt;
         $ imageabs (10,10,50,50, C: \% album%. jpg, bottom,,, glow :2:0-0-0 offset: 4:4) &lt;br /&gt;
         $ imageabs (10,10,50,50,% path%, artreader) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ imageabs_rc (rw, rh, srcx, srcy, srcw, srch, x, y, path, OPTIONS, n, alpha, OPTIONS2) &lt;br /&gt;
 To view the clip and resize images. &lt;br /&gt;
 path specified by the image size (rw, rh) after resizing, &lt;br /&gt;
 Portion of the area (srcx, srcy, srcw, srch) coordinates (x, y) size (srcw, srch) to display. &lt;br /&gt;
&lt;br /&gt;
 In memory (rw, rh) cache. &lt;br /&gt;
 When you evaluate the TF (rw, rh) with changes in, to refresh the image. &lt;br /&gt;
 Therefore, rw, rh is to specify a fixed value. &lt;br /&gt;
&lt;br /&gt;
 If there are images true, if false is returned. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS (imageabs). &lt;br /&gt;
 nokeepaspect not maintain the aspect ratio &lt;br /&gt;
 Hide nodisplay read only memory &lt;br /&gt;
 Archive &lt;br /&gt;
 Icon &lt;br /&gt;
     (Left &lt;br /&gt;
       Hcener &lt;br /&gt;
        Right &lt;br /&gt;
        Top &lt;br /&gt;
        Vcenter &lt;br /&gt;
            bottom) &lt;br /&gt;
 N rotateflip Index for &lt;br /&gt;
 One ninety &lt;br /&gt;
 2: 180 &lt;br /&gt;
 3: 270 &lt;br /&gt;
 4: flip horizontal &lt;br /&gt;
 Five ninety + flip horizontal &lt;br /&gt;
 6: Flipped vertically &lt;br /&gt;
 Seven ninety Flip Vertically + &lt;br /&gt;
&lt;br /&gt;
 Alpha 0-255 &lt;br /&gt;
         Opacity &lt;br /&gt;
    &lt;br /&gt;
 Example: &lt;br /&gt;
 $ imageabs_rc (200100,0,0100,50,10,10, C: \% album%. jpg,, 6192) &lt;br /&gt;
 $ imageabs_rc (200100,0,0200100,10,10, C: \% album%. jpg,,) (= $ imageabs (10,10200100, C: \% album%. jpg, left top,,)) &lt;br /&gt;
 $ imageabs_rc (150120,0,0150120,20,15, C: \% album%. jpg, hcenter vcenter,) (= $ imageabs (20,15150120, C: \% album%. jpg,,,)) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawimage (x, y, w, h, path, OPTIONS, n, aplha) &lt;br /&gt;
 Coordinates (x, y) size (w, h) show the images in the path is specified. &lt;br /&gt;
 $ Imageabs similar. &lt;br /&gt;
 w and h show the size of the original omitted. &lt;br /&gt;
 From memory immediately after display processing will be removed. &lt;br /&gt;
 TF to be reloaded each time the images are evaluated. &lt;br /&gt;
 &lt;br /&gt;
    ※ You can see a huge image, the amount of occupied memory減RASHITAKATTARI to see more pictures, &lt;br /&gt;
      imageabs for those who do not like the resizing process. &lt;br /&gt;
&lt;br /&gt;
 OPTIONS: nokeepaspect not maintain aspect ratio &lt;br /&gt;
 Left &lt;br /&gt;
 Right &lt;br /&gt;
 Top &lt;br /&gt;
 Bottom &lt;br /&gt;
&lt;br /&gt;
    n: rotateflip index for &lt;br /&gt;
        One ninety &lt;br /&gt;
        2: 180 &lt;br /&gt;
        3: 270 &lt;br /&gt;
        4: flip horizontal &lt;br /&gt;
        Five ninety + flip horizontal &lt;br /&gt;
        6: Flipped vertically &lt;br /&gt;
        Seven ninety Flip Vertically + &lt;br /&gt;
&lt;br /&gt;
     alpha 0-255 &lt;br /&gt;
         Opacity (transparency) &lt;br /&gt;
&lt;br /&gt;
 ● auxiliary drawing &lt;br /&gt;
&lt;br /&gt;
 $ getlastpos (elem) &lt;br /&gt;
 Display function imageabs, imageabs_rc right after, to get the coordinates to draw a picture. &lt;br /&gt;
 Also, measurestring use them when you get the results. &lt;br /&gt;
 If you are drawString, mempos available only immediately after the specified coordinates. &lt;br /&gt;
&lt;br /&gt;
    Elem element to retrieve. &lt;br /&gt;
 X: left &lt;br /&gt;
 Y: top &lt;br /&gt;
 W: width &lt;br /&gt;
 H: height &lt;br /&gt;
 R: right &lt;br /&gt;
 B: bottom &lt;br /&gt;
&lt;br /&gt;
 Example: &lt;br /&gt;
 $ Setworldtransform (2) &lt;br /&gt;
 $ Puts (img_path, C: \% album%. Jpg) &lt;br /&gt;
 $ imageabs (10,4100100, $ get (img_path), top noexpansion,) &lt;br /&gt;
 $ imageabs ($ getlastpos (x), $ getlastpos (b), $ getlastpos (w), 20, $ get (img_path), top nokeepaspect, 6) &lt;br /&gt;
 $ gradientrect ($ getlastpos (x), $ getlastpos (y), $ getlastpos (w), $ getlastpos (h),% el_backcolour% -128,% el_backcolour% -255) &lt;br /&gt;
 $ Setworldtransform (0) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ measurestring (text, x, y, W, H, OPTIONS) &lt;br /&gt;
 $ drawstring to calculate the area when drawing text. &lt;br /&gt;
 As a result, returns to the horizontal width of the viewing area. &lt;br /&gt;
 The display area is to get $ getlastpos. &lt;br /&gt;
 OPTIONS is the same as $ drawstring. &lt;br /&gt;
 Also, drawstring in, glow_aa glow if put in effect, &lt;br /&gt;
 Measurestring see the range of results and may not match. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ getimagewidth (path), $ getimageheight (path) &lt;br /&gt;
 The image path is specified in $ imageabs $ imageabs_rc of cache memory &lt;br /&gt;
 If the image has been resized in the horizontal width and vertical width returns. &lt;br /&gt;
 This means that only have $ imageabs $ imageabs_rc behind. &lt;br /&gt;
 nokeepaspect may be able to calculate the aspect ratio should be applied. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ setparcentmode (bx, by, bw, bh) &lt;br /&gt;
    Set the mode to specify the coordinates. &lt;br /&gt;
    Window space &lt;br /&gt;
    (0,0) ~ (% _width%,% _height%) where a, &lt;br /&gt;
    Percentage specified in the mode, (0,0) to (100100) mapping. &lt;br /&gt;
    x, y, w, h can be set individually. &lt;br /&gt;
    x, y, w, h all affect the function of one argument. &lt;br /&gt;
&lt;br /&gt;
    bx x coordinate specified mode &lt;br /&gt;
        0: Splitter mode specified in absolute coordinates &lt;br /&gt;
        1: Splitter value relative to the size (percentage) and designated. &lt;br /&gt;
    mode specified by y coordinates &lt;br /&gt;
    bw w coordinates specified mode &lt;br /&gt;
    bh h coordinates specified mode &lt;br /&gt;
&lt;br /&gt;
 $ getsyscolour (index) &lt;br /&gt;
 The r-g-b color system in the form of returns. &lt;br /&gt;
&lt;br /&gt;
 index: [0-30] color index system &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ averagecolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b-a to the average color of the form. &lt;br /&gt;
 (Colour1 + colour2 +・・・) / N &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ blendcolour (colour1, w1, colour2, w2, [,・・・]) &lt;br /&gt;
 R-g-b-a return with the average weight in the form. &lt;br /&gt;
 (w1 * colur1 + w2 * colour2 +・・・+ wN * colourN) / (w1 + w2 +・・・+ wN) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ addcolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b-a to add the color of the form. &lt;br /&gt;
・・・Colour1 + colour2 + + colourN &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ subcolour (colour1, colour2 [,・・・]) &lt;br /&gt;
 R-g-b-a to form a color subtraction. &lt;br /&gt;
 Colour1 - colour2 - colour3・・・- colourN &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ findfile (path, [path2, path3 ,...]) &lt;br /&gt;
 path (wildcards accepted) to be specified in the file exists, returns the first file. &lt;br /&gt;
 If you do not have the file does not return anything. (Strictly speaking, &amp;quot;false&amp;quot; returns) &lt;br /&gt;
 Path can be specified. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● function button &lt;br /&gt;
&lt;br /&gt;
 $ textbutton (x, y, w, h, text, mover_text, command, options1, options2) &lt;br /&gt;
    Create a button. &lt;br /&gt;
    Per Track only available. Per Second is not to write. &lt;br /&gt;
&lt;br /&gt;
    text: the button label &lt;br /&gt;
    mover_text: the button label when mouse over &lt;br /&gt;
&lt;br /&gt;
    command: &amp;quot;Type of instruction: arguments&amp;quot; specified in the form of &lt;br /&gt;
              ※ be no extra spaces &lt;br /&gt;
              ; Going to be separated by a specified multiple orders. &lt;br /&gt;
              A few instructions that can be specified. &lt;br /&gt;
              Very difficult to implement. . . &lt;br /&gt;
              : And; the splitter so that the characters and words in these arguments, &lt;br /&gt;
              Could not parse well. &lt;br /&gt;
&lt;br /&gt;
    Note 1: Do not specify the order processing time. &lt;br /&gt;
    Note 2: If you specify more than one instruction, the instruction execution order is not guaranteed. &lt;br /&gt;
              Especially if WINDOWSIZE and COMMAND is specified, WINDOWSIZE probably be better to run. &lt;br /&gt;
              COMMAND, CONTEXT and others, the order may be warranted. &lt;br /&gt;
&lt;br /&gt;
       COMMAND: command_path &lt;br /&gt;
               command_path to run the command specified by menu. &lt;br /&gt;
               COMMAND: View / Equalizer and &lt;br /&gt;
               COMMAND: File / Preferences; COMMAND: Playback / Play &lt;br /&gt;
               To specify that. &lt;br /&gt;
               ※ You can use the input help in setting some of them. . . &lt;br /&gt;
               TF command_path Note also that as &lt;br /&gt;
               COMMAND: &#039;View / Equalizer&#039; and it&#039;s recommended. &lt;br /&gt;
&lt;br /&gt;
       CONTEXT: context_path &lt;br /&gt;
               context_path KONTEKISUTOMENYUKOMANDO be designated to perform. &lt;br /&gt;
               Handles the context menu of the currently playing track. &lt;br /&gt;
               CONTEXT: Properties to specify the like. &lt;br /&gt;
               TF context_path Note also that as &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       PANELSHOW: cap: sh &lt;br /&gt;
               The caption of the child panel cap / hide. &lt;br /&gt;
               sh: 0 hide &lt;br /&gt;
                   1. &lt;br /&gt;
                  -1 Show / hide toggle &lt;br /&gt;
&lt;br /&gt;
       TFMODE: mode &lt;br /&gt;
               Per Track titleformat to change the mode. &lt;br /&gt;
               mode: 0 nowplaying mode &lt;br /&gt;
                     1 follow curosr mode &lt;br /&gt;
                    -1 Toggle &lt;br /&gt;
&lt;br /&gt;
       REFRESH: TF of PerTrack, PerSecond update. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       options1 specify the default decoration (can specify more than one, separated by spaces) &lt;br /&gt;
                fontcolor: r-g-b-color of the text &lt;br /&gt;
                brushcolor: rgba color fills the rectangle button &lt;br /&gt;
                pencolor: r-g-b-a color button border &lt;br /&gt;
                left top bottom right position of the text &lt;br /&gt;
&lt;br /&gt;
       options2: decorative specify when mouse over (can specify more than one, separated by spaces) &lt;br /&gt;
                fontcolor: r-g-b-color of the text &lt;br /&gt;
                brushcolor: rgba color fills the rectangle button &lt;br /&gt;
                pencolor: r-g-b-a color button border &lt;br /&gt;
                left top bottom right position of the text &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    Example $ textbutton (0,0,80,20, play, play, COMMAND: Playback / Play, fontcolor :64-64-64 brushcolor :192-192-192-128 pencolor :0-0-0, fontcolor: 32 -- 32-32) &lt;br /&gt;
 $ textbutton (100,0,80,20, Resize, Resize, PANELSHOW: aaa: -1; REFRESH, fontcolor :64-64-64 left bottom, fontcolor :32-32-32) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ imagebutton (x, y, w, h, path, mover_path, command, options1, options2) &lt;br /&gt;
    Create an image button. &lt;br /&gt;
    Per Track only available. Per Second is not to write. &lt;br /&gt;
    The internal processing of the images are treated equally and $ imageabs will be cached in memory. &lt;br /&gt;
    w, h is omitted, path to original image size is specified. &lt;br /&gt;
    textbutton command is common. &lt;br /&gt;
&lt;br /&gt;
       Display options options1 &lt;br /&gt;
                nokeepaspect &lt;br /&gt;
                left top bottom right &lt;br /&gt;
       options2: When mouse over the image display options &lt;br /&gt;
                 nokeepaspect &lt;br /&gt;
                 left top bottom right &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● GDI drawing functions of &lt;br /&gt;
 Using the GDI to draw. Simple minutes, may be faster. &lt;br /&gt;
&lt;br /&gt;
 $ drawtext (text, x, y, W, H, r-g-b, OPTIONS) &lt;br /&gt;
 GDI text drawing functions &lt;br /&gt;
 Text coordinates (x, y) in output &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Alain left hcenter right specified horizontal &lt;br /&gt;
 Alain specified top vcenter bottom vertical &lt;br /&gt;
 Not noclip clip &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ drawtextex (text, x, y, W, H, r-g-b, OPTIONS) &lt;br /&gt;
 GDI drawing functions text_2 &lt;br /&gt;
 Text coordinates (x, y) in output &lt;br /&gt;
&lt;br /&gt;
 OPTIONS &lt;br /&gt;
 Alain left hcenter right specified horizontal &lt;br /&gt;
 Alain specified top vcenter bottom vertical &lt;br /&gt;
 Not noclip clip &lt;br /&gt;
 Allow specified wrap wraparound (vcenter, bottom and exclusive) &lt;br /&gt;
 end_ellipsis If you clip text, replace the end of the text ... &lt;br /&gt;
 &lt;br /&gt;
 Example: $ drawtextex (text, 0,0,% _width%,% _height% ,0-0-0, hcenter vcenter end_ellipsis) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ gettextwidth (text, [FONTNAME, SIZE, OPTIONS]) &lt;br /&gt;
 GDI (drawtext, drawtextex) returns the width in the text when drawing horizontal text. &lt;br /&gt;
 can specify the font ($ font option). specified font is optional &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ gettextheight ([FONTNAME, SIZE, OPTIONS]) &lt;br /&gt;
 GDI returns vertical width of text when drawn. &lt;br /&gt;
 can specify the font ($ font option). specified font is optional &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ fillrect (x, y, w, h, r-g-b, RESERVED) &lt;br /&gt;
 Filled rectangle function &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ fillroundrect (x, y, w, h, w2, h2, r1-g1-b1, r2-g2-b2) &lt;br /&gt;
 Function of the fill rectangle with rounded corners &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ● Panel operating system functions &lt;br /&gt;
 Apparently drawing functions and the TF is such low efficiency of the frame together, &lt;br /&gt;
 Future plans to別枠. &lt;br /&gt;
&lt;br /&gt;
 $ showpanel (i, sh) or $ showpanel_c (caption, sh) &lt;br /&gt;
    Panel, change the function inactive &lt;br /&gt;
    i somethingth in the child panel list (counting from 0) &lt;br /&gt;
    sh 0: Inactive 1: View &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ movepanel (i, x, y, w, h) or $ movepanel_c (caption, x, y, w, h) &lt;br /&gt;
    i somethingth in the child panel list (counting from 0) &lt;br /&gt;
    Panel Force layout only for the specified coordinates (x, y) size (w, h) to move on. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ getcaption (i) &lt;br /&gt;
    I returns the list of child panel captions are set in the second panel. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ isvisible_c (caption) &lt;br /&gt;
     Returns the status panel. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= External links =&lt;br /&gt;
* [http://foo2k.chottu.net/ Official page with download link] (Japanese)&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=62114 Discussion thread]&lt;/div&gt;</summary>
		<author><name>Chiwou</name></author>
	</entry>
</feed>