Daily New Downloads
         

Winamp Help and FAQ

Introduction

With the start from version 1.8, Winamp has a new feature; skins!
Skins are a way to change the look of Winamp without the need to make a new exe-file, as you had to do before. A skin is a quite simple but yet a powerful way to alter the way Winamp appears.

How to use skins

To use a skin in Winamp, just follow these three easy steps:

  1. Locate your 'winamp/skins' directory and create a subdirectory with the same name as the skin.
  2. Put all the files that belong to the skin in the new directory. Most skins are compressed with zip, so you should use winzip or pkunzip to decompress the files.
  3. Start Winamp (if it's already running you don't need to restart it) and press ALT+S. A window appears where you can choose skin, highlight the one you want and press Ok. If you check the checkbox (Winamp 1.81 and later) Winamp will automatically change skin between each song.

 

Where to find skins

You can find Winamp skins in many places on the Internet, but one of the best is LAYER3.ORG's Winamp subloads page. Another place is Daily updated MP3 Software

Up to the top again


Skin file-format

Skins are just a collection of BMP-images in a subdirectory of the 'skin' directory, one subdirectory for each skin. There is not one image for each part of Winamp's interface, because several items are grouped into one image (e.g. all control buttons are in 'cbuttons.bmp'). You can also change the colors of the default visualization plugin. This is done with a file called 'viscolor.txt'. All files are optional and if one is missing the default (original Winamp look) will be used instead.

BMP-format

