Version 1.07

Copyright (c) 1999 Imad Jureidini

Latest version available at .
Please send any comments, suggestions or bug report to .

Note: This program is free.


SPACE - Randomly picks a new scene.
TAB - Brings up the configuration panel.
ALT_ENTER - Switch between windowed and full-screen modes.
F1 - Switch to full screen mode.
F2 - Switch to windowed mode.
F4 - Shows some info, including frames per second.
F5 - Change to next music renderer.
F6 - Change to next scene transformation.
F7 - Lock the music renderer.
F8 - Lock the scene transformation.
F9 - Show song title when it starts.
F12 - Insanity mode (all renderers on...) Not very pretty.
- The little X icon in the tray allows you to access the configuration panel in background and windowed mode.


Place all the files in the distribution in the \winamp\plugin directory. The files are:
- vis_albedo.dll
- vis_albedo.bmp
- vis_albedo.txt
Choose the Albedo plugin by pressing CTRL-K in winamp (or through the menus).
Start it by pressing CTRL-SHIFT-K.

System Requirements:
- MMX Intel or compatible based computer
- Windows 95/98 with DirectX6 (NT4.0 with DirectX 3 won't work, Win2000 untested)
- Winamp (

- P2 or Celeron (with integrated L1 cache), running with a 100 Mhz memory bus.
- Lots of Mhz.
- 24 or 32 bit display mode (chosen in control panel). They're actually faster than 16 bit.
- an LCD projector and a nice big white wall.
- Try to adjust the video mode to get 25-30 fps.
- Full screen mode is usually nicer.


Albedo is a winamp visualisation plugin that's supposed to be pretty to look at. It is my first attempt at using DirectX, and in addition it has involved learning quite a few things about x86 and MMX assembly. It was inspired by a great plugin called "Geiss", which can be downloaded at My goal was to duplicate its features and its speed, just to see if I could do it. In this attempt, I tried several algorithms which never quite matched the speed of the Geiss plugin, but I eventually settled on one that suited my purpose. I decided to concentrate my efforts on creating interesting visual effects.
Unfortunately, the code relies exclusively on the MMX instruction set to execute, so people with anything less that a Pentium MMX won't be able to use Albedo. In fact, I've only tested it on Pentium II machines, and I suspect it will run poorly on a plain vanilla MMX Pentium machine because I didn't try to optimize for that CPU. I'm not sure about AMD or Cyrix. Albedo was written and mainly tested on my trusty IBM Thinkpad 600 with a P2-233. On that machine, I get about 27 fps at a 320x240x16bit resolution. I also tried it on the mighty Celeron 300A overclocked to 450 Mhz with a Matrox G200. It ran great at 512x384x32. As mentioned earlier, try to choose the display mode to achieve 25-30 fps.

Future plans:

Waiting for suggestions.

Version History:

- v1.07 (3/24/99)
.Fixed a bug with slow down with Winamp 2.10

- v1.06 (3/14/99)
.Added the option to turn on and off individual renderers and transforms.
.Remembers window position.
.Added the option to lock the renderer and transformation (F7, F8).
.Added the option to show the song title when it starts (F9).
.Should be a tad faster.
.Somewhat fixed the problem with Albedo freezing when user exits from Winamp first.
(It will still freeze one time out of 30).
.Added a "floating triangle" music renderer.
.Added a "particles bouncing on a spectrum analyser" music renderer.
.Added a "snow" music renderer.
.Added a plain sine wave transformation. Nothing Earth shattering, but can look good.
.Added a spiral tile transformation.
.Added song title and playing time to the info display (F4).
.Added ALT-ENTER key to switch between full screen and windowed modes.
.Added DirectX version detection.

- v1.05 (3/8/99)
.Fixed bug with black line on top of screen
.Little speed boost here and there.
.Awesome new gravitational particles renderers.
.New "Flower" transformation.
.New "Strange" transformation (Got it with a typo!).
.Won't crash (I hope) when opening a full screen DOS box (Rob Diehl).
.Fixed a bug with the shivering lines renderer.
.Changed the color choosing algorithm for more coordinated colors.
.Modified the fast spiral transformation.
.Total: 10 music renderers, 13 scene transformations.

- v1.04 (3/4/99):
.Added the possibility to slow down Albedo in order to leave the computer usable in background and windowed modes.
.Added additional support for background mode. It should work on most recent video cards now. (Neomagic, TNT tested).
.Fixed a small bug with one of the renderers.
.Added a tri-color spot renderer (number of spots proportional to music volume).
.Total: 9 music renderers, 11 scene transformations.

- v1.03 (3/2/99):
.Fixed (hopefully) a bug related to changing the DirectDraw mode from exclusive and back (thanks to Michael Malluck).
.Added a reverse spiral thing effect.
.Added additional keyboard commands. F5 and F6 allow to cycle through the scene combinations, F1 and F2 swicth the screen mode.
.Total: 8 music renderers, 11 scene transformation.

- v1.02 (2/28/99):
.Fixed the RGB555 display mode.

- v1.01 (2/27/99):
.Cleaned up some the code.
.Added a nice kaleidoscope-like effect.
.Set up a web page.

- v1.0: (2/23/99):
.First release.