Commit 4df8ebf6 authored by Matthias Klumpp's avatar Matthias Klumpp

Merge tag 'upstream/2.1.0+dfsg'

Upstream version 2.1.0+dfsg
parents 90c0c16a 247e82d0
projectM -- Milkdrop-esque visualisation SDK
Copyright (C)2003-2007 projectM Team
......@@ -25,12 +24,12 @@ Carmelo Piccione
Evaluator
Pulse Audio support (projectM-pulseaudio)
Qt GUI (projectM-qt)
Peter Sperl
Beat Detection
Rendering
XMMS Support (projectM-xmms)
libvisual Support (projectM-libvisual)
libvisual Support (projectM-libvisual)
Alligator Descartes
Media Player Support (iTunes, Winamp, Windows Media Player)
......@@ -40,3 +39,8 @@ Alligator Descartes
Roger Dannenburg
Advice & Support
Matthias Klumpp
CMake build system
Distro integration
Bug fixes
PROJECT(projectM-complete)
cmake_minimum_required(VERSION 2.4.0)
cmake_policy(SET CMP0005 OLD)
cmake_minimum_required(VERSION 2.8.0)
if(COMMAND cmake_policy)
cmake_policy(SET CMP0003 NEW)
endif(COMMAND cmake_policy)
Include(src/cmake/CPack-projectM.cmake)
include(src/cmake/CPack-projectM.cmake)
add_subdirectory(src)
......@@ -55,7 +55,7 @@ modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.
Finally, software patents pose a constant threat to the existence of
any free program. We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
......@@ -111,7 +111,7 @@ modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.
GNU LESSER GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
......@@ -146,7 +146,7 @@ such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it). Whether that is true depends on what the Library does
and what the program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
......@@ -158,7 +158,7 @@ Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
......@@ -216,7 +216,7 @@ instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
......@@ -267,7 +267,7 @@ Library will still fall under Section 6.)
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
......@@ -329,7 +329,7 @@ restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
......@@ -370,7 +370,7 @@ subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
......@@ -422,7 +422,7 @@ conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
......@@ -456,7 +456,7 @@ SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
......
......@@ -5,7 +5,7 @@
# CPACK_INSTALL_CMAKE_PROJECTS - For each project (path, name, component)
# CPACK_CMAKE_GENERATOR - CMake Generator used for the projects
# CPACK_INSTALL_COMMANDS - Extra commands to install components
# CPACK_INSTALL_DIRECTORIES - Extra directories to install
# CPACK_INSTALLED_DIRECTORIES - Extra directories to install
# CPACK_PACKAGE_DESCRIPTION_FILE - Description file for the package
# CPACK_PACKAGE_DESCRIPTION_SUMMARY - Summary of the package
# CPACK_PACKAGE_EXECUTABLES - List of pairs of executables and labels
......@@ -41,41 +41,42 @@ SET(CPACK_BINARY_TGZ "ON")
SET(CPACK_BINARY_TZ "ON")
SET(CPACK_BINARY_ZIP "")
SET(CPACK_CMAKE_GENERATOR "Unix Makefiles")
SET(CPACK_COMPONENTS_ALL "")
SET(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE")
SET(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE")
SET(CPACK_GENERATOR "STGZ;TGZ;TZ")
SET(CPACK_GENERATORS "TGZ")
SET(CPACK_INSTALL_CMAKE_PROJECTS "/home/struktured/workspace/projectm_trunk;projectM-complete;ALL;/")
SET(CPACK_INSTALL_CMAKE_PROJECTS "/home/carm/workspace/projectm-trunk-release;projectM-complete;ALL;/")
SET(CPACK_INSTALL_PREFIX "/usr/local")
SET(CPACK_MODULE_PATH "")
SET(CPACK_NSIS_DISPLAY_NAME "projectM-complete 2.0.1")
SET(CPACK_NSIS_DISPLAY_NAME "projectM-complete 2.1.0")
SET(CPACK_NSIS_INSTALLER_ICON_CODE "")
SET(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "")
SET(CPACK_OUTPUT_CONFIG_FILE "/home/struktured/workspace/projectm_trunk/CPackConfig.cmake")
SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES")
SET(CPACK_NSIS_PACKAGE_NAME "projectM-complete 2.1.0")
SET(CPACK_OUTPUT_CONFIG_FILE "/home/carm/workspace/projectm-trunk-release/CPackConfig.cmake")
SET(CPACK_PACKAGE_DEFAULT_LOCATION "/")
SET(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake/Templates/CPack.GenericDescription.txt")
SET(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-2.8/Templates/CPack.GenericDescription.txt")
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "projectM-complete built using CMake")
SET(CPACK_PACKAGE_FILE_NAME "projectM-complete-2.0.1-Linux")
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "projectM-complete 2.0.1")
SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "projectM-complete 2.0.1")
SET(CPACK_PACKAGE_FILE_NAME "projectM-complete-2.1.0-Linux")
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "projectM-complete 2.1.0")
SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "projectM-complete 2.1.0")
SET(CPACK_PACKAGE_NAME "projectM-complete")
SET(CPACK_PACKAGE_RELOCATABLE "true")
SET(CPACK_PACKAGE_VENDOR "Humanity")
SET(CPACK_PACKAGE_VERSION "2.0.1")
SET(CPACK_PACKAGE_VERSION "2.1.0")
SET(CPACK_PACKAGE_VERSION_MAJOR "2")
SET(CPACK_PACKAGE_VERSION_MINOR "0")
SET(CPACK_PACKAGE_VERSION_PATCH "1")
SET(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake/Templates/CPack.GenericLicense.txt")
SET(CPACK_RESOURCE_FILE_README "/usr/share/cmake/Templates/CPack.GenericDescription.txt")
SET(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake/Templates/CPack.GenericWelcome.txt")
SET(CPACK_PACKAGE_VERSION_MINOR "1")
SET(CPACK_PACKAGE_VERSION_PATCH "0")
SET(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-2.8/Templates/CPack.GenericLicense.txt")
SET(CPACK_RESOURCE_FILE_README "/usr/share/cmake-2.8/Templates/CPack.GenericDescription.txt")
SET(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-2.8/Templates/CPack.GenericWelcome.txt")
SET(CPACK_SET_DESTDIR "OFF")
SET(CPACK_SOURCE_CYGWIN "")
SET(CPACK_SOURCE_GENERATOR "TGZ")
SET(CPACK_SOURCE_GENERATOR "TGZ;TBZ2")
SET(CPACK_SOURCE_GENERATORS "TGZ")
SET(CPACK_SOURCE_IGNORE_FILES "Makefile;CMakeCache.txt;CMakeFiles/;.*.gz;.*.bz2;.*.Z;.*.zip;.*svn")
SET(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/struktured/workspace/projectm_trunk/CPackSourceConfig.cmake")
SET(CPACK_SOURCE_TBZ2 "OFF")
SET(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/carm/workspace/projectm-trunk-release/CPackSourceConfig.cmake")
SET(CPACK_SOURCE_TBZ2 "ON")
SET(CPACK_SOURCE_TGZ "ON")
SET(CPACK_SOURCE_TZ "OFF")
SET(CPACK_SOURCE_Z "OFF")
......
......@@ -5,7 +5,7 @@
# CPACK_INSTALL_CMAKE_PROJECTS - For each project (path, name, component)
# CPACK_CMAKE_GENERATOR - CMake Generator used for the projects
# CPACK_INSTALL_COMMANDS - Extra commands to install components
# CPACK_INSTALL_DIRECTORIES - Extra directories to install
# CPACK_INSTALLED_DIRECTORIES - Extra directories to install
# CPACK_PACKAGE_DESCRIPTION_FILE - Description file for the package
# CPACK_PACKAGE_DESCRIPTION_SUMMARY - Summary of the package
# CPACK_PACKAGE_EXECUTABLES - List of pairs of executables and labels
......@@ -41,45 +41,46 @@ SET(CPACK_BINARY_TGZ "ON")
SET(CPACK_BINARY_TZ "ON")
SET(CPACK_BINARY_ZIP "")
SET(CPACK_CMAKE_GENERATOR "Unix Makefiles")
SET(CPACK_COMPONENTS_ALL "")
SET(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE")
SET(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE")
SET(CPACK_GENERATOR "TGZ")
SET(CPACK_GENERATOR "TGZ;TBZ2")
SET(CPACK_GENERATORS "TGZ")
SET(CPACK_IGNORE_FILES "Makefile;CMakeCache.txt;CMakeFiles/;.*.gz;.*.bz2;.*.Z;.*.zip;.*svn")
SET(CPACK_INSTALLED_DIRECTORIES "/home/struktured/workspace/projectm_trunk;/")
SET(CPACK_INSTALLED_DIRECTORIES "/home/carm/workspace/projectm-trunk-release;/")
SET(CPACK_INSTALL_CMAKE_PROJECTS "")
SET(CPACK_INSTALL_PREFIX "/usr/local")
SET(CPACK_MODULE_PATH "")
SET(CPACK_NSIS_DISPLAY_NAME "projectM-complete 2.0.1")
SET(CPACK_NSIS_DISPLAY_NAME "projectM-complete 2.1.0")
SET(CPACK_NSIS_INSTALLER_ICON_CODE "")
SET(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "")
SET(CPACK_OUTPUT_CONFIG_FILE "/home/struktured/workspace/projectm_trunk/CPackConfig.cmake")
SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES")
SET(CPACK_NSIS_PACKAGE_NAME "projectM-complete 2.1.0")
SET(CPACK_OUTPUT_CONFIG_FILE "/home/carm/workspace/projectm-trunk-release/CPackConfig.cmake")
SET(CPACK_PACKAGE_DEFAULT_LOCATION "/")
SET(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake/Templates/CPack.GenericDescription.txt")
SET(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-2.8/Templates/CPack.GenericDescription.txt")
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "projectM-complete built using CMake")
SET(CPACK_PACKAGE_FILE_NAME "projectM-complete-2.0.1-Source")
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "projectM-complete 2.0.1")
SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "projectM-complete 2.0.1")
SET(CPACK_PACKAGE_FILE_NAME "projectM-complete-2.1.0-Source")
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "projectM-complete 2.1.0")
SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "projectM-complete 2.1.0")
SET(CPACK_PACKAGE_NAME "projectM-complete")
SET(CPACK_PACKAGE_RELOCATABLE "true")
SET(CPACK_PACKAGE_VENDOR "Humanity")
SET(CPACK_PACKAGE_VERSION "2.0.1")
SET(CPACK_PACKAGE_VERSION "2.1.0")
SET(CPACK_PACKAGE_VERSION_MAJOR "2")
SET(CPACK_PACKAGE_VERSION_MINOR "0")
SET(CPACK_PACKAGE_VERSION_PATCH "1")
SET(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake/Templates/CPack.GenericLicense.txt")
SET(CPACK_RESOURCE_FILE_README "/usr/share/cmake/Templates/CPack.GenericDescription.txt")
SET(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake/Templates/CPack.GenericWelcome.txt")
SET(CPACK_PACKAGE_VERSION_MINOR "1")
SET(CPACK_PACKAGE_VERSION_PATCH "0")
SET(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-2.8/Templates/CPack.GenericLicense.txt")
SET(CPACK_RESOURCE_FILE_README "/usr/share/cmake-2.8/Templates/CPack.GenericDescription.txt")
SET(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-2.8/Templates/CPack.GenericWelcome.txt")
SET(CPACK_SET_DESTDIR "OFF")
SET(CPACK_SOURCE_CYGWIN "")
SET(CPACK_SOURCE_GENERATOR "TGZ")
SET(CPACK_SOURCE_GENERATOR "TGZ;TBZ2")
SET(CPACK_SOURCE_GENERATORS "TGZ")
SET(CPACK_SOURCE_IGNORE_FILES "Makefile;CMakeCache.txt;CMakeFiles/;.*.gz;.*.bz2;.*.Z;.*.zip;.*svn")
SET(CPACK_SOURCE_INSTALLED_DIRECTORIES "/home/struktured/workspace/projectm_trunk;/")
SET(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/struktured/workspace/projectm_trunk/CPackSourceConfig.cmake")
SET(CPACK_SOURCE_PACKAGE_FILE_NAME "projectM-complete-2.0.1-Source")
SET(CPACK_SOURCE_TBZ2 "OFF")
SET(CPACK_SOURCE_INSTALLED_DIRECTORIES "/home/carm/workspace/projectm-trunk-release;/")
SET(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/carm/workspace/projectm-trunk-release/CPackSourceConfig.cmake")
SET(CPACK_SOURCE_PACKAGE_FILE_NAME "projectM-complete-2.1.0-Source")
SET(CPACK_SOURCE_TBZ2 "ON")
SET(CPACK_SOURCE_TGZ "ON")
SET(CPACK_SOURCE_TOPLEVEL_TAG "Linux-Source")
SET(CPACK_SOURCE_TZ "OFF")
......
......@@ -35,10 +35,10 @@ Q8: Where are the presets?
Q1: What is projectM?
--------------------
A: projectM makes pretty pictures from music in realtime.
Specifically it uses iterative image-based rendering techniques which
are hardware accelerated via OpenGL. projectM was developed with
Specifically it uses iterative image-based rendering techniques which
are hardware accelerated via OpenGL. projectM was developed with
cross-platform support in mind, using SDL and OpenGL. The only port
right now is Linux/XMMS, but it should be easy to plug-in to other
right now is Linux/XMMS, but it should be easy to plug-in to other
music players on other platforms (even windows and Mac OS X).
projectM aims for compatability with MilkDrop's latest release (1.04b at
......@@ -47,37 +47,37 @@ A: projectM makes pretty pictures from music in realtime.
Q2: What? This preset doesn't look like it does on Milkdrop.
-----------------------------------------------------------
A: We know. Some of the simple waveforms (1,2,3,4,5) are not even close to
correct. They are similiar, but not exactly the same. Also, the solarize,
brighten, and darken filters aren't done yet either.
A: We know. Some of the simple waveforms (1,2,3,4,5) are not even close to
correct. They are similiar, but not exactly the same. Also, the solarize,
brighten, and darken filters aren't done yet either.
Sometimes things just don't look right because we might, for example, draw
shapes a tiny bit too big or small. Small errors propagate and become HUGE
after a few manipulations. But who knows because it takes forever to tweak
after a few manipulations. But who knows because it takes forever to tweak
things like this.
Q3: Where can I get more presets?
--------------------------------
A: www.milkdrop.co.uk is a great place to start. However, all their
presets are packaged in self-unzipping .exe's for win32. I
extracted them with wine and it worked wonderfully.
extracted them with wine and it worked wonderfully.
Check out the milkdrop forums at www.winamp.com to find new presets
Check out the milkdrop forums at www.winamp.com to find new presets
daily. The URL is below
http://forums.winamp.com/forumdisplay.php?forumid=81
Q4: What are the system requirements?
------------------------------------
A: To run projectM you need a Linux system w/a sound card and a video card
A: To run projectM you need a Linux system w/a sound card and a video card
with OpenGL hardware acceleration. We find that projectM runs MUCH better
with the 2.6 series kernel and ALSA sound.
What does that mean? Well...
projectM has only been tested prior to me writing this on 4 computers.
All those computers used some form of Redhat (8,9, & Fedora 1),
projectM has only been tested prior to me writing this on 4 computers.
All those computers used some form of Redhat (8,9, & Fedora 1),
although this should make no differance if you run a differant distro.
Also, all of them used Nvidia (Geforce 3 Ti200, Geforce 4 MX440 & Ti4200)
......@@ -86,20 +86,20 @@ A: To run projectM you need a Linux system w/a sound card and a video card
Q5: Why is projectM so slow!!!
-----------------------------
A: If projectM is slow for you all the time, and not just on a select few
presets, you can try lowering the rendering quality, and this will speed
A: If projectM is slow for you all the time, and not just on a select few
presets, you can try lowering the rendering quality, and this will speed
things up A LOT. To do this, lower the texsize and gridsize (gx,gy) in
/etc/projectM/config
/etc/projectM/config
Texsize controls the size of the rendered image. If you think your video
card is too slow or doesn't have enough memory, then change this. A middle
value for texsize is 512. 1024 is nice looking, and 256 is for VERY slow
Texsize controls the size of the rendered image. If you think your video
card is too slow or doesn't have enough memory, then change this. A middle
value for texsize is 512. 1024 is nice looking, and 256 is for VERY slow
computers.
If your processor is the bottleneck, then lower gx and gy. gx and gy
If your processor is the bottleneck, then lower gx and gy. gx and gy
control the size of the interpolated per-pixel mesh. 24/18 is a low-middle
value. I run at 48/32 some times on my Athlon 64 3200, and I could
probably go higher, although some presets slow down for me at this VERY
value. I run at 48/32 some times on my Athlon 64 3200, and I could
probably go higher, although some presets slow down for me at this VERY
high setting.
Certain presets can be processor hogs and slow the framerate down to
......@@ -117,4 +117,4 @@ A: /etc/projectM/config
Q8: Where are the presets?
--------------------------
A: /etc/projectM/presets
A: /usr/share/projectM/presets
# Install script for directory: /home/struktured/workspace/projectm_trunk
# Install script for directory: /home/carm/workspace/projectm-trunk-release
# Set the install prefix
IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
......@@ -29,16 +29,22 @@ ENDIF(NOT CMAKE_INSTALL_COMPONENT)
# Install shared libraries without execute permission?
IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
SET(CMAKE_INSTALL_SO_NO_EXE "0")
SET(CMAKE_INSTALL_SO_NO_EXE "1")
ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
IF(NOT CMAKE_INSTALL_LOCAL_ONLY)
# Include the install script for each subdirectory.
INCLUDE("/home/carm/workspace/projectm-trunk-release/src/cmake_install.cmake")
ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY)
IF(CMAKE_INSTALL_COMPONENT)
SET(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
ELSE(CMAKE_INSTALL_COMPONENT)
SET(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
ENDIF(CMAKE_INSTALL_COMPONENT)
FILE(WRITE "/home/struktured/workspace/projectm_trunk/${CMAKE_INSTALL_MANIFEST}" "")
FILE(WRITE "/home/carm/workspace/projectm-trunk-release/${CMAKE_INSTALL_MANIFEST}" "")
FOREACH(file ${CMAKE_INSTALL_MANIFEST_FILES})
FILE(APPEND "/home/struktured/workspace/projectm_trunk/${CMAKE_INSTALL_MANIFEST}" "${file}\n")
FILE(APPEND "/home/carm/workspace/projectm-trunk-release/${CMAKE_INSTALL_MANIFEST}" "${file}\n")
ENDFOREACH(file)
/**
* projectM -- Milkdrop-esque visualisation SDK
* Copyright (C)2003-2004 projectM Team
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
* See 'LICENSE.txt' included within this release
*
*/
projectM -- Milkdrop-esque visualisation SDK
Copyright (C)2003-2004 projectM Team
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
See 'LICENSE.txt' included within this release
This diff is collapsed.
// ADD PREDEFINED MACROS HERE!
project (PROJECTM_ROOT)
project (projectM-complete)
cmake_minimum_required(VERSION 2.4.0)
......@@ -11,6 +11,8 @@ OPTION(INCLUDE-PROJECTM-TEST "Build the projectM test suite" ON)
OPTION(INCLUDE-PROJECTM-XMMS "Build the projectM xmms module (deprecated, use audacious instead)" OFF)
OPTION(INCLUDE-NATIVE-PRESETS "Build the projectM native preset sample collection " ON)
set(PROJECTM_ROOT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
add_subdirectory (libprojectM)
if(INCLUDE-PROJECTM-TEST)
......
......@@ -6,11 +6,11 @@ include(FindPkgConfig.cmake)
Include(cmake/CPack-projectM.cmake)
if (${CMAKE_PROJECT_NAME} MATCHES "PROJECTM_ROOT")
if (${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
set(LIBPROJECTM_FOUND true)
else(${CMAKE_PROJECT_NAME} MATCHES "PROJECTM_ROOT")
else(${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
pkg_search_module(LIBPROJECTM REQUIRED libprojectM)
endif(${CMAKE_PROJECT_NAME} MATCHES "PROJECTM_ROOT")
endif(${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
if (LIBPROJECTM_FOUND)
MESSAGE(STATUS "[NativePresets] projectM detected.")
......@@ -19,7 +19,7 @@ else (LIBPROJECTM_FOUND)
endif(LIBPROJECTM_FOUND)
ADD_DEFINITIONS(-DLINUX -DPROJECTM_PREFIX='"${PROJECTM_PREFIX}"')
ADD_DEFINITIONS(-DLINUX -DPROJECTM_PREFIX='\"${PROJECTM_PREFIX}\"')
if(COMMAND cmake_policy)
......@@ -34,13 +34,13 @@ ADD_LIBRARY(MstressJuppyDancer SHARED MstressJuppyDancer.cpp)
# Doesn't build yet
#ADD_LIBRARY(RLGFractalDrop7c SHARED RLGFractalDrop7c.cpp)
if (${CMAKE_PROJECT_NAME} MATCHES "PROJECTM_ROOT")
if (${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
set(PROJECTM_INCLUDE ${PROJECTM_ROOT_SOURCE_DIR}/libprojectM)
set(PROJECTM_LINK ${PROJECTM_ROOT_BINARY_DIR}/libprojectM)
elseif (${CMAKE_PROJECT_NAME} MATCHES ${PROJECT_NAME})
set(PROJECTM_INCLUDE ${LIBPROJECTM_INCLUDEDIR}/libprojectM)
set(PROJECTM_LINK ${PROJECTM_LDFLAGS})
endif (${CMAKE_PROJECT_NAME} MATCHES "PROJECTM_ROOT")
endif (${CMAKE_PROJECT_NAME} MATCHES "projectM-complete")
LINK_DIRECTORIES(${PROJECTM_LINK} ${Renderer_BINARY_DIR} ${NativePresetFactory_BINARY_DIR})
......
......@@ -190,7 +190,7 @@ public:
bass = music.bass;
}
virtual Point PerPixel(Point p, const PerPixelContext context)
virtual PixelPoint PerPixel(PixelPoint p, const PerPixelContext context)
{
float sx = -below(p.y,0.8)*.001;
......
......@@ -140,7 +140,7 @@ public:
}
virtual Point PerPixel(Point p, const PerPixelContext context)
virtual PixelPoint PerPixel(PixelPoint p, const PerPixelContext context)
{
float pdy=dy+0.008*cos((p.x-0.5 - 0.1*sin(q7))*(q6));
Transforms::Zoom(p,context,13.290894,1);
......
......@@ -120,7 +120,7 @@ public:
}
virtual Point PerPixel(Point p, const PerPixelContext context)
virtual PixelPoint PerPixel(PixelPoint p, const PerPixelContext context)
{
Transforms::Zoom(p,context,1+0.05*context.rad,1);
Transforms::Transform(p,context,dx,dy);
......
......@@ -48,7 +48,7 @@ public:
dy = -0.008*sin(time*0.2);
}
virtual Point PerPixel(Point p, const PerPixelContext context)
virtual PixelPoint PerPixel(PixelPoint p, const PerPixelContext context)
{
float q1 = 8.05+(sin(p.x+0.137*time)-cos(p.y+0.213*time));
int val1 = abs(p.x*3-0.4*sin(q1));
......
......@@ -74,7 +74,7 @@ public:
}
virtual Point PerPixel(Point p, const PerPixelContext context)
virtual PixelPoint PerPixel(PixelPoint p, const PerPixelContext context)
{
float myy = context.y-(0.250025);
float myx = context.x-0.5;
......
......@@ -17,8 +17,8 @@ SET(CPACK_SOURCE_TBZ2 ON)
#SET(CPACK_BINARY_TGZ ON)
#SET(CPACK_SOURCE_Z OFF)
SET(CPACK_PACKAGE_VERSION_MAJOR "2")
SET(CPACK_PACKAGE_VERSION_MINOR "0")
SET(CPACK_PACKAGE_VERSION_PATCH "1")
SET(CPACK_PACKAGE_VERSION_MINOR "1")
SET(CPACK_PACKAGE_VERSION_PATCH "0")
INCLUDE(CPack)
# Install script for directory: /home/carm/workspace/projectm-trunk-release/src/NativePresets
# Set the install prefix
IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
SET(CMAKE_INSTALL_PREFIX "/usr/local")
ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
# Set the install configuration name.
IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
IF(BUILD_TYPE)
STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
ELSE(BUILD_TYPE)
SET(CMAKE_INSTALL_CONFIG_NAME "Release")
ENDIF(BUILD_TYPE)
MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
# Set the component getting installed.
IF(NOT CMAKE_INSTALL_COMPONENT)
IF(COMPONENT)
MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
ELSE(COMPONENT)
SET(CMAKE_INSTALL_COMPONENT)
ENDIF(COMPONENT)
ENDIF(NOT CMAKE_INSTALL_COMPONENT)
# Install shared libraries without execute permission?
IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
SET(CMAKE_INSTALL_SO_NO_EXE "1")
ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
#CPACK projectM config
# CPACK projectM config
SET(CPACK_GENERATORS "TGZ")
SET(CPACK_SOURCE_GENERATORS "TGZ")
SET(CPACK_STRIP_FILES ON)
#SET(CPACK_IGNORE_FILES
#SET(CPACK_IGNORE_FILES
# "*~;CMakeCache.txt;CMakeFiles/;.svn;.*.bak;*.Z;_*/;.*.gz;.*.tgz;.*.tar;.*.bz2;.*.zip;.*.rpm;.*.deb;.*.o")
SET(CPACK_SOURCE_IGNORE_FILES
SET(CPACK_SOURCE_IGNORE_FILES
"Makefile;CMakeCache.txt;CMakeFiles/;.*.gz;.*.bz2;.*.Z;.*.zip;.*svn")
#SET(CPACK_BINARY_RPM OFF)
......@@ -17,8 +17,11 @@ SET(CPACK_SOURCE_TBZ2 ON)
#SET(CPACK_BINARY_TGZ ON)
#SET(CPACK_SOURCE_Z OFF)
SET(CPACK_PACKAGE_VERSION_MAJOR "2")
SET(CPACK_PACKAGE_VERSION_MINOR "0")
SET(CPACK_PACKAGE_VERSION_PATCH "1")
INCLUDE(CPack)
SET(CPACK_PACKAGE_VERSION_MINOR "1")
SET(CPACK_PACKAGE_VERSION_PATCH "0")
IF(CPACK_PROJECTM_INCLUDED)
INCLUDE(CPack)
ELSE(CPACK_PROJECTM_INCLUDED)
SET(CACHE CPACK_PROJECTM_INCLUDED 1)
ENDIF(CPACK_PROJECTM_INCLUDED)
# Install script for directory: /home/carm/workspace/projectm-trunk-release/src
# Set the install prefix
IF(NOT DEFINED CMAKE_INSTALL_PREFIX)
SET(CMAKE_INSTALL_PREFIX "/usr/local")
ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX)
STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
# Set the install configuration name.
IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
IF(BUILD_TYPE)
STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
ELSE(BUILD_TYPE)
SET(CMAKE_INSTALL_CONFIG_NAME "Release")
ENDIF(BUILD_TYPE)
MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
# Set the component getting installed.
IF(NOT CMAKE_INSTALL_COMPONENT)
IF(COMPONENT)
MESSAGE(STATUS "Install component: \"${COMPONENT}\"")
SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
ELSE(COMPONENT)
SET(CMAKE_INSTALL_COMPONENT)
ENDIF(COMPONENT)
ENDIF(NOT CMAKE_INSTALL_COMPONENT)
# Install shared libraries without execute permission?
IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
SET(CMAKE_INSTALL_SO_NO_EXE "1")
ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
IF(NOT CMAKE_INSTALL_LOCAL_ONLY)
# Include the install script for each subdirectory.
INCLUDE("/home/carm/workspace/projectm-trunk-release/src/libprojectM/cmake_install.cmake")
INCLUDE("/home/carm/workspace/projectm-trunk-release/src/projectM-test/cmake_install.cmake")
INCLUDE("/home/carm/workspace/projectm-trunk-release/src/projectM-qt/cmake_install.cmake")
INCLUDE("/home/carm/workspace/projectm-trunk-release/src/projectM-pulseaudio/cmake_install.cmake")
INCLUDE("/home/carm/workspace/projectm-trunk-release/src/projectM-libvisual/cmake_install.cmake")
INCLUDE("/home/carm/workspace/projectm-trunk-release/src/NativePresets/cmake_install.cmake")
ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY)
This diff is collapsed.
......@@ -12,7 +12,7 @@ New for versoin 1.01
New for version 1.00
------------------------------------------------------
This release includes months of refactoring. The code changes are immense. The list below does not even begin to explain the amount of upheaval that has occured.
*Smooth Preset Switching
*OpenGL Framebuffer Objects (sharper rendering)
......@@ -40,23 +40,23 @@ New for version 0.99
*xmms plugins close properly via window decorations
*mouse cursor hidden in xmms-projectM during fullscreen
*menus should resize relative to the screen size now
*Fixed numerous compilation bugs
*Fixed numerous compilation bugs
*when the player changes to a new song, libprojectM will zoom in the title for a few seconds, then blend the title into the vis (ala milkdrop), if the player support sending the title to libprojectM (only xmms-projectM now)