MilkDrop

MilkDrop
MilkDrop
Developer(s) Ryan Geiss
Stable release 1.04
Operating system Windows
Size 534 KB
Type Music visualization
License BSD
Website sourceforge.net/projects/milkdrop
Screenshot of preset included in MilkDrop version 1.04d

MilkDrop is an open source, hardware-accelerated music visualization plugin for Winamp, which was originally developed by Ryan Geiss. It uses DirectX and intelligent beat detection to render iterated images which blend seamlessly.[1] MilkDrop uses a complex system of interpolation to transition between presets gradually through time, creating a constantly changing visual experience.[2]

Contents

Presets

MilkDrop is an environment for running presets, software which controls MilkDrop, and does not produce visualizations by itself.

Presets are saved in .milk file format, typically in a subfolder of the MilkDrop plugin directory. Creating new presets is generally referred to as authoring, or writing, making the person that wrote a preset its author. Presets are distributed on the Internet through Winamp, the Winamp forums, and through the personal webpages of MilkDrop preset authors.[3] A preset's title also doubles as its .milk save name, and usually includes the preset author or authors' pseudonym. MilkDrop presets often have more than one author, which is generally referred to as remixing or editing. A remix or an edit will often include these terms in the preset's title.

Creating presets

Screenshot of preset displaying custom wave per-frame code along with the resulting visual effect.

A current .milk file is composed of 4 major different kinds of scriptable equations. These include per_frame and per_pixel equations, as well as custom shapes and custom waves.[3]

Code in the per_frame section is executed once for each frame, modifying variables which affect different parameters that can be passed to other areas of code. Trigonometric functions which modify MilkDrop's internal looping time variable, systems of logic, and interaction with the audio information received from Winamp or other applicable media player's Fast Fourier transform (FFT)[4] can be used to govern how these parameters evolve though time.[3][5]

Code in the per_pixel section of MilkDrop is not actually re-evaluated at every pixel as the name would suggest, rather the screen is divided into a grid and the code is evaluated at each grid point.[6] The pixels in-between these points interpolate their values from the surrounding 4 points on the grid. The size of the grid is 32×24 by default, but can be set higher or lower by the user. Per_Pixel equations allow the preset author to alter some of MilkDrop's parameters differently in certain areas of the screen based upon x and y values, distance from the center of the screen, and the angle.[3]

Custom shapes and custom waves each have variables which allow the author to change the shape, size, color, and location on screen, among other things. Shapes and custom waves each have internal per_frame code that affects these variables similarly to how per_frame equations affect the entire preset. Custom shapes and waves equations are included in MilkDrop version 1.04 and later.[3] While initially MilkDrop allowed 4 custom shapes and waves, the latest version of the MilkDrop beta allows up to 5 custom shapes and 5 custom waves to be utilized per preset.[7]

History

Originally closed source, its source code was released under the BSD license in May 2005.[8] Ryan Geiss released 12 versions of MilkDrop between 5 November 2001 and 31 July 2003.[9] Redi Jedi as well as Michael Matusowsky et al. (Geoff Potter[10]) has taken up developing the program since 2005 and has released six beta versions.[7]

projectM[11] is an implementation of MilkDrop using OpenGL in C++, and is released under the GNU LGPL. It is available as a plugin for Audacious, XMMS, Winamp, iTunes, Jack, PulseAudio, foobar2000 and VLC media player. It comes natively with Qmmp and is available as a package in Fedora[12].

MilkDrop has been ported to XBMC Media Center, a homebrew developed media player that can be downloaded for Xbox, PC, or as a LiveCD.

The Flickernoise software for the Milkymist One video synthesizer is largely inspired by MilkDrop, and is compatible with MilkDrop presets to some extent.

MilkDrop 2.0 was released in 2007. It is available with Winamp 5.5 or from projectM in their 2.0.1 version for use it with other players like the VLC media player. MilkDrop 2 added DirectX 9.0 support and added the ability to use pixel shaders in its presets.

See also

References

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • MilkDrop — Тип визуализация Разработчик Ryan Gei …   Википедия

  • Milkdrop — …   Википедия

  • Music visualization — Print screen of preset included in MilkDrop version 1.04d Music visualization, a feature found in electronic music visualizers and media player software, generates animated imagery based on a piece of music. The imagery is usually generated and… …   Wikipedia

  • Audiovisualisierung — ist die Berechnung von Grafiken, die aufgrund von Musikdaten generiert werden. Die einfachsten Varianten sind die Darstellungen per Oszilloskop. Im einfachsten Fall wird die Wellenform des Audiosignals über den Zeitverlauf des Audiosignals… …   Deutsch Wikipedia

  • Winamp — Winamp …   Википедия

  • Advanced Visualization Studio — Для термина «AVS» см. другие значения. Advanced Visualization Studio Тип …   Википедия

  • WinAmp — 5.5 (обложка Bento) Тип Мультимедиа проигрыватели Разработчик ОС Microsoft Windows Версия …   Википедия

  • Windows Advanced Media Player — Winamp Winamp 5.5 (обложка Bento) Тип Мультимедиа проигрыватели Разработчик ОС Microsoft Windows Версия …   Википедия

  • Винамп — Winamp Winamp 5.5 (обложка Bento) Тип Мультимедиа проигрыватели Разработчик ОС Microsoft Windows Версия …   Википедия

  • Плеер Winamp — Winamp Winamp 5.5 (обложка Bento) Тип Мультимедиа проигрыватели Разработчик ОС Microsoft Windows Версия …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”