<?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=Chronial</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=Chronial"/>
	<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Special:Contributions/Chronial"/>
	<updated>2026-04-29T04:54:57Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=28941</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=28941"/>
		<updated>2020-05-21T18:45:13Z</updated>

		<summary type="html">&lt;p&gt;Chronial: New Release&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Foobar Component Infobox&lt;br /&gt;
| name                 = Chronial&#039;s Coverflow&lt;br /&gt;
| screenshot           = [[Image:foo_chronflow.jpg|256px]]&lt;br /&gt;
| caption              = Chronial&#039;s Coverflow&lt;br /&gt;
| module_name          = foo_chronflow&lt;br /&gt;
| maintainer           = Christian Fersch [Chronial]&lt;br /&gt;
| stable_release       = 0.5.2&lt;br /&gt;
| stable_release_date  = 2020-05-21&lt;br /&gt;
| foobar2000_version   = 1.3.3&lt;br /&gt;
| foobar2000_ui_module = Default UI, Columns UI&lt;br /&gt;
| use                  = UI&lt;br /&gt;
| license              = GPL&lt;br /&gt;
| discussion_thread    = [http://hydrogenaud.io/index.php/topic,108450.0.html Hydrogenaudio Forums]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Chronial&#039;s Coverflow&#039;&#039;&#039; is a coverflow plugin for foobar2000. This plugin provides a UI panel that displays a 3d rendering of the albums in your media library.&lt;br /&gt;
&lt;br /&gt;
== Preferences ==&lt;br /&gt;
=== Cover Display tab ===&lt;br /&gt;
&amp;lt;!--&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
=== Performance tab ===&lt;br /&gt;
[[Image:foo_chronflow preferences.png|thumb|300px|Chronflow Preferences page showing the &amp;quot;Performance&amp;quot; tab.]]&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the renderer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
==== Rendering Quality ====&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
&lt;br /&gt;
{{panel|&#039;&#039;&#039;Note:&#039;&#039;&#039; Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar2000).|color=yellow}}&lt;br /&gt;
&lt;br /&gt;
==== Texture Cache ====&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to the size the covers actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
==== VSync ====&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes too much time the renderer might miss VBlank, causing quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If it is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Benchmarking ====&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
* [http://github.com/Chronial/foo_chronflow Official website]&lt;br /&gt;
* {{ha|https://hydrogenaud.io/index.php/topic,108450.0.html}}&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE:foobar2000:Components/Chronial&#039;s Coverflow (foo_chronflow)}}&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=28261</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=28261"/>
		<updated>2019-06-06T09:25:42Z</updated>

		<summary type="html">&lt;p&gt;Chronial: update version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Foobar Component Infobox&lt;br /&gt;
| name                 = Chronial&#039;s Coverflow&lt;br /&gt;
| screenshot           = [[Image:foo_chronflow.jpg|256px]]&lt;br /&gt;
| caption              = Chronial&#039;s Coverflow&lt;br /&gt;
| module_name          = foo_chronflow&lt;br /&gt;
| maintainer           = Christian Fersch [Chronial]&lt;br /&gt;
| stable_release       = N/A&lt;br /&gt;
| preview_release      = 0.5.1&lt;br /&gt;
| preview_release_date = 2019-05-16&lt;br /&gt;
| foobar2000_version   = 1.3.3&lt;br /&gt;
| foobar2000_ui_module = Default UI, Columns UI&lt;br /&gt;
| use                  = UI&lt;br /&gt;
| license              = GPL&lt;br /&gt;
| discussion_thread    = [http://hydrogenaud.io/index.php/topic,108450.0.html Hydrogenaudio Forums]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Chronial&#039;s Coverflow&#039;&#039;&#039; is a coverflow plugin for foobar2000. This plugin provides a UI panel that displays a 3d rendering of the albums in your media library.&lt;br /&gt;
&lt;br /&gt;
== Preferences ==&lt;br /&gt;
=== Cover Display tab ===&lt;br /&gt;
&amp;lt;!--&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
=== Performance tab ===&lt;br /&gt;
[[Image:foo_chronflow preferences.png|thumb|300px|Chronflow Preferences page showing the &amp;quot;Performance&amp;quot; tab.]]&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the renderer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
==== Rendering Quality ====&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
&lt;br /&gt;
{{panel|&#039;&#039;&#039;Note:&#039;&#039;&#039; Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar2000).|color=yellow}}&lt;br /&gt;
&lt;br /&gt;
==== Texture Cache ====&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to the size the covers actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
==== VSync ====&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes too much time the renderer might miss VBlank, causing quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If it is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Benchmarking ====&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
* [http://github.com/Chronial/foo_chronflow Official website]&lt;br /&gt;
* {{ha|https://hydrogenaud.io/index.php/topic,108450.0.html}}&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE:foobar2000:Components/Chronial&#039;s Coverflow (foo_chronflow)}}&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=28237</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=28237"/>
		<updated>2019-05-16T19:40:54Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* VSync */ Remove obsolete note&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Foobar Component Infobox&lt;br /&gt;
| name                 = Chronial&#039;s Coverflow&lt;br /&gt;
| screenshot           = [[Image:foo_chronflow.jpg|256px]]&lt;br /&gt;
| caption              = Chronial&#039;s Coverflow&lt;br /&gt;
| module_name          = foo_chronflow&lt;br /&gt;
| maintainer           = Christian Fersch [Chronial]&lt;br /&gt;
| stable_release       = N/A&lt;br /&gt;
| preview_release      = 0.5.0&lt;br /&gt;
| preview_release_date = 2019-05-16&lt;br /&gt;
| foobar2000_version   = 1.3.3&lt;br /&gt;
| foobar2000_ui_module = Default UI, Columns UI&lt;br /&gt;
| use                  = UI&lt;br /&gt;
| license              = GPL&lt;br /&gt;
| discussion_thread    = [http://hydrogenaud.io/index.php/topic,108450.0.html Hydrogenaudio Forums]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Chronial&#039;s Coverflow&#039;&#039;&#039; is a coverflow plugin for foobar2000. This plugin provides a UI panel that displays a 3d rendering of the albums in your media library.&lt;br /&gt;
&lt;br /&gt;
== Preferences ==&lt;br /&gt;
=== Cover Display tab ===&lt;br /&gt;
&amp;lt;!--&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
=== Performance tab ===&lt;br /&gt;
[[Image:foo_chronflow preferences.png|thumb|300px|Chronflow Preferences page showing the &amp;quot;Performance&amp;quot; tab.]]&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the renderer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
==== Rendering Quality ====&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
&lt;br /&gt;
{{panel|&#039;&#039;&#039;Note:&#039;&#039;&#039; Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar2000).|color=yellow}}&lt;br /&gt;
&lt;br /&gt;
==== Texture Cache ====&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to the size the covers actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
==== VSync ====&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes too much time the renderer might miss VBlank, causing quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If it is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Benchmarking ====&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
* [http://github.com/Chronial/foo_chronflow Official website]&lt;br /&gt;
* {{ha|https://hydrogenaud.io/index.php/topic,108450.0.html}}&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE:foobar2000:Components/Chronial&#039;s Coverflow (foo_chronflow)}}&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=28236</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=28236"/>
		<updated>2019-05-16T19:40:26Z</updated>

		<summary type="html">&lt;p&gt;Chronial: Update to latest version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Foobar Component Infobox&lt;br /&gt;
| name                 = Chronial&#039;s Coverflow&lt;br /&gt;
| screenshot           = [[Image:foo_chronflow.jpg|256px]]&lt;br /&gt;
| caption              = Chronial&#039;s Coverflow&lt;br /&gt;
| module_name          = foo_chronflow&lt;br /&gt;
| maintainer           = Christian Fersch [Chronial]&lt;br /&gt;
| stable_release       = N/A&lt;br /&gt;
| preview_release      = 0.5.0&lt;br /&gt;
| preview_release_date = 2019-05-16&lt;br /&gt;
| foobar2000_version   = 1.3.3&lt;br /&gt;
| foobar2000_ui_module = Default UI, Columns UI&lt;br /&gt;
| use                  = UI&lt;br /&gt;
| license              = GPL&lt;br /&gt;
| discussion_thread    = [http://hydrogenaud.io/index.php/topic,108450.0.html Hydrogenaudio Forums]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Chronial&#039;s Coverflow&#039;&#039;&#039; is a coverflow plugin for foobar2000. This plugin provides a UI panel that displays a 3d rendering of the albums in your media library.&lt;br /&gt;
&lt;br /&gt;
== Preferences ==&lt;br /&gt;
=== Cover Display tab ===&lt;br /&gt;
&amp;lt;!--&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
=== Performance tab ===&lt;br /&gt;
[[Image:foo_chronflow preferences.png|thumb|300px|Chronflow Preferences page showing the &amp;quot;Performance&amp;quot; tab.]]&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the renderer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
==== Rendering Quality ====&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
&lt;br /&gt;
{{panel|&#039;&#039;&#039;Note:&#039;&#039;&#039; Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar2000).|color=yellow}}&lt;br /&gt;
&lt;br /&gt;
==== Texture Cache ====&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to the size the covers actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
==== VSync ====&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes too much time the renderer might miss VBlank, causing quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If it is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
==== Benchmarking ====&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
* [http://github.com/Chronial/foo_chronflow Official website]&lt;br /&gt;
* {{ha|https://hydrogenaud.io/index.php/topic,108450.0.html}}&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE:foobar2000:Components/Chronial&#039;s Coverflow (foo_chronflow)}}&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18885</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18885"/>
		<updated>2008-07-27T13:29:41Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Cover Display Tab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Foobar Component Infobox&lt;br /&gt;
| name = foo_chronflow&lt;br /&gt;
| screenshot = [[Image:Coverflow.PNG|247px]]&lt;br /&gt;
| caption = Chronial&#039;s Coverflow&lt;br /&gt;
| maintainer = [http://www.hydrogenaudio.org/forums/index.php?showuser=21825 Chronial]&lt;br /&gt;
| stable_release = n/a&lt;br /&gt;
| preview_release = [http://chron.visiondesigns.de/foobar2000/foo_chronflow_v0.3.0.zip 0.3.0]&lt;br /&gt;
| foobar_version = 0.9.5&lt;br /&gt;
| use = -&lt;br /&gt;
| license = -&lt;br /&gt;
| website = [http://www.hydrogenaudio.org/forums/index.php?s=&amp;amp;showtopic=55607&amp;amp;view=findpost&amp;amp;p=559186 Author&#039;s post]&lt;br /&gt;
| discussion_thread = [http://www.hydrogenaudio.org/forums/index.php?showtopic=55607 Hydrogenaudio Forums]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
&amp;lt;!--&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of them more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to the size the covers actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes too much time the renderer might miss VBlank, causing quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If it is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18423</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18423"/>
		<updated>2008-04-25T11:25:35Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* VSync */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of them more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to the size the covers actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes too much time the renderer might miss VBlank, causing quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If it is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18422</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18422"/>
		<updated>2008-04-25T11:25:01Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* VSync */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of them more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to the size the covers actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes too much time the renderer might miss VBlank, causing quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18421</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18421"/>
		<updated>2008-04-25T11:24:26Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* VSync */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of them more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to the size the covers actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, causing quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18420</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18420"/>
		<updated>2008-04-25T11:22:32Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Texture Cache */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of them more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to the size the covers actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18419</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18419"/>
		<updated>2008-04-25T11:19:55Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Rendering Quality */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of them more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18418</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18418"/>
		<updated>2008-04-25T11:18:28Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Performance Tab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image and one thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18373</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18373"/>
		<updated>2008-04-16T02:38:32Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Cover Display Tab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
&#039;&#039;&#039;Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18372</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18372"/>
		<updated>2008-04-16T02:37:41Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Cover Display Tab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
 Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18371</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18371"/>
		<updated>2008-04-16T02:37:07Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Cover Display Tab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
Note that only the currently used Cover Display Config is stored (and exported) with your columns_ui/panels_ui config, the other ones are stored in the default foobar config.&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18370</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18370"/>
		<updated>2008-04-16T00:08:57Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Settings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Cover Display Tab ==&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/x85xxsf4(VS.80).aspx JScript reference]&lt;br /&gt;
&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18362</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18362"/>
		<updated>2008-04-11T14:43:04Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Benchmarking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;br /&gt;
&lt;br /&gt;
 The current version contains a bug that will only show fps info if foobar is started with this setting enabled.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18361</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18361"/>
		<updated>2008-04-10T09:20:07Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* VSync */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and no tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000redirect:37835416-4578-4AAA-A229-E09AB9E2CB9C&amp;diff=18357</id>
		<title>Foobar2000redirect:37835416-4578-4AAA-A229-E09AB9E2CB9C</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000redirect:37835416-4578-4AAA-A229-E09AB9E2CB9C&amp;diff=18357"/>
		<updated>2008-04-08T03:13:08Z</updated>

		<summary type="html">&lt;p&gt;Chronial: Redirecting to Foobar2000:Components 0.9/Chronial&amp;#039;s Coverflow (foo chronflow)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Foobar2000:Components 0.9/Chronial&#039;s Coverflow (foo chronflow)]]&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18356</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18356"/>
		<updated>2008-04-08T01:56:23Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Benchmarking */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and on tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;br /&gt;
;Display speed information (fps, ms per frame)&lt;br /&gt;
:This displays information about the rendering speed in the panel. The panel has to be large enough for it to be visible, otherwise it won&#039;t be drawn. The information displayed is to be interpreted in the following way:&lt;br /&gt;
:*&#039;&#039;&#039;fps:&#039;&#039;&#039; displays the average FPS (averaged over 30 frames)&lt;br /&gt;
:*&#039;&#039;&#039; min:&#039;&#039;&#039; displays the fps for the one frame of the last 30 frames that took the longest to display&lt;br /&gt;
:*&#039;&#039;&#039;cpu-ms/f:&#039;&#039;&#039; this number shows the amount of time the plugin spend to generate the information for the frame and pass it to the GPU. upload duration is also added to this number. It&#039;s rather difficult to interpret this number, but if it is way lower than (1000ms/refresh rate) and your fps are lower than your fps, there is quite probably something wrong with the VSync Sleep()&lt;br /&gt;
:*&#039;&#039;&#039; max:&#039;&#039;&#039; same as for frames, but for the cpu-ms/f&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18355</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18355"/>
		<updated>2008-04-08T01:46:05Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* VSync */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
You can choose between 3 different Settings for VSync:&lt;br /&gt;
;No Vsync + try to hit VBlank with Sleep() : This is actually no VSync, but the framerate is limited by the renderer sleeping some time between each frame. This has the lowest CPU usage of the 3 options, but you do not get the benefits of VSync -&amp;gt; you might experience tearing. You should try this setting and if you do not see any annoying tearing you should stick with it, since it delivers best performance.&lt;br /&gt;
;Vsync + try to hit VBlank with Sleep(): This enables VSync, but since some GPUs (mine for example) cause 100% CPU usage while waiting for VBlank (the moment at which you monitor has finished displaying the old picture), the renderer tries to sleep some time here to reduce CPU usage. This can cause a severe CPU usage reduction against pure VSync - at my system it dropped from 100% to 20%. But if another process takes to much time the renderer might miss VBlank, cause quite a drop in framerate.&lt;br /&gt;
;Vsync only: Just activates VSync. If VSync is well implemented by your GPU (it is not by NVidia GPUs), this will give you high framerate, good CPU usage and on tearing. If is not well implemented you will get high framerate and no tearing but 100% cpu usage during animation.&lt;br /&gt;
Note that the Sleep() modes need to know your display&#039;s refresh rate. If you have a multi-monitor system with different refresh rates among the monitors and foobar not running on the primary display, the plugin might not be able to guess the right refresh rate.&amp;lt;br&amp;gt;&lt;br /&gt;
If your refresh rate is 100hz, the plugin limits itself to 50fps, since you can&#039;t see 100fps after all.&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18354</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18354"/>
		<updated>2008-04-08T01:34:00Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Texture Cache */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video display, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18353</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18353"/>
		<updated>2008-04-08T01:32:55Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Texture Cache */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
; Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
; Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video rendering, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18352</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18352"/>
		<updated>2008-04-08T01:32:23Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Texture Cache */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
: You should try to set this to size the cover actually have inside the panel. This can heavily increase texture quality, since the shrinking done during loading produces way better quality than shrinking done during rendering&lt;br /&gt;
; Enable Texture Compression : This will quite heavily reduce the amount of GPU memory used by the covers (on my system it went down to 1/6), but will also increase the texture uploading time.&lt;br /&gt;
: Texture Loading Thread Priority: You can decrease the priority of the texture loading. You can try to change this when you experience slow rendering, but the default should be alright in most cases.&lt;br /&gt;
: Empty cache when window is minimized: This will cause the texture cache to be cleared when you minimize the foobar window. This makes it available for games or video rendering, but when you restore the foobar window, the covers will have to be loaded again.&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18351</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18351"/>
		<updated>2008-04-08T01:25:16Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Texture Cache */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: The maximum sidelength for the textures. All covers will be shrinked to fit in a square with this sidelength. Decreasing this setting will lower the needed GPU memory as well as the upload time. Note that, depending on your GPU this might be rounded down to the next power of two. You have to reload the texture cache for this to take effect (do this by pressing ctrl+F5 in the panel).&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18350</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18350"/>
		<updated>2008-04-08T01:21:28Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Settings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, so this also the limiting element for your cache. Remember that there are multiple other applications that use your GPU and all share its memory. So setting the texture cache too large will influence video playback, other multimedia applications as well as games.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading process works this way: the background loader loads the image into memory and resizes it to the &#039;&#039;maximum texture size&#039;&#039;, then the image is moved into GPU memory and compressed. This is called uploading. During the uploading the renderer has to pause, and as the uploading can take rather long (we only have 13ms to render a frame at 60fps) it is only done when there is no animation displayed or when a preloaded image comes into view.&lt;br /&gt;
; Cache Size: The number of covers that will be cached. This should always be larger than the number of covers displayed at once, because otherwise there will be uploading at nearly every frame what might slow down you rendering severely. But setting this to high might be too much for your GPU memory, thus slowing down you whole system.&lt;br /&gt;
; Maximum Texture Size: A&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18349</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18349"/>
		<updated>2008-04-08T01:13:02Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Settings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). Once the texture cache is filled, the loader sleeps until you move the covers again. See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
Each time you move the display to a new cover, the texture loader makes sure that at least &#039;&#039;cache size&#039;&#039;*0.9 covers around the selected cover are loaded.&amp;lt;br&amp;gt;&lt;br /&gt;
The covers are loaded into &#039;&#039;&#039;GPU memory&#039;&#039;&#039;, &lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18348</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18348"/>
		<updated>2008-04-08T01:07:44Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
The texture loading thread loads the covers from you hard-disk into memory so the rederer can display them. This is done in an asynchronous manner (you can see this by scrolling very fast - the covers move faster than the loader can load them -&amp;gt; you see the &amp;quot;hourglass cover&amp;quot;). See [[#Texture Cache]] for further details.&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18347</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18347"/>
		<updated>2008-04-08T01:04:36Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
To understand the effect of the settings in the performance tab it is important to know the basic architecture of the plugin:&lt;br /&gt;
The plugin has two threads - one thread to render the image on thread to cache the cover textures.&amp;lt;br&amp;gt;&lt;br /&gt;
The image will only be rendered when it is needed - eg. when you restore the foobar window, new textures have been loaded or an animation is shown. While foobar is minimized or completely hidden behind any windows the renderer will do nothing at all and so also cause no load for your cpu.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality, but also increased GPU/CPU+GPU load - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18346</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18346"/>
		<updated>2008-04-08T00:59:40Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
This plugin is still in beta developement and should not be used if you are affraid of bugs or crashes!&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;br /&gt;
=== Rendering Quality ===&lt;br /&gt;
These Settings influence the quality of the generated image.&lt;br /&gt;
While multisampling only increases the smoothness of the cover edges, supersampling also does increase the cover resizing quality. But while multisampling only increases the load on the GPU, supersampling also increases the load on the CPU. For both of the more passes means more quality - supersampling with 2 passes should yield enough quality and settings above 4 should barely make any difference. You should not use 16 pass supersampling, as it is very CPU and GPU intensive (the image is rendered 16 times!).&lt;br /&gt;
 Changes to the multisampling settings will only take effect after the panel is restarted (either hide and show it or restart foobar)&lt;br /&gt;
&lt;br /&gt;
=== Texture Cache ===&lt;br /&gt;
&lt;br /&gt;
=== VSync ===&lt;br /&gt;
&lt;br /&gt;
=== Benchmarking ===&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18345</id>
		<title>Foobar2000:Components/Chronial&#039;s Coverflow (foo chronflow)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components/Chronial%27s_Coverflow_(foo_chronflow)&amp;diff=18345"/>
		<updated>2008-04-08T00:47:35Z</updated>

		<summary type="html">&lt;p&gt;Chronial: New page: = Description = Coverflow...  = Settings = == Performance Tab ==&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Description =&lt;br /&gt;
Coverflow...&lt;br /&gt;
&lt;br /&gt;
= Settings =&lt;br /&gt;
== Performance Tab ==&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Winamp_API_Emulator_(foo_winamp_spam)&amp;diff=16678</id>
		<title>Foobar2000:Components 0.9/Winamp API Emulator (foo winamp spam)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Components_0.9/Winamp_API_Emulator_(foo_winamp_spam)&amp;diff=16678"/>
		<updated>2007-02-26T20:02:39Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Foobar2000:0.9 Winamp Spam (foo winamp spam)]]&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000redirect:D6E376C3-3C15-4E70-9ACB-1E4B32493722&amp;diff=15857</id>
		<title>Foobar2000redirect:D6E376C3-3C15-4E70-9ACB-1E4B32493722</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000redirect:D6E376C3-3C15-4E70-9ACB-1E4B32493722&amp;diff=15857"/>
		<updated>2006-12-11T17:17:07Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Foobar2000:0.9 Winamp Spam (foo winamp spam)]]&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Winamp_Spam_(foo_winamp_spam)&amp;diff=15856</id>
		<title>Foobar2000:0.9 Winamp Spam (foo winamp spam)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Winamp_Spam_(foo_winamp_spam)&amp;diff=15856"/>
		<updated>2006-12-11T17:16:25Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;foo_winamp_spam&#039;&#039;&#039; emulates a Winamp 2.x window so existing plugins you have that use the &#039;&#039;&#039;Winamp API&#039;&#039;&#039; can continue to work with foobar2000 with minimal trouble. &lt;br /&gt;
&lt;br /&gt;
=Description=&lt;br /&gt;
This component was primarily designed to be used in conjunction with an mIRC song reporting DLL, [http://www.r1ch.net/stuff/r1dll/ r1dll]. However it is known to work with most software packages that use the Winamp API such as &#039;&#039;EvilLyrics&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
The component works primarily by creating a window with the Winamp 1.x classname and setting the current song title to it. This allows programs to find the Winamp window handle in order to send further messages. The most used parts of the Winamp API are already implemented, but if your application does not work with foo_winamp_spam, feel free to [http://www.hydrogenaudio.org/forums/index.php?showtopic=47155 ask for implementation].&amp;lt;!--Currently a small subset of the full Winamp API is emulated, including play/pause/stop, add files, exit, repeat/shuffle, report song stats (kbps, khz, channels, duration, position) and a few other things.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Links=&lt;br /&gt;
*[http://chron.visiondesigns.de/foobar2000/#foo_winamp_spam Component Homepage]&lt;br /&gt;
*[http://www.r1ch.net/stuff/foobar/ Component Homepage for Foobar2000 0.7 and 0.8]&lt;br /&gt;
*[http://www.hydrogenaudio.org/forums/index.php?showtopic=47155 Discussion Thread]&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Winamp_Spam_(foo_winamp_spam)&amp;diff=15850</id>
		<title>Foobar2000:0.9 Winamp Spam (foo winamp spam)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Winamp_Spam_(foo_winamp_spam)&amp;diff=15850"/>
		<updated>2006-12-10T12:34:44Z</updated>

		<summary type="html">&lt;p&gt;Chronial: Removed GTalk Paragraph&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;foo_winamp_spam&#039;&#039;&#039; emulates a Winamp 2.x window so existing plugins you have that use the &#039;&#039;&#039;Winamp API&#039;&#039;&#039; can continue to work with foobar2000 with minimal trouble. &lt;br /&gt;
&lt;br /&gt;
=Description=&lt;br /&gt;
This component was primarily designed to be used in conjunction with an mIRC song reporting DLL, [http://www.r1ch.net/stuff/r1dll/ r1dll]. However it is known to work with most software packages that use the Winamp API such as &#039;&#039;EvilLyrics&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
The component works primarily by creating a window with the Winamp 1.x classname and setting the current song title to it. This allows programs to find the Winamp window handle in order to send further messages. The most used parts of the Winamp API are already implemented, but if your application does not work with foo_winamp_spam, feel free to [http://www.hydrogenaudio.org/forums/index.php?showtopic=47155 ask for implementation].&amp;lt;!--Currently a small subset of the full Winamp API is emulated, including play/pause/stop, add files, exit, repeat/shuffle, report song stats (kbps, khz, channels, duration, position) and a few other things.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Links=&lt;br /&gt;
*[http://chron.visiondesigns.de/foobar2000/#foo_winamp_spam Component Homepage]&lt;br /&gt;
*[http://www.r1ch.net/stuff/foobar/ Component Homepage for Foobar2000 0.7 and 0.8]&lt;br /&gt;
*[http://www.hydrogenaudio.org/forums/index.php?showtopic=47155 Discussion Thread]&lt;br /&gt;
&lt;br /&gt;
=Links=&lt;br /&gt;
*[http://www.r1ch.net/stuff/r1dll/ Homepage]&lt;br /&gt;
*[http://r-1.ch/foo_winamp_spam-0.9beta3.7z Download Foobar2000 0.9 Compatible Beta (7z compressed)]&lt;br /&gt;
*[http://www.r1ch.net/stuff/foobar/foo_winamp_spam-0.74.zip Download latest stable release (0.74) (9.33kb, released 29 January 2004) (Foobar 0.8)]&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Winamp_Spam_(foo_winamp_spam)&amp;diff=15849</id>
		<title>Foobar2000:0.9 Winamp Spam (foo winamp spam)</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Winamp_Spam_(foo_winamp_spam)&amp;diff=15849"/>
		<updated>2006-12-10T11:57:42Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* Description */  Updated&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;foo_winamp_spam&#039;&#039;&#039; emulates a Winamp 2.x window so existing plugins you have that use the &#039;&#039;&#039;Winamp API&#039;&#039;&#039; can continue to work with foobar2000 with minimal trouble. &lt;br /&gt;
&lt;br /&gt;
=Description=&lt;br /&gt;
This component was primarily designed to be used in conjunction with an mIRC song reporting DLL, [http://www.r1ch.net/stuff/r1dll/ r1dll]. However it is known to work with most software packages that use the Winamp API such as &#039;&#039;EvilLyrics&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
The component works primarily by creating a window with the Winamp 1.x classname and setting the current song title to it. This allows programs to find the Winamp window handle in order to send further messages. The most used parts of the Winamp API are already implemented, but if your application does not work with foo_winamp_spam, feel free to [http://www.hydrogenaudio.org/forums/index.php?showtopic=47155 ask for implementation].&amp;lt;!--Currently a small subset of the full Winamp API is emulated, including play/pause/stop, add files, exit, repeat/shuffle, report song stats (kbps, khz, channels, duration, position) and a few other things.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Links=&lt;br /&gt;
*[http://chron.visiondesigns.de/foobar2000/#foo_winamp_spam Component Homepage]&lt;br /&gt;
*[http://www.r1ch.net/stuff/foobar/ Component Homepage for Foobar2000 0.7 and 0.8]&lt;br /&gt;
*[http://www.hydrogenaudio.org/forums/index.php?showtopic=47155 Discussion Thread]&lt;br /&gt;
&lt;br /&gt;
=Applications=&lt;br /&gt;
&lt;br /&gt;
==Google Talk (Gtalk)==&lt;br /&gt;
The latest release of Gtalk (as of Aug 2006) includes the ability to display currently playing music and log this to your google account (if you want it to). The client natively supports Winamp, iTunes, WMP, etc. however lacks foobar2000 compatability. It is possible to use the &#039;&#039;&#039;foo_winamp_spam&#039;&#039;&#039; component to show songs foobar is playing: [http://www.hydrogenaudio.org/forums/index.php?showtopic=47155 Hydrogenaudio Discussion]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Links=&lt;br /&gt;
*[http://www.r1ch.net/stuff/r1dll/ Homepage]&lt;br /&gt;
*[http://r-1.ch/foo_winamp_spam-0.9beta3.7z Download Foobar2000 0.9 Compatible Beta (7z compressed)]&lt;br /&gt;
*[http://www.r1ch.net/stuff/foobar/foo_winamp_spam-0.74.zip Download latest stable release (0.74) (9.33kb, released 29 January 2004) (Foobar 0.8)]&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Encouraged_Tag_Standards&amp;diff=15791</id>
		<title>Foobar2000:Encouraged Tag Standards</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Encouraged_Tag_Standards&amp;diff=15791"/>
		<updated>2006-12-06T03:15:15Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* PLAY_DATE and PLAY_TIME */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{fb2k}}&lt;br /&gt;
== Disclaimer ==&lt;br /&gt;
The guidelines described in this document have been agreed upon by a group of foobar2000 users and titleformatting scripts authors. Adherence to these guidelines is not required to be able to use foobar2000, though some components or pre-made titleformatting scripts may require or enforce the use of a particular tag.&lt;br /&gt;
&lt;br /&gt;
== Discussion and comments ==&lt;br /&gt;
You can leave comments about this page on the [[Foobar2000_Talk:Encouraged_Tag_Standards|Talk page]]. However, real discussion, proposals for new tag-standards, and decisions should happen in the [http://www.hydrogenaudio.org/forums/index.php?showtopic=31530 forum-thread], because more people will notice it there and be able to give input.&lt;br /&gt;
&lt;br /&gt;
== Codesnippets and foobar2000 versions ==&lt;br /&gt;
The codesnippets are meant for use in Foobar2000 v0.9. Because of the new field-remappings introduced in v0.9, they do not work with older versions of foobar2000.&lt;br /&gt;
&lt;br /&gt;
== General Tag Construction ==&lt;br /&gt;
&lt;br /&gt;
* Use an easily understood English field name.&lt;br /&gt;
* Prefix album-related information with &amp;quot;ALBUM &amp;quot;, ie. &amp;quot;ALBUM ARTIST&amp;quot;, &amp;quot;ALBUM SUBTITLE&amp;quot;.&lt;br /&gt;
* Avoid use of non-alphabetical characters. For serial fields (for a bad example, FIELD1, FIELD2, etc.), merely enter them in the order that you wish them to be read in.&lt;br /&gt;
* Try to avoid the use of underscores. Spaces are easier to type, more legible, and as easily useable in Tagz. Spaces are also preferable to no spaces.&lt;br /&gt;
&lt;br /&gt;
== Overview of Current Recommendations ==&lt;br /&gt;
&lt;br /&gt;
FIELD NAME [format] (component)&lt;br /&gt;
&lt;br /&gt;
* ALBUM ARTIST [e.g., Various Artists, The Foobar Collective] (none)&amp;lt;br&amp;gt;&#039;&#039;Notes&#039;&#039;: Field name is ALBUM ARTIST, with &#039;&#039;no underscore&#039;&#039;.  Tag should exist if and only if an album is by multiple artists, and be contained in every track.  Track-specific artists should be entered in the ARTIST tag, never in the TITLE tag.&amp;lt;br&amp;gt;[http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Encouraged_Tag_Standards#ALBUM_ARTIST (more about this standard)]&lt;br /&gt;
* FIRST_PLAYED and LAST_PLAYED [2005-03-22 19:00:00...] ([http://www.hydrogenaudio.org/forums/index.php?showtopic=20719 foo_playcount])&amp;lt;br&amp;gt;&#039;&#039;Notes&#039;&#039;: These two tags use underscores instead of spaces - reason for this was to make it consistent with the already existing PLAY_COUNTER-tag. Any amount or type of data may be placed after the time.  Compliant TAGZ code shall use $substr() instead of $right() when extracting substrings from this field.&amp;lt;br&amp;gt;&#039;&#039;See also&#039;&#039;: [http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Tips_%26_Tricks#Standardize_my_PLAY_DATE_and_PLAY_TIME_fields Standardize my PLAY_DATE and PLAY_TIME fields]&amp;lt;br&amp;gt;[http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Encouraged_Tag_Standards#FIRST_PLAYED_and_LAST_PLAYED (more about this standard)]&lt;br /&gt;
&lt;br /&gt;
=== ALBUM ARTIST ===&lt;br /&gt;
&#039;&#039;Basics&#039;&#039;:&lt;br /&gt;
*the tag-fieldname used for declaring and describing albums/split-EPs or split-singles which contain various artists is &amp;quot;ALBUM ARTIST&amp;quot; (separated with space, not underscore)&lt;br /&gt;
*tag should only exist if an album contains various artists. It should NOT be created when an album does not contain various artists.&lt;br /&gt;
*the tag can contain the overall artist of an album (like e.g. &amp;quot;the foo-bar collective&amp;quot;,) multiple artists (e.g. with split-EPs) or if an album does not have a clear overall artist (for example with compilations) just &amp;quot;Various Artists&amp;quot;. Simply said: you&#039;re free to enter whatever you like as long as it describes the overall album-wide artist(s).&lt;br /&gt;
*every track in a V.A.-album has to contain this tag with the same value&lt;br /&gt;
*the track-specific artist should be entered into the ARTIST-tag&lt;br /&gt;
*the TITLE-tag should only contain the track-title&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Reasons for this standard&#039;&#039;:&lt;br /&gt;
*it solves all issues regarding albums which contain multiple artists with just one tag&lt;br /&gt;
*it is already in widespread use&lt;br /&gt;
*sortable and searchable with low effort&lt;br /&gt;
*keeping the ARTIST-tag trackspecific allows to find tracks in V.A.-albums as well when searching for a certain artist (DB-friendly)&lt;br /&gt;
*keeping the TITLE-tag title-specific allows sorting and searching of V.A.-albums by title (DB-friendly)&lt;br /&gt;
*allows meaningful determination and display of V.A.-Albums with a minimum amount of code&lt;br /&gt;
*avoids resource-hungry and unsafe &amp;quot;guessing&amp;quot; of V.A.-albums via the filepath&lt;br /&gt;
*easy to remember and type in manually&lt;br /&gt;
*does not disrupt existing systems when the ARTIST- and TITLE-tag are already track specific (easy transition)&lt;br /&gt;
*can coexist with additional directory-based sorting and marking&lt;br /&gt;
*can be used for split-EPs and split-singles as well&lt;br /&gt;
*supported by [[Foobar2000:Titleformat_Reference#Field_remappings|Field Remappings]] in foobar2000 0.9&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Code snippets&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 // check if an album is V.A.&lt;br /&gt;
 $if($meta_test(album artist),$puts(album_is_va,1))&lt;br /&gt;
&lt;br /&gt;
 // For sorting by artist in an album-context replace %artist% - %album% with:&lt;br /&gt;
 %album artist% - %album%&lt;br /&gt;
&lt;br /&gt;
 // singlemode display without %album artist%-support&lt;br /&gt;
 [%artist% - ][%album% - ][%title%]&lt;br /&gt;
&lt;br /&gt;
 // singlemode display with %album artist%-support&lt;br /&gt;
 // note: if your display supports both, albummode and singlemode, then you&lt;br /&gt;
 // may want to use the above version instead in singlemode - depends on taste&lt;br /&gt;
 [%album artist% - ][%album% - ][%track artist% - ][%title%]&lt;br /&gt;
&lt;br /&gt;
 // How to easily integrate %album artist% into an albummode-display:&lt;br /&gt;
 // in the albummode-column, replace %artist% with:&lt;br /&gt;
 [%album artist%]&lt;br /&gt;
 // in the title-column, replace %title% with:&lt;br /&gt;
 [%track artist% - ][%title%]&lt;br /&gt;
&lt;br /&gt;
=== FIRST_PLAYED and LAST_PLAYED ===&lt;br /&gt;
&#039;&#039;Basics&#039;&#039;:&lt;br /&gt;
* the tag-fieldname used for storing info when a song was played the first time is &amp;quot;FIRST_PLAYED&amp;quot;&lt;br /&gt;
* the tag-fieldname used for storing info when a song was played the last time is &amp;quot;LAST_PLAYED&amp;quot;&lt;br /&gt;
* tags contain date and time in the following format at the beginning: &amp;quot;YYYY-MM-DD HH:MM:SS&amp;quot; (with 24hours-format)&lt;br /&gt;
* additional info may be appended after the above info&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Reasons for this standard&#039;&#039;:&lt;br /&gt;
* the [http://www.hydrogenaudio.org/musepack/klemm/www.personal.uni-jena.de/~pfk/mpp/sv8/time.html APE-dateformat] (derived from ISO) is internationally neutral&lt;br /&gt;
* sortable&lt;br /&gt;
* easily readable and recognizable&lt;br /&gt;
* format can be verified with TAGZ&lt;br /&gt;
* can be included in formatting-strings without reformatting it (pro for amateur tagz-coders)&lt;br /&gt;
* choosing a new fieldname avoids confusion with the existing ambigious play_date tag&lt;br /&gt;
* field name is easy to understand/recognize/remember and short enough to type in manually&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Code snippets&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 // verify tag-format (we check the pos. of the first dash and &amp;quot;:&amp;quot;)&lt;br /&gt;
 // using $len for verification is strongly unrecommended!&lt;br /&gt;
 $if(&lt;br /&gt;
 $and($strcmp($strstr(%last_played%,-),5),$strcmp($strstr(%last_played%,:),14))&lt;br /&gt;
 ,$puts(last_played_is_valid,1)&lt;br /&gt;
 )&lt;br /&gt;
&lt;br /&gt;
 // disassemble the timestamp for later reformatting or calcuations&lt;br /&gt;
 $puts(last_played_year,$substr(%last_played%,1,4))&lt;br /&gt;
 $puts(last_played_month,$substr(%last_played%,6,7))&lt;br /&gt;
 $puts(last_played_day,$substr(%last_played%,9,10))&lt;br /&gt;
 $puts(last_played_hour,$substr(%last_played%,12,13))&lt;br /&gt;
 $puts(last_played_min,$substr(%last_played%,15,16))&lt;br /&gt;
 $puts(last_played_sec,$substr(%last_played%,18,19))&lt;br /&gt;
&lt;br /&gt;
 // display only the date of last_played (without reformatting)&lt;br /&gt;
 $left(%last_played%,10)&lt;br /&gt;
&lt;br /&gt;
 // display only the time of last_played (without reformatting)&lt;br /&gt;
 // the use of $right is strongly unrecommended!&lt;br /&gt;
 $substr(%last_played%,12,19)&lt;br /&gt;
&lt;br /&gt;
The above code-snippets can be used for FIRST_PLAYED as well (just replace last_played with first_played).&lt;br /&gt;
&lt;br /&gt;
== Obsolete and Deprecated Tag Standards ==&lt;br /&gt;
&lt;br /&gt;
=== PLAY_DATE and PLAY_TIME ===&lt;br /&gt;
&lt;br /&gt;
Deprecated tags produced by old versions of foo_playcount.  Default format DDMMYY for PLAY_DATE and HHMMSS (24hr) for PLAY_TIME.  See [[Foobar2000:Encouraged Tag Standards#FIRST_PLAYED and LAST_PLAYED|FIRST_PLAYED and LAST_PLAYED]].&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Encouraged_Tag_Standards&amp;diff=15790</id>
		<title>Foobar2000:Encouraged Tag Standards</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Encouraged_Tag_Standards&amp;diff=15790"/>
		<updated>2006-12-06T03:14:47Z</updated>

		<summary type="html">&lt;p&gt;Chronial: /* PLAY_DATE and PLAY_TIME */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{fb2k}}&lt;br /&gt;
== Disclaimer ==&lt;br /&gt;
The guidelines described in this document have been agreed upon by a group of foobar2000 users and titleformatting scripts authors. Adherence to these guidelines is not required to be able to use foobar2000, though some components or pre-made titleformatting scripts may require or enforce the use of a particular tag.&lt;br /&gt;
&lt;br /&gt;
== Discussion and comments ==&lt;br /&gt;
You can leave comments about this page on the [[Foobar2000_Talk:Encouraged_Tag_Standards|Talk page]]. However, real discussion, proposals for new tag-standards, and decisions should happen in the [http://www.hydrogenaudio.org/forums/index.php?showtopic=31530 forum-thread], because more people will notice it there and be able to give input.&lt;br /&gt;
&lt;br /&gt;
== Codesnippets and foobar2000 versions ==&lt;br /&gt;
The codesnippets are meant for use in Foobar2000 v0.9. Because of the new field-remappings introduced in v0.9, they do not work with older versions of foobar2000.&lt;br /&gt;
&lt;br /&gt;
== General Tag Construction ==&lt;br /&gt;
&lt;br /&gt;
* Use an easily understood English field name.&lt;br /&gt;
* Prefix album-related information with &amp;quot;ALBUM &amp;quot;, ie. &amp;quot;ALBUM ARTIST&amp;quot;, &amp;quot;ALBUM SUBTITLE&amp;quot;.&lt;br /&gt;
* Avoid use of non-alphabetical characters. For serial fields (for a bad example, FIELD1, FIELD2, etc.), merely enter them in the order that you wish them to be read in.&lt;br /&gt;
* Try to avoid the use of underscores. Spaces are easier to type, more legible, and as easily useable in Tagz. Spaces are also preferable to no spaces.&lt;br /&gt;
&lt;br /&gt;
== Overview of Current Recommendations ==&lt;br /&gt;
&lt;br /&gt;
FIELD NAME [format] (component)&lt;br /&gt;
&lt;br /&gt;
* ALBUM ARTIST [e.g., Various Artists, The Foobar Collective] (none)&amp;lt;br&amp;gt;&#039;&#039;Notes&#039;&#039;: Field name is ALBUM ARTIST, with &#039;&#039;no underscore&#039;&#039;.  Tag should exist if and only if an album is by multiple artists, and be contained in every track.  Track-specific artists should be entered in the ARTIST tag, never in the TITLE tag.&amp;lt;br&amp;gt;[http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Encouraged_Tag_Standards#ALBUM_ARTIST (more about this standard)]&lt;br /&gt;
* FIRST_PLAYED and LAST_PLAYED [2005-03-22 19:00:00...] ([http://www.hydrogenaudio.org/forums/index.php?showtopic=20719 foo_playcount])&amp;lt;br&amp;gt;&#039;&#039;Notes&#039;&#039;: These two tags use underscores instead of spaces - reason for this was to make it consistent with the already existing PLAY_COUNTER-tag. Any amount or type of data may be placed after the time.  Compliant TAGZ code shall use $substr() instead of $right() when extracting substrings from this field.&amp;lt;br&amp;gt;&#039;&#039;See also&#039;&#039;: [http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Tips_%26_Tricks#Standardize_my_PLAY_DATE_and_PLAY_TIME_fields Standardize my PLAY_DATE and PLAY_TIME fields]&amp;lt;br&amp;gt;[http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Encouraged_Tag_Standards#FIRST_PLAYED_and_LAST_PLAYED (more about this standard)]&lt;br /&gt;
&lt;br /&gt;
=== ALBUM ARTIST ===&lt;br /&gt;
&#039;&#039;Basics&#039;&#039;:&lt;br /&gt;
*the tag-fieldname used for declaring and describing albums/split-EPs or split-singles which contain various artists is &amp;quot;ALBUM ARTIST&amp;quot; (separated with space, not underscore)&lt;br /&gt;
*tag should only exist if an album contains various artists. It should NOT be created when an album does not contain various artists.&lt;br /&gt;
*the tag can contain the overall artist of an album (like e.g. &amp;quot;the foo-bar collective&amp;quot;,) multiple artists (e.g. with split-EPs) or if an album does not have a clear overall artist (for example with compilations) just &amp;quot;Various Artists&amp;quot;. Simply said: you&#039;re free to enter whatever you like as long as it describes the overall album-wide artist(s).&lt;br /&gt;
*every track in a V.A.-album has to contain this tag with the same value&lt;br /&gt;
*the track-specific artist should be entered into the ARTIST-tag&lt;br /&gt;
*the TITLE-tag should only contain the track-title&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Reasons for this standard&#039;&#039;:&lt;br /&gt;
*it solves all issues regarding albums which contain multiple artists with just one tag&lt;br /&gt;
*it is already in widespread use&lt;br /&gt;
*sortable and searchable with low effort&lt;br /&gt;
*keeping the ARTIST-tag trackspecific allows to find tracks in V.A.-albums as well when searching for a certain artist (DB-friendly)&lt;br /&gt;
*keeping the TITLE-tag title-specific allows sorting and searching of V.A.-albums by title (DB-friendly)&lt;br /&gt;
*allows meaningful determination and display of V.A.-Albums with a minimum amount of code&lt;br /&gt;
*avoids resource-hungry and unsafe &amp;quot;guessing&amp;quot; of V.A.-albums via the filepath&lt;br /&gt;
*easy to remember and type in manually&lt;br /&gt;
*does not disrupt existing systems when the ARTIST- and TITLE-tag are already track specific (easy transition)&lt;br /&gt;
*can coexist with additional directory-based sorting and marking&lt;br /&gt;
*can be used for split-EPs and split-singles as well&lt;br /&gt;
*supported by [[Foobar2000:Titleformat_Reference#Field_remappings|Field Remappings]] in foobar2000 0.9&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Code snippets&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 // check if an album is V.A.&lt;br /&gt;
 $if($meta_test(album artist),$puts(album_is_va,1))&lt;br /&gt;
&lt;br /&gt;
 // For sorting by artist in an album-context replace %artist% - %album% with:&lt;br /&gt;
 %album artist% - %album%&lt;br /&gt;
&lt;br /&gt;
 // singlemode display without %album artist%-support&lt;br /&gt;
 [%artist% - ][%album% - ][%title%]&lt;br /&gt;
&lt;br /&gt;
 // singlemode display with %album artist%-support&lt;br /&gt;
 // note: if your display supports both, albummode and singlemode, then you&lt;br /&gt;
 // may want to use the above version instead in singlemode - depends on taste&lt;br /&gt;
 [%album artist% - ][%album% - ][%track artist% - ][%title%]&lt;br /&gt;
&lt;br /&gt;
 // How to easily integrate %album artist% into an albummode-display:&lt;br /&gt;
 // in the albummode-column, replace %artist% with:&lt;br /&gt;
 [%album artist%]&lt;br /&gt;
 // in the title-column, replace %title% with:&lt;br /&gt;
 [%track artist% - ][%title%]&lt;br /&gt;
&lt;br /&gt;
=== FIRST_PLAYED and LAST_PLAYED ===&lt;br /&gt;
&#039;&#039;Basics&#039;&#039;:&lt;br /&gt;
* the tag-fieldname used for storing info when a song was played the first time is &amp;quot;FIRST_PLAYED&amp;quot;&lt;br /&gt;
* the tag-fieldname used for storing info when a song was played the last time is &amp;quot;LAST_PLAYED&amp;quot;&lt;br /&gt;
* tags contain date and time in the following format at the beginning: &amp;quot;YYYY-MM-DD HH:MM:SS&amp;quot; (with 24hours-format)&lt;br /&gt;
* additional info may be appended after the above info&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Reasons for this standard&#039;&#039;:&lt;br /&gt;
* the [http://www.hydrogenaudio.org/musepack/klemm/www.personal.uni-jena.de/~pfk/mpp/sv8/time.html APE-dateformat] (derived from ISO) is internationally neutral&lt;br /&gt;
* sortable&lt;br /&gt;
* easily readable and recognizable&lt;br /&gt;
* format can be verified with TAGZ&lt;br /&gt;
* can be included in formatting-strings without reformatting it (pro for amateur tagz-coders)&lt;br /&gt;
* choosing a new fieldname avoids confusion with the existing ambigious play_date tag&lt;br /&gt;
* field name is easy to understand/recognize/remember and short enough to type in manually&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Code snippets&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
 // verify tag-format (we check the pos. of the first dash and &amp;quot;:&amp;quot;)&lt;br /&gt;
 // using $len for verification is strongly unrecommended!&lt;br /&gt;
 $if(&lt;br /&gt;
 $and($strcmp($strstr(%last_played%,-),5),$strcmp($strstr(%last_played%,:),14))&lt;br /&gt;
 ,$puts(last_played_is_valid,1)&lt;br /&gt;
 )&lt;br /&gt;
&lt;br /&gt;
 // disassemble the timestamp for later reformatting or calcuations&lt;br /&gt;
 $puts(last_played_year,$substr(%last_played%,1,4))&lt;br /&gt;
 $puts(last_played_month,$substr(%last_played%,6,7))&lt;br /&gt;
 $puts(last_played_day,$substr(%last_played%,9,10))&lt;br /&gt;
 $puts(last_played_hour,$substr(%last_played%,12,13))&lt;br /&gt;
 $puts(last_played_min,$substr(%last_played%,15,16))&lt;br /&gt;
 $puts(last_played_sec,$substr(%last_played%,18,19))&lt;br /&gt;
&lt;br /&gt;
 // display only the date of last_played (without reformatting)&lt;br /&gt;
 $left(%last_played%,10)&lt;br /&gt;
&lt;br /&gt;
 // display only the time of last_played (without reformatting)&lt;br /&gt;
 // the use of $right is strongly unrecommended!&lt;br /&gt;
 $substr(%last_played%,12,19)&lt;br /&gt;
&lt;br /&gt;
The above code-snippets can be used for FIRST_PLAYED as well (just replace last_played with first_played).&lt;br /&gt;
&lt;br /&gt;
== Obsolete and Deprecated Tag Standards ==&lt;br /&gt;
&lt;br /&gt;
=== PLAY_DATE and PLAY_TIME ===&lt;br /&gt;
&lt;br /&gt;
Deprecated tags produced by old versions of foo_playcount.  Default format DDMMYY for PLAY_DATE and HHMMSS (24hr) for PLAY_TIME.  See [[Foobar2000:Encouraged Tag Standards#FIRST PLAYED and LAST PLAYED| FIRST_PLAYED and LAST_PLAYED]].&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:FAQ&amp;diff=15391</id>
		<title>Foobar2000:FAQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000:FAQ&amp;diff=15391"/>
		<updated>2006-11-18T20:01:23Z</updated>

		<summary type="html">&lt;p&gt;Chronial: grammar&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{fb2k}}&lt;br /&gt;
A rather extensive FAQ is available at the [http://shsc.info/foobar2000 SH/SC Wiki].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= General =&lt;br /&gt;
&lt;br /&gt;
== Is foobar2000 still under active development? ==&lt;br /&gt;
Yes. Please see the forum and the foobar2000 homepage for the latest version and news about upcoming versions.&lt;br /&gt;
&lt;br /&gt;
== I have Windows Vista and my foobar2000 has stange behavior. Do you plan on fixing those bugs soon? ==&lt;br /&gt;
Foobar2000 already fully supports Windows Vista. Some components do not. Try to look for the latest version of those third-party plugins as they might get fixed soon.&lt;br /&gt;
&lt;br /&gt;
== I&#039;m looking for a specific feature. How should I know if a third-party plugin suits my needs ? ==&lt;br /&gt;
If you are not the Ctrl+F kind of person with your web browser, this is the perfect opportunity for you to get familiar with it. Go to the [[Foobar2000:Components_0.9|components section]], press Ctrl+F and search for keywords related to what you are looking for (yeah, like google). You will hopefully find something that suits you. Otherwise, maybe you can make a request in the foobar2000 forum or even better, code it yourself then share it with the community!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Playback =&lt;br /&gt;
&lt;br /&gt;
== There are multiple output methods available: DirectSound, waveOut and Kernel Streaming. Which one should I use? ==&lt;br /&gt;
The default setting (waveOut) is recommended; it should be safe to use anywhere. Using DirectSound results in better performance (less CPU overhead)—especially under Windows 2000, Windows XP or newer—but there shouldn&#039;t be any audible difference between the two. In certain rare cases, Kernel Streaming may produce better results than DirectSound/waveOut (if for some reason you need data sent through digital out to be bit-identical to source stream); however, bit-identical results with DirectSound have been reported on soundcards capable of mixing multiple streams in hardware (with hardware mixing enabled in DirectSound settings).&lt;br /&gt;
&lt;br /&gt;
Please note that Kernel Streaming is an experimental feature with known issues, and using it is &#039;&#039;not&#039;&#039; recommended unless you have a clear need to do so. Most of perceived &amp;quot;sound quality differences&amp;quot; between DirectSound and Kernel Streaming are related to the fact that Kernel Streaming usually bypasses the Windows volume control. In addition, Kernel Streaming only works on Windows 2000, Windows XP or newer.&lt;br /&gt;
&lt;br /&gt;
== How can I send my files from Windows Explorer into a specific playlist, so as not to erase my current playlist? ==&lt;br /&gt;
&lt;br /&gt;
Preferences → General → Always send to playlist (playlist name)&lt;br /&gt;
&lt;br /&gt;
== Why can&#039;t I listen to unfinished downloading files? ==&lt;br /&gt;
Foobar2000 needs exclusive access to the file. A good workaround is to copy the unfinished file, then try to play it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Look &amp;amp; Feel =&lt;br /&gt;
&lt;br /&gt;
== I just saw a great looking foobar2000 window, but I don&#039;t know how to get mine looking the same way! Is there no hope for me? ==&lt;br /&gt;
Of course there is!  First take a look at those threads and get in touch with what other users achieved:&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=43077 Foobar Gallery] {{foobar2000v09}}&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=30988 Foobar Gallery] {{foobar2000v08}}&lt;br /&gt;
&lt;br /&gt;
Then, you are ready to give it a try! You can find some of the user&#039;s configuration in the links below. Note that [http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:0.9_Single_Column_Playlist_%28foo_uie_single_column_playlist%29 Single Column Playlist] and [http://yuo.be/columns.php ColumnUI] are standalone components that you need to download.&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=49783 Single Column Playlist settings database]&lt;br /&gt;
* [http://foobar.nub4life.net/columns/ Columns UI settings database]&lt;br /&gt;
** [http://www.hydrogenaudio.org/forums/index.php?showtopic=31509&amp;amp;hl=foobar+gallery Navigator-Suite]&lt;br /&gt;
** [http://www.hydrogenaudio.org/forums/index.php?showtopic=33450 Azrael]&lt;br /&gt;
* [http://pelit.koillismaa.fi/fb2k/index.php foobar2000 formatting]&lt;br /&gt;
&lt;br /&gt;
== Is there a way to make my instant messenger&#039;s &amp;quot;Now Playing&amp;quot; show the song I&#039;m listening to with foobar? ==&lt;br /&gt;
Yes, through plugins:&lt;br /&gt;
&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=10632 AMIP] 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;
* [http://stephan.kochen.nl/proj/foobar2000.html#msn for MSN]&lt;br /&gt;
* [http://pelit.koillismaa.fi/plugins/general.php#76 for Miranda-IM]&lt;br /&gt;
&lt;br /&gt;
== I have seen some people using something which pops up to display the song being listened to. Where can I find it? ==&lt;br /&gt;
* It&#039;s called [http://www.hydrogenaudio.org/forums/index.php?showtopic=33236&amp;amp;hl=foo_pretty+pop-up foo_prettypop]. Note that it requires the .NET Framework to work.&lt;br /&gt;
* If you are using Columns UI, it has a popup notification feature too (&amp;quot;Preferences -&amp;gt; Display -&amp;gt; ColumnsUI -&amp;gt; Status Bar/Systray (tab) -&amp;gt; Show popup notification baloon&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== Is there a way to map my multimedia keyboard keys? ==&lt;br /&gt;
You can assign actions with keys including multimedia key from the in &amp;quot;Preference -&amp;gt; General -&amp;gt; Keyboard Shortcuts&amp;quot;. If it still does not work, take a look at [http://www.hydrogenaudio.org/forums/index.php?s=39a242a80d03f35b424165dd8e06be6b&amp;amp;showtopic=50067 this] tutorial.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Columns UI =&lt;br /&gt;
&lt;br /&gt;
== How do I know which component is meant to be used with Columns UI?==&lt;br /&gt;
[[Foobar2000:Components_0.9|Component section]] of the wiki shows which plugin you can use for ColumnsUI&#039;s interface.&lt;br /&gt;
&lt;br /&gt;
== How can I get tabbed panels? ==&lt;br /&gt;
Use [http://www.hydrogenaudio.org/forums/index.php?showtopic=46106&amp;amp;st=0&amp;amp;p=410247&amp;amp;#entry410247 uie tabs].&lt;br /&gt;
&lt;br /&gt;
== Where are the options for changing the playback buttons? ==&lt;br /&gt;
Right click on buttons area → Customise...&lt;br /&gt;
&lt;br /&gt;
== How can I display the album art and cover above my playlist? ==&lt;br /&gt;
To set the panels above your playlist, just use &amp;lt;tt&amp;gt;list all toolbars&amp;lt;/tt&amp;gt;, then add the panels/toolbars/visualizations that you want to use. Organize them as you want them to be displayed. And finally, use the &#039;minimum height&#039; values of the corresponding panels. As it is not a common way to use the toolbar, you may experience some unexpected behaviour. Keep in mind that it may create some display problems. Musicmusic may fix this into the next version of Columns UI.&lt;br /&gt;
&lt;br /&gt;
== I have more questions. ==&lt;br /&gt;
Refer to the [http://yuo.be/wiki/columns_ui:faqs offial ColumnsUI FAQ].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Database, Tagging &amp;amp; Album Cover =&lt;br /&gt;
&lt;br /&gt;
== Foobar always takes between 5 minutes and several hours to open all the files in the same playlist. Is there a way to reduce this delay? == &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;0.8.x&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Sure. Enable the media (Preferences → Core → Database). You will be able to add thousands of files in only 30-40 seconds.&lt;br /&gt;
&lt;br /&gt;
Alternatively, if you don&#039;t want to activate the database, just save your playlists in the &amp;lt;tt&amp;gt;fpl&amp;lt;/tt&amp;gt; format.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;0.9.x&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Database is now known as Media Library (&amp;quot;Preferences → Media Library&amp;quot;) and there is no way enable/disable it.&lt;br /&gt;
&lt;br /&gt;
== I updated my tags, but foobar still shows the old tags.  How can I fix this? ==&lt;br /&gt;
Select the file(s), right click on any of them, go to Tagging, then click on &amp;quot;Reload Info from File(s)&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== How to guess tags based on directory structure? ==&lt;br /&gt;
Select all tracks in the playlist → right click → open the &amp;quot;Properties&amp;quot; dialog → chose &amp;quot;Fill Values from File Names&amp;quot; from its context menu.&lt;br /&gt;
&lt;br /&gt;
== Is there a way to have album covers downloaded automatically? ==&lt;br /&gt;
Unfortunately, it is not possible. But, there is a way to be 2 clicks away from those cover arts. Take a look at [http://www.hydrogenaudio.org/forums/index.php?showtopic=43429&amp;amp;hl=cover+download this thread] for more info.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
&lt;br /&gt;
== I get an error message saying &amp;quot;referenced file doesn&#039;t exist&amp;quot; on the console. What does that mean, and how can it be fixed? ==&lt;br /&gt;
This error is caused by an outdated/broken CUE sheet or APL link. You need to find and repair or remove it. After that, run &amp;quot;Remove dead entries&amp;quot; from the Database page in the Preferences dialog.&lt;br /&gt;
&lt;br /&gt;
== The Album List shows dead entries after restarting, even though I used &amp;quot;Remove dead entries&amp;quot; earlier. Why is that? ==&lt;br /&gt;
The files are probably still referenced in one of your playlists or in the history (if you are using an old version of &amp;lt;tt&amp;gt;foo_history&amp;lt;/tt&amp;gt;). Use Playlist → Remove dead entries from the main menu on all your playlists, or remove the dead entries manually. As long as the files are on a playlist, they will be in the database and thus will show up in album list.&lt;br /&gt;
&lt;br /&gt;
== Menu items for some plugins don&#039;t show up. I reinstalled but I still don&#039;t see them, even though the plugin is shown as a Loaded Library. ==&lt;br /&gt;
If you delete a menu item for a plugin, and then re-add the plugin, it won&#039;t re-add the menu items. The solution is to open the Preferences dialog, go to Core → Main menu items, and add the items manually.&lt;br /&gt;
&lt;br /&gt;
== An MP3 does not play properly (there is no sound) in fb2k whereas it plays perfectly in other players.  What is the problem? ==&lt;br /&gt;
You need to disable &amp;lt;tt&amp;gt;Use peak info to scale down tracks that still clip after applying replaygain&amp;lt;/tt&amp;gt; in the Preferences dialog, in the ReplayGain section of the Playback page.&lt;br /&gt;
&lt;br /&gt;
== I use the volume control toolbar but it doesn&#039;t work. What&#039;s the problem? ==&lt;br /&gt;
You may be using Kernel Streaming or ASIO.  These two output methods are not compatible with the volume control toolbar.&lt;br /&gt;
&lt;br /&gt;
== There is always a long delay before changes to the DSPs take effect. Can I reduce this? ==&lt;br /&gt;
Try reducing the output buffer length from Preferences → Playback → Output → (your selected output method). However, do not put it at the minimum length. 300ms should be enough (more if you are using several DSPs).&lt;br /&gt;
&lt;br /&gt;
== What are metadb_handle leaks? ==&lt;br /&gt;
metadb_handles are resources used in the metadata management in foobar2000. A leak indicates that a component does not release them (in time). The overall effect of such a leak is relatively harmless. Nevertheless, this is a programming error and foobar2000 detects and reports it to the user. Unfortunately, it is not possible for foobar2000 to detect which component caused the leak.&lt;br /&gt;
&lt;br /&gt;
== I hear static when fading in/out - pause/unpause. ==&lt;br /&gt;
Be sure you have the latest sound drivers installed and disable your dsp&#039;s before reporting it. Some users reported that using [http://foobar2000.org/components/index.html Kernel Streaming] instead of the default output fixed the problem (&amp;quot;Preferences -&amp;gt; Playback -&amp;gt; Output&amp;quot;), but be aware that this plugin is still experimental and it is issue related in some cases.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Foobar2000 and other players =&lt;br /&gt;
&lt;br /&gt;
== Is foobar really better than Winamp? ==&lt;br /&gt;
There is no set answer. According to public opinion, foobar is great for people wanting a minimal player, as well as the opposite: people needing advanced features. However, the medium users are lost between the profusion of settings and components to find. Some relevant links:&lt;br /&gt;
&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=20322 Tell us why have you chosen foobar2000, or why don&#039;t you like it]&lt;br /&gt;
* [http://www.hydrogenaudio.org/forums/index.php?showtopic=29501&amp;amp;hl=winamp could foobar2000 replace winamp?]&lt;br /&gt;
&lt;br /&gt;
== Is the sound really better with foobar? ==&lt;br /&gt;
As the author of foobar says himself, foobar doesn&#039;t have a better sound than the other players like Winamp. From a theoretical point of view, the sound from foobar2000 is not different from the sound from other players since a player can&#039;t improve the sound drastically (though it might be altered if not correctly set). Your hardware is much more important (audio card, speakers, headphones, even cables), as is the audio source (Audio CD?  Lossless codec?  Lossy codec?). The software part is only secondary.&lt;br /&gt;
&lt;br /&gt;
Even if sound modifiers ([[Foobar2000:Components_0.9#DSP|DSPs]]) are used, they only widen the gap between the source and the result, which might actually degrade the sound quality.&lt;br /&gt;
&lt;br /&gt;
== I won&#039;t leave iTunes, it manages my iPod perfectly! ==&lt;br /&gt;
Maybe this will change your mind: [http://www.hydrogenaudio.org/forums/index.php?showtopic=45160&amp;amp;hl=dop foo_dop].&lt;br /&gt;
&lt;br /&gt;
[[Category:foobar2000 Guides|FAQ]]&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14422</id>
		<title>User talk:Canar</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14422"/>
		<updated>2006-09-24T19:21:52Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{talkheader}}&lt;br /&gt;
In Reply to you Post on [[User:Chronial|my User Page]]: This is really funny - the editing page says:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details). If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This does not make any sense at all. The GNU FDL does &#039;&#039;&#039;not&#039;&#039;&#039; permit your writing to be &amp;quot;edited mercilessly and redistributed at will&amp;quot; - you are stating on your edit page that you are willing and going to ignore the copyright of the submitted texts. If you want to do this, you have to state that all submited texts are considered to be released into public domain - not FDL.&lt;br /&gt;
&lt;br /&gt;
To complete the crazyness this whole stuff is not present on the german version of the interface (I don&#039;t have to change any settings to see the german version, It&#039;s default - I never saw the english version). So everyone whose mother-tongue is not english will not even know about your license-violating plans.&lt;br /&gt;
&lt;br /&gt;
I don&#039;t want to complain (already did that on the concerned page ;) and I&#039;m fine with your apology but I just wanted to note that you may be getting yourself into some legal trouble here. --[[User:Chronial|Chronial]] 06:37, 24 September 2006 (CDT)&lt;br /&gt;
:wha&#039;s hopponin&#039; ere? - GFDL+copyright freak {{User:Elliottmobile/sig2}} 07:34, 24 September 2006 (CDT)&lt;br /&gt;
:it seems that Canar is copying from copyrighted websites, right? the websites would have to be public domain BUT posting them here IF THEY WERE PUBLIC DOMAIN would release &#039;em under GFDL. this is ok because public domain stuff can be done anything with even relicensed. what he&#039;s doing is likely illegal, and you should replace the pages with &amp;lt;nowiki&amp;gt;{{copyvio}}&amp;lt;/nowiki&amp;gt;. {{User:Elliottmobile/sig2}} 07:40, 24 September 2006 (CDT)&lt;br /&gt;
::nope, it&#039;s about Canar moving the content of a page 90% created by me from [http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Title_formatting&amp;amp;oldid=4765 Title formatting] to [[Foobar2000:Tagscript]], instead of renaming the page. This results in a FDL violation, since it requires the authors of the text to be named.&lt;br /&gt;
::He responed that the wiki says (only with english interface!) &amp;quot;If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot; - but this is still a violation of the FDL, and so HA states that they are gonna violate your rights if you post stuff to the wiki oO.&lt;br /&gt;
::This is like a instead of selling a car telling the buyer that you will give it to him for free, but will later come over and rob the money he would have to pay from him. It&#039;s just illegal --[[User:Chronial|Chronial]] 08:33, 24 September 2006 (CDT)&lt;br /&gt;
:::Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details). If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&lt;br /&gt;
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. DO NOT SUBMIT COPYRIGHTED WORK WITHOUT PERMISSION!&lt;br /&gt;
:::That&#039;s the actual text, so it&#039;s just getting a point across and linking to more info. But yes, that&#039;s a copyright violation. I agree. {{User:Elliottmobile/sig2}} 08:35, 24 September 2006 (CDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Am I right asuming this will be a non-issue if I merge the histories? [[User:Jan|Jan]] 10:54, 24 September 2006 (CDT)&lt;br /&gt;
:Yep. {{User:Elliottmobile/sig2}} 12:47, 24 September 2006 (CDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Done :) now be happy! [[User:Jan|Jan]] 13:11, 24 September 2006 (CDT)&lt;br /&gt;
:It was allready fine with me when Canar appologized ;). But I wanted to warn you that the sentences &amp;quot;Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details).&amp;quot; and &amp;quot;If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot; are in legal conflict.--[[User:Chronial|Chronial]] 14:21, 24 September 2006 (CDT)&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14421</id>
		<title>User talk:Canar</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14421"/>
		<updated>2006-09-24T19:21:35Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{talkheader}}&lt;br /&gt;
In Reply to you Post on [[User:Chronial|my User Page]]: This is really funny - the editing page says:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details). If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This does not make any sense at all. The GNU FDL does &#039;&#039;&#039;not&#039;&#039;&#039; permit your writing to be &amp;quot;edited mercilessly and redistributed at will&amp;quot; - you are stating on your edit page that you are willing and going to ignore the copyright of the submitted texts. If you want to do this, you have to state that all submited texts are considered to be released into public domain - not FDL.&lt;br /&gt;
&lt;br /&gt;
To complete the crazyness this whole stuff is not present on the german version of the interface (I don&#039;t have to change any settings to see the german version, It&#039;s default - I never saw the english version). So everyone whose mother-tongue is not english will not even know about your license-violating plans.&lt;br /&gt;
&lt;br /&gt;
I don&#039;t want to complain (already did that on the concerned page ;) and I&#039;m fine with your apology but I just wanted to note that you may be getting yourself into some legal trouble here. --[[User:Chronial|Chronial]] 06:37, 24 September 2006 (CDT)&lt;br /&gt;
:wha&#039;s hopponin&#039; ere? - GFDL+copyright freak {{User:Elliottmobile/sig2}} 07:34, 24 September 2006 (CDT)&lt;br /&gt;
:it seems that Canar is copying from copyrighted websites, right? the websites would have to be public domain BUT posting them here IF THEY WERE PUBLIC DOMAIN would release &#039;em under GFDL. this is ok because public domain stuff can be done anything with even relicensed. what he&#039;s doing is likely illegal, and you should replace the pages with &amp;lt;nowiki&amp;gt;{{copyvio}}&amp;lt;/nowiki&amp;gt;. {{User:Elliottmobile/sig2}} 07:40, 24 September 2006 (CDT)&lt;br /&gt;
::nope, it&#039;s about Canar moving the content of a page 90% created by me from [http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Title_formatting&amp;amp;oldid=4765 Title formatting] to [[Foobar2000:Tagscript]], instead of renaming the page. This results in a FDL violation, since it requires the authors of the text to be named.&lt;br /&gt;
::He responed that the wiki says (only with english interface!) &amp;quot;If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot; - but this is still a violation of the FDL, and so HA states that they are gonna violate your rights if you post stuff to the wiki oO.&lt;br /&gt;
::This is like a instead of selling a car telling the buyer that you will give it to him for free, but will later come over and rob the money he would have to pay from him. It&#039;s just illegal --[[User:Chronial|Chronial]] 08:33, 24 September 2006 (CDT)&lt;br /&gt;
:::Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details). If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&lt;br /&gt;
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. DO NOT SUBMIT COPYRIGHTED WORK WITHOUT PERMISSION!&lt;br /&gt;
:::That&#039;s the actual text, so it&#039;s just getting a point across and linking to more info. But yes, that&#039;s a copyright violation. I agree. {{User:Elliottmobile/sig2}} 08:35, 24 September 2006 (CDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Am I right asuming this will be a non-issue if I merge the histories? [[User:Jan|Jan]] 10:54, 24 September 2006 (CDT)&lt;br /&gt;
:Yep. {{User:Elliottmobile/sig2}} 12:47, 24 September 2006 (CDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Done :) now be happy! [[User:Jan|Jan]] 13:11, 24 September 2006 (CDT)&lt;br /&gt;
:It was allready fine with me when Canar appologized ;). But I wanted to warn you that the sentences &amp;quot;Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details).&amp;quot; and &amp;quot;If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot; are in legal conflict.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14392</id>
		<title>User talk:Canar</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14392"/>
		<updated>2006-09-24T13:33:52Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{talkheader}}&lt;br /&gt;
In Reply to you Post on [[User:Chronial|my User Page]]: This is really funny - the editing page says:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details). If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This does not make any sense at all. The GNU FDL does &#039;&#039;&#039;not&#039;&#039;&#039; permit your writing to be &amp;quot;edited mercilessly and redistributed at will&amp;quot; - you are stating on your edit page that you are willing and going to ignore the copyright of the submitted texts. If you want to do this, you have to state that all submited texts are considered to be released into public domain - not FDL.&lt;br /&gt;
&lt;br /&gt;
To complete the crazyness this whole stuff is not present on the german version of the interface (I don&#039;t have to change any settings to see the german version, It&#039;s default - I never saw the english version). So everyone whose mother-tongue is not english will not even know about your license-violating plans.&lt;br /&gt;
&lt;br /&gt;
I don&#039;t want to complain (already did that on the concerned page ;) and I&#039;m fine with your apology but I just wanted to note that you may be getting yourself into some legal trouble here. --[[User:Chronial|Chronial]] 06:37, 24 September 2006 (CDT)&lt;br /&gt;
:wha&#039;s hopponin&#039; ere? - GFDL+copyright freak {{User:Elliottmobile/sig2}} 07:34, 24 September 2006 (CDT)&lt;br /&gt;
:it seems that Canar is copying from copyrighted websites, right? the websites would have to be public domain BUT posting them here IF THEY WERE PUBLIC DOMAIN would release &#039;em under GFDL. this is ok because public domain stuff can be done anything with even relicensed. what he&#039;s doing is likely illegal, and you should replace the pages with &amp;lt;nowiki&amp;gt;{{copyvio}}&amp;lt;/nowiki&amp;gt;. {{User:Elliottmobile/sig2}} 07:40, 24 September 2006 (CDT)&lt;br /&gt;
::nope, it&#039;s about Canar moving the content of a page 90% created by me from [http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Title_formatting&amp;amp;oldid=4765 Title formatting] to [[Foobar2000:Tagscript]], instead of renaming the page. This results in a FDL violation, since it requires the authors of the text to be named.&lt;br /&gt;
::He responed that the wiki says (only with english interface!) &amp;quot;If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot; - but this is still a violation of the FDL, and so HA states that they are gonna violate your rights if you post stuff to the wiki oO.&lt;br /&gt;
::This is like a instead of selling a car telling the buyer that you will give it to him for free, but will later come over and rob the money he would have to pay from him. It&#039;s just illegal --[[User:Chronial|Chronial]] 08:33, 24 September 2006 (CDT)&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14391</id>
		<title>User talk:Canar</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14391"/>
		<updated>2006-09-24T13:32:45Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{talkheader}}&lt;br /&gt;
In Reply to you Post on [[User:Chronial|my User Page]]: This is really funny - the editing page says:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details). If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This does not make any sense at all. The GNU FDL does &#039;&#039;&#039;not&#039;&#039;&#039; permit your writing to be &amp;quot;edited mercilessly and redistributed at will&amp;quot; - you are stating on your edit page that you are willing and going to ignore the copyright of the submitted texts. If you want to do this, you have to state that all submited texts are considered to be released into public domain - not FDL.&lt;br /&gt;
&lt;br /&gt;
To complete the crazyness this whole stuff is not present on the german version of the interface (I don&#039;t have to change any settings to see the german version, It&#039;s default - I never saw the english version). So everyone whose mother-tongue is not english will not even know about your license-violating plans.&lt;br /&gt;
&lt;br /&gt;
I don&#039;t want to complain (already did that on the concerned page ;) and I&#039;m fine with your apology but I just wanted to note that you may be getting yourself into some legal trouble here. --[[User:Chronial|Chronial]] 06:37, 24 September 2006 (CDT)&lt;br /&gt;
:wha&#039;s hopponin&#039; ere? - GFDL+copyright freak {{User:Elliottmobile/sig2}} 07:34, 24 September 2006 (CDT)&lt;br /&gt;
:it seems that Canar is copying from copyrighted websites, right? the websites would have to be public domain BUT posting them here IF THEY WERE PUBLIC DOMAIN would release &#039;em under GFDL. this is ok because public domain stuff can be done anything with even relicensed. what he&#039;s doing is likely illegal, and you should replace the pages with &amp;lt;nowiki&amp;gt;{{copyvio}}&amp;lt;/nowiki&amp;gt;. {{User:Elliottmobile/sig2}} 07:40, 24 September 2006 (CDT)&lt;br /&gt;
::nope, it&#039;s about Canar moving the content of a page 90% created by me from [http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Title_formatting&amp;amp;oldid=4765 Title formatting] to [[Foobar2000:Tagscript]], instead of renaming the page. This results in a FDL violation, since it requires the authors of the text to be named.&lt;br /&gt;
::He responed that the wiki says (only with english interface!) &amp;quot;If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot; - but this is still a violation of the FDL, and so HA states that they are gonna violate your rights if you post stuff to the wiki oO.&lt;br /&gt;
::This is like a instead of selling a car telling the buyer that you will give it to him for free, but will later come over and rob the money he would have to pay from him. It&#039;s just illegal&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14383</id>
		<title>User talk:Canar</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14383"/>
		<updated>2006-09-24T11:37:13Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In Reply to you Post on [[User:Chronial|my User Page]]: This is really funny - the editing page says:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details). If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This does not make any sense at all. The GNU FDL does &#039;&#039;&#039;not&#039;&#039;&#039; permit your writing to be &amp;quot;edited mercilessly and redistributed at will&amp;quot; - you are stating on your edit page that you are willing and going to ignore the copyright of the submitted texts. If you want to do this, you have to state that all submited texts are considered to be released into public domain - not FDL.&lt;br /&gt;
&lt;br /&gt;
To complete the crazyness this whole stuff is not present on the german version of the interface (I don&#039;t have to change any settings to see the german version, It&#039;s default - I never saw the english version). So everyone whose mother-tongue is not english will not even know about your license-violating plans.&lt;br /&gt;
&lt;br /&gt;
I don&#039;t want to complain (already did that on the concerned page ;) and I&#039;m fine with your apology but I just wanted to note that you may be getting yourself into some legal trouble here. --[[User:Chronial|Chronial]] 06:37, 24 September 2006 (CDT)&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14382</id>
		<title>User talk:Canar</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=14382"/>
		<updated>2006-09-24T11:36:24Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In Reply to you Post on [[User:Chronial|my User Page]]: This is really funny - the editing page says:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Please note that all contributions to Hydrogenaudio Knowledgebase are considered to be released under the GNU Free Documentation License 1.2 (see Project:Copyrights for details). If you don&#039;t want your writing to be edited mercilessly and redistributed at will, then don&#039;t submit it here.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This does not make any sense at all. The GNU FDL does &#039;&#039;&#039;not&#039;&#039;&#039; permit your writing to be &amp;quot;edited mercilessly and redistributed at will&amp;quot; - you are stating on your edit page that you are willing and going to ignore the copyright of the submitted texts. If you want to do this, you have to state that all submited texts are considered to be released into public domain - not FDL.&lt;br /&gt;
&lt;br /&gt;
To complete the crazyness this whole stuff is not present on the german version of the interface (I don&#039;t have to change any settings to see the german version, It&#039;s default - I never saw the english version). So everyone whose mother-tongue is not english will not even know about your license-violating plans.&lt;br /&gt;
&lt;br /&gt;
I don&#039;t want to complain (already did that on the concerned page ;) and I&#039;m fine with your apology but I just wanted to note that you may be getting yourself into some legal trouble here.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=8374</id>
		<title>User talk:Canar</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=User_talk:Canar&amp;diff=8374"/>
		<updated>2005-08-29T07:23:41Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Please be more careful when moving articles. You should use the wiki&#039;s move feature, because the way you move articles breaks the editing history. For example you moved my article [[Foobar2000:Tagscript]], which is almost completely written by me - but there&#039;s no trace of this in the version history.&amp;lt;br&amp;gt;&lt;br /&gt;
There are 2 problems with this way of moving articles:&lt;br /&gt;
# It might annoy the authors (like it did annoy me)&lt;br /&gt;
# It&#039;s breaking the rules of the GNU FDL, wich needs all authors to be mentioned&lt;br /&gt;
--[[User:Chronial|Chronial]] 02:23, 29 Aug 2005 (CDT)&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000&amp;diff=8151</id>
		<title>Foobar2000</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000&amp;diff=8151"/>
		<updated>2005-08-29T01:04:48Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Foobar2000:Foobar2000]]&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=File:Core.png&amp;diff=8220</id>
		<title>File:Core.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=File:Core.png&amp;diff=8220"/>
		<updated>2005-08-29T00:57:47Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Jpeg images should be used for this, for they get better a lot thumbnails&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
compare:&lt;br /&gt;
[[Image:Core.jpg|thumb|none|Jpeg]][[Image:Core.png|thumb|none|PNG]]&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000_Talk:Tagscript&amp;diff=8362</id>
		<title>Foobar2000 Talk:Tagscript</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000_Talk:Tagscript&amp;diff=8362"/>
		<updated>2005-07-08T18:27:13Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When moving articles, you shold use the moving function of the wiki, for this moves the list of authors, too. [[User:Chronial|Chronial]] 13:27, 8 Jul 2005 (CDT)&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
	<entry>
		<id>https://wiki.hydrogenaudio.org/index.php?title=Foobar2000_Talk:Tagscript&amp;diff=5306</id>
		<title>Foobar2000 Talk:Tagscript</title>
		<link rel="alternate" type="text/html" href="https://wiki.hydrogenaudio.org/index.php?title=Foobar2000_Talk:Tagscript&amp;diff=5306"/>
		<updated>2005-07-08T18:26:20Z</updated>

		<summary type="html">&lt;p&gt;Chronial: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When moving articles, you shold use the moving function of the wiki, for this moves the list of authors, too.&lt;/div&gt;</summary>
		<author><name>Chronial</name></author>
	</entry>
</feed>