You can use any type of BMP-images (Windows or OS2, 1,4,8 or 24 bit, RLE or normal). There seems to be only one restriction; if main.bmp is a 1 bit image everything but the vis will be black & white.
The images can have any size (Winamp doesn't crash if they have the wrong size) but I recommend you to use the standard sizes. If the image is too big, Winamp will just use the top-left part of it; the extra pixels will just be ignored. If the image is too small, the part of it that isn't there just won't be drawn, i.e. you will see through it. Note that this is not true for main.bmp if it is too small nothing will be drawn there (not even things that normally would be drawn on top of main.bmp), it will contain garbage.

viscolor.txt

I think it is clearest if I show an example. r, g and b range from 0 to 255 (normal truecolor values).
--8<-- start viscolor.txt

r,g,b	// 0 = black (background color #1)
r,g,b	// 1 = grey (background color #2)
r,g,b	// 2 = top of spec
r,g,b	// 3
r,g,b	// 4
r,g,b	// 5
r,g,b	// 6
r,g,b	// 7
r,g,b	// 8
r,g,b	// 9
r,g,b	// 10 = mid of spec
r,g,b	// 11
r,g,b	// 12
r,g,b	// 13
r,g,b	// 14
r,g,b	// 15
r,g,b	// 16
r,g,b	// 17 = bottom of spec
r,g,b	// 18 = osc 1 (brightest)
r,g,b	// 19 = osc 2
r,g,b	// 20 = osc 3
r,g,b	// 21 = osc 4
r,g,b	// 22 = osc 5 (dimmest)
--8<-- end viscolor.txt
Color #0 is for the background, #1 is for the dots in the background.
Colors #2-17 are for the spectrum analyzer, the first is for the top of the bars, the last for the bottom.
Colors #18-22 are for the oscilloscope.

 

Up to the top again


The images

First some note on the words I use:

  • Image = an entire BMP-image.
  • Final image = the result created by Winamp.
  • Sprite = a small image within an image.
  • Item = a thing that will be draw on the final image. Can be one or more sprites or a calculated image (i.e. the Vis)
  • Hot area = an interactive area, something happens when you click there. Items are often hot areas.

 

As an example I have used the AMPBASE skin. Some notes about that skin:

  • AMPBASE screenshot This is what it looks like when used in Winamp.
  • Gray areas are not used by Winamp.
  • Pink areas are never shown (mostly overdrawn by something else).
  • I may have got the two things above wrong in some places.
  • Black borders belongs to the sprite.
  • White borders are drawn around areas were items will be placed.
  • White borders are also drawn at the edge of the main-area and the titlebars-sprites.
  • Colored areas without borders are hot areas.

 

Now to the fun part...
A description of all images. Some have coordinates and/or size in brackets. This usually means that the position and/or size can be either of the values. But to be safe you should use the standard value (not in brackets).
In some places where I don't have enough information yet, you will see the word FIXME. If you know something about these things or find some mistake please tell me (Strider).

Name Width Height Description

main.bmp

275 116 The background of Winamp's window
Hot Areas
X Y Width Height Description & comments
253 91 13 15 About Winamp
Areas where items are drawn
X Y Width Height Description & comments
0 0 275 14 Title bar
10 22 8 43 Clutterbar (The hot area is one pixel bigger in all directions)
24 28 11 9 Play, stop and pause indicator (see playpaus.bmp for more info)
40 32 5 1 Minus sign
48 26 9 13 Minute digit
60 26 9 13 Minute digit
78 26 9 13 Second digit
90 26 9 13 Second digit
24 43 76 16 Visualization
112 27 152 6 Song Title display
111 43 15 6 Bitrate display
156 43 10 6 Sample Rate display
212 41 27(29) 12 Mono indicator (The mono sprites are 29 pixels wide, but the last two overlap with the stereo indicator)
239 41 29 12 Stereo indicator
107 57 68 12 Volume slidebar
177 57 38 13 Panning slidebar
219 58 23 13 Equalizer button
242 58 23 12 Playlist editor button
16 72 248 10 Position slidebar
16 88 114 18 Control buttons (five of them), all 23 pixels wide, but the last (to the right) which is 22. The buttons are from left: previous, play, pause, stop, next.
136 89 22 16 Load (eject?) button
164 89 46(47) 15 Shuffle button (The sprites are 47 pixels wide and overlap with the repeat button (*))
210 89 28 15 Repeat button (*)
(*) The shuffle and repeat buttons overlap and the last button that was pushed are drawn on top of the other. The overlap belongs to repeat when you click it.
Name Width Height Description

titlebar.bmp

344 87 The titlebars and clutterbar
Sprites
X Y Width Height Description & comments
0 0 9 9 Option button
0 9 9 9 Option button pushed
9 0 9 9 Minimize button
9 9 9 9 Minimize button pushed
18 0 9 9 Close button
18 9 9 9 Close button pushed
0 18 9 9 Shade button
9 18 9 9 Shade button pushed
0 27 9 9 Unshade button
9 27 9 9 Unshade button pushed
0 36 17 7 Shade mode position slidebar
17 36 3 7 Shade mode position slider left
20 36 3 7 Shade mode position slider middle
23 36 3 7 Shade mode position slider right
27 0 275 14 Titlebar
27 15 275 14 Titlebar dimmed
27 29 275 14 Shade mode titlebar (*)
27 42 275 14 Shade mode titlebar dimmed (*)
27 57 275 14 titlebar, used when Winamp can't initialize the soundcard (**)
27 72 275 14 titlebar dimmed, as above
304 0 8 43 Clutterbar showed
312 0 8 43 Clutterbar
304 44 8 43 Clutterbar O selected
312 44 8 43 Clutterbar P selected
320 44 8 43 Clutterbar I selected
328 44 8 43 Clutterbar D selected
336 44 8 43 Clutterbar V selected
(*) The lower row of the shade mode titlebar overlap with the upper row of the dimmed shade mode titlebar.
(**) I still need more info about this one.
Hot areas on shade mode titlebars (coordinates relative titlebar)
X Y Width Height Description & comments
169 2 7 10 Previous button
176 2 10 10 Play button
186 2 9 10 Pause button
195 2 9 10 Stop button
204 2 11 10 Next button
215 2 10 10 Open (eject?) button
Areas where items are drawn on titlebars (coordinates relative titlebar)
X Y Width Height Description & comments
6 3 9 9 Option button
244 3 9 9 Minimize button
254 3 9 9 Shade button (unshade on shade mode titlebars)
264 3 9 9 Close button
Areas where items also are drawn on shade mode titlebars (coordinates relative titlebar)
X Y Width Height Description & comments
79 5 38 4 Visualization
130 4 3 6 Minus sign
134 4 10 6 Minutes
147 4 10 6 Seconds
226 4 17 7 Position slidebar
Hot areas on clutterbars (coordinates relative clutterbar)
X Y Width Height Description & comments
1 2 6 8 O = options
1 10 6 8 P = preferences
1 18 6 8 I = ID3 editor
1 26 6 8 D = double size mode
1 34 6 7 V = visualization plug-in
Name Width Height Description

posbar.bmp

307 10 The position slidebar
Sprites
X Y Width Height Description & comments
0 0 248 10 Position slidebar
248 0 29 10 Position slider
278 0 29 10 Position slider pushed
Name Width Height Description

volume.bmp

68 433 The volume and panning slidebar
Sprites
X Y Width Height Description & comments
0 n*15 68 13 Volume (*) slidebars (**)
9 n*15 38 13 Panning (*) slidebars (**)
0 422 14 11 Volume & panning slider pushed
15 422 14 11 Volume & panning slider
(*) The middle of the volume slidebar is used as panning slidbar
(**) There are 28 slidebars, the first is used for min volume and middle panning, the last for max volume and left & right panning
Name Width Height Description

cbuttons.bmp

136 36 The control buttons
Sprites
X Y Width Height Description & comments
0 0 23 18 Previous button
0 18 23 18 Previous button pushed
23 0 23 18 Play button
23 18 23 18 Play button pushed
46 0 23 18 Pause button
46 18 23 18 Pause button pushed
69 0 23 18 Stop button
69 18 23 18 Stop button pushed
92 0 22 18 Next button
92 18 22 18 Next button pushed
114 0 22 16 Open (eject?) button
114 16 22 16 Open (eject?) button pushed
Name Width Height Description

shufrep.bmp

92 85 The shuffle, repeat, equalizer and playlist editor buttons
Sprites
X Y Width Height Description & comments
0 0 28 15 Repeat button off
0 15 28 15 Repeat button off pushed
0 30 28 15 Repeat button on
0 45 28 15 Repeat button on pushed
28 0 47 15 Shuffle button (*) off
28 15 47 15 Shuffle button (*) off pushed
28 30 47 15 Shuffle button (*) on
28 45 47 15 Shuffle button (*) on pushed
0 61 23 12 Equalizer button off
46 61 23 12 Equalizer button off pushed
0 73 23 12 Equalizer button on
46 73 23 12 Equalizer button on pushed
23 61 23 12 Playlist editor button off
69 61 23 12 Playlist editor button off pushed
23 73 23 12 Playlist editor button on
69 73 23 12 Playlist editor button on pushed
(*) When drawn on the final image, the rightmost column of the shuffle button overlaps with the leftmost column of the repeat button, the button last pushed will be drawn on top of the other (FIXME is this right?).
Name Width Height Description

playpaus.bmp

42 9 The play, pause and stop indicators
Sprites
X Y Width Height Description & comments
0(1) 0 9(8) 9 Play indicator (overlaps with work indicator (*))
9 0 9 9 Pause indicator
18 0 9 9 Stop indicator
27 0 9(2) 9 Background (overlaps with pause or stop indicator (**))
36 0 3 9 Work indicator on
39 0 3 9 Work indicator off
(*) The play indicator is drawn to the right and then the work indicator to the left, so the left column is never visible.
(**) The background is drawn to the left and then stop or pause indicator to the right, so the right part is never visible.
Name Width Height Description

monoster.bmp

58(56) 33(24) The mono, stereo (and HQ) indicators (2 pixels to the right is never used) (the HQ indicator is not used)
Sprites
X Y Width Height Description & comments
0 0 29 12 Stereo indicator on
0 12 29 12 Stereo indicator off
29 0 29(27) 12 Mono indicator on (*)
29 12 29(27) 12 Mono indicator off (*)
? ? ? ? FIXME HQ indicator on (not used in Winamp 1.8)
? ? ? ? FIXME HQ indicator off (not used in Winamp 1.8)
(*) When drawn on the final image the two rightmost columns of the mono indicator overlaps with the two leftmost columns of the stereo indicator, so they are never visible.
Name Width Height Description

text.bmp

155 18 The characters used in for example the song title display
Sprites
X Y Width Height Description & comments
n*5 m*6 5 6 Characters: (*) NOTE! the rightmost part of A is used as a padding character (**)
4 0 1 6 Blank padding character (**)
(*) the characters are (in this order):
ABCDEFGHIJKLMNOPQRSTUVWXYZ"@
0123456789 _:()-'!_+\/[]^&%.=$#
ежд?*

NOTE! The two characters after '9' are dotted underline and short underline.
NOTE! The default skin has a '@' character that is 6x6 but only 5x6 is actually drawn.
(**) The 'A' character is 5x6 as all other characters but don't use the rightmost column, because is used as a black padding character to the right of the song title, when it is shorter than the display.

Name Width Height Description

numbers.bmp

99 13 The numbers and minus sign used to display time
Sprites
X Y Width Height Description & comments
n*9 0 9 13 Ten numbers (0-9) + one empty (*)
20 6 5 1 Minus sign (the middle of number 2) (*)
9 6 5 1 Not minus sign (the middle of number 1) (*)
(*) When displaying the time left the minus sign is taken from the middle of number 2, and when displaying the elapsed time it is taken from the middle-left of number 1.