Commit ad351712 authored by Adrien Maglo's avatar Adrien Maglo

New 3D OpenGL audio spectrum visualization.

parent 0117fb1d
...@@ -19,6 +19,9 @@ Video Filter: ...@@ -19,6 +19,9 @@ Video Filter:
libVLC: libVLC:
* add equalizer API libvlc_audio_equalizer_* functions * add equalizer API libvlc_audio_equalizer_* functions
Visualizations:
* Add a 3D OpenGL spectrum visualization.
Removed modules: Removed modules:
* ios video output: use ios2 * ios video output: use ios2
......
...@@ -3942,6 +3942,16 @@ AS_IF([test "${enable_atmo}" != no], [ ...@@ -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:]) EXTEND_HELP_STRING([Service Discovery plugins:])
dnl dnl
......
...@@ -141,6 +141,7 @@ $Id$ ...@@ -141,6 +141,7 @@ $Id$
* gles1: OpenGL ES video output using the generic OpenGL provider * gles1: OpenGL ES video output using the generic OpenGL provider
* gles2: OpenGL ES2 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 * globalhotkeys: module to catch hotkeys when application doesn't have the focus
* glspectrum: 3D OpenGL spectrum visualization
* glwin32: a opengl provider using DirectX OpenGL * glwin32: a opengl provider using DirectX OpenGL
* glx: GLX extension for OpenGL * glx: GLX extension for OpenGL
* gme: old console games music playback using Game Music Emu * gme: old console games music playback using Game Music Emu
......
...@@ -13,3 +13,5 @@ endif ...@@ -13,3 +13,5 @@ endif
libvlc_LTLIBRARIES += libvisual_plugin.la libvlc_LTLIBRARIES += libvisual_plugin.la
SOURCES_vsxu = vsxu.cpp cyclic_buffer.h 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, ...@@ -296,7 +296,8 @@ static int VisualizationCallback (vlc_object_t *obj, const char *var,
* separate "visual" (external) and "audio-visual" (internal) variables... * separate "visual" (external) and "audio-visual" (internal) variables...
* The visual plugin should have one submodule per effect instead. */ * The visual plugin should have one submodule per effect instead. */
if (strcasecmp (mode, "none") && strcasecmp (mode, "goom") 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_Create (obj, "effect-list", VLC_VAR_STRING);
var_SetString (obj, "effect-list", mode); var_SetString (obj, "effect-list", mode);
......
...@@ -252,6 +252,13 @@ audio_output_t *aout_New (vlc_object_t *parent) ...@@ -252,6 +252,13 @@ audio_output_t *aout_New (vlc_object_t *parent)
text.psz_string = (char*)"Vovoid VSXu"; text.psz_string = (char*)"Vovoid VSXu";
var_Change (aout, "visual", VLC_VAR_ADDCHOICE, &val, &text); 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"); str = var_GetNonEmptyString (aout, "effect-list");
if (str != NULL) 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