Commit ad351712 authored by Adrien Maglo's avatar Adrien Maglo

New 3D OpenGL audio spectrum visualization.

parent 0117fb1d
......@@ -19,6 +19,9 @@ Video Filter:
libVLC:
* add equalizer API libvlc_audio_equalizer_* functions
Visualizations:
* Add a 3D OpenGL spectrum visualization.
Removed modules:
* ios video output: use ios2
......
......@@ -3942,6 +3942,16 @@ AS_IF([test "${enable_atmo}" != no], [
])
])
dnl
dnl glSpectrum
dnl
AC_ARG_ENABLE(glspectrum,
[ --enable-glspectrum 3D OpenGL spectrum visualization (default auto)])
if test "${enable_glspectrum}" != "no" && test "${have_gl}" = "yes"
then
VLC_ADD_PLUGIN([glspectrum])
VLC_ADD_LIBS([glspectrum],[$GL_LIBS])
fi
EXTEND_HELP_STRING([Service Discovery plugins:])
dnl
......
......@@ -141,6 +141,7 @@ $Id$
* gles1: OpenGL ES video output using the generic OpenGL provider
* gles2: OpenGL ES2 video output using the generic OpenGL provider
* globalhotkeys: module to catch hotkeys when application doesn't have the focus
* glspectrum: 3D OpenGL spectrum visualization
* glwin32: a opengl provider using DirectX OpenGL
* glx: GLX extension for OpenGL
* gme: old console games music playback using Game Music Emu
......
......@@ -13,3 +13,5 @@ endif
libvlc_LTLIBRARIES += libvisual_plugin.la
SOURCES_vsxu = vsxu.cpp cyclic_buffer.h
SOURCES_glspectrum = glspectrum.c visual/fft.c visual/fft.h
This diff is collapsed.
......@@ -296,7 +296,8 @@ static int VisualizationCallback (vlc_object_t *obj, const char *var,
* separate "visual" (external) and "audio-visual" (internal) variables...
* The visual plugin should have one submodule per effect instead. */
if (strcasecmp (mode, "none") && strcasecmp (mode, "goom")
&& strcasecmp (mode, "projectm") && strcasecmp (mode, "vsxu"))
&& strcasecmp (mode, "projectm") && strcasecmp (mode, "vsxu")
&& strcasecmp (mode, "glspectrum"))
{
var_Create (obj, "effect-list", VLC_VAR_STRING);
var_SetString (obj, "effect-list", mode);
......
......@@ -252,6 +252,13 @@ audio_output_t *aout_New (vlc_object_t *parent)
text.psz_string = (char*)"Vovoid VSXu";
var_Change (aout, "visual", VLC_VAR_ADDCHOICE, &val, &text);
}
/* Look for glspectrum plugin */
if (module_exists ("glspectrum"))
{
val.psz_string = (char *)"glspectrum";
text.psz_string = (char*)"3D spectrum";
var_Change (aout, "visual", VLC_VAR_ADDCHOICE, &val, &text);
}
str = var_GetNonEmptyString (aout, "effect-list");
if (str != NULL)
{
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment