Changed the preset location for the audiofileprocessors.

Corrected seg fault in vibed deconstructor.
Add harmonic to vibed save and restore presets.

Corrected load and save seg fault when using gimp like
windows.

Corrected big endian alsa driver.

Changed parameters in single precision trig functions to
use single precision PI.

Modified Files:
  ChangeLog
  Makefile.am
  data/presets/AudioFileProcessor/Bass-Mania.cs.xml
  data/presets/AudioFileProcessor/Fat-Reversed-Kick.cs.xml
  data/presets/AudioFileProcessor/Kick-4-your-Subwoofer.cs.xml
  data/projects/cool_songs/Djeezus-BeatRolls.mmp
  data/projects/cool_songs/Djeezus-Oscilisous.mmp
  data/projects/cool_songs/Marfil-MarfilDrum01.mmp
  data/projects/cool_songs/Mart-Concave_flow.mmp
  data/projects/cool_songs/Mart-Dirt_Track.mmp
  data/projects/cool_songs/MaxFellner-Ease.mmp
  data/projects/cool_songs/SharkyX-DeadManDancing.mmp
  data/projects/cool_songs/SharkyX-Experiments.mmp
  data/projects/cool_songs/Siegel-DreamWave.mmp
  data/projects/cool_songs/TobyDox-Confused.mmp
  data/projects/cool_songs/TobyDox-Psycho.mmp
  data/projects/cool_songs/TobyDox-TheFourthDimension.mmp
  data/projects/covers/J.S.Bach-Preludium_and_Fugue_A-Minor.mmp
  data/projects/demos/basses-demo.mmp
  data/projects/demos/beat_collection.mmp
  data/projects/demos/demo1.mmp data/projects/demos/demo3.mmp
  data/projects/demos/demo5.mmp data/projects/demos/demo6.mmp
  data/projects/demos/loop_collection.mmp
  data/projects/demos/some_basslines.mmp
  data/projects/misc/1st.mmp data/projects/misc/time_machine.mmp
  data/projects/templates/AcousticDrumset.mpt
  data/projects/templates/ClubMix.mpt include/basic_filters.h
  include/interpolation.h include/oscillator.h
  plugins/vibed/nine_button_selector.cpp
  plugins/vibed/nine_button_selector.h plugins/vibed/vibed.cpp
  plugins/vibed/vibed.h src/audio/audio_alsa.cpp
  src/audio/audio_device.cpp src/audio/audio_file_wave.cpp
  src/core/main_window.cpp
  include/lmms_constants.h


git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@126 0778d3d1-df1d-0410-868b-ea421aaaa00d
This commit is contained in:
Danny McRae
2006-04-10 18:57:14 +00:00
parent 9034036c1f
commit cd1109be8b
42 changed files with 354 additions and 274 deletions

View File

@@ -38,6 +38,7 @@
#include "types.h"
#include "mixer.h"
#include "templates.h"
#include "lmms_constants.h"
//const int MOOG_VOLTAGE = 40000;
@@ -273,7 +274,7 @@ public:
0.6490 * kfc + 0.9988;
const float kacr = -3.9364 * ( kfc*kfc ) +
1.8409 * kfc + 0.9968;
m_p = MOOG_VOLTAGE * ( 1 - expf( -2.0 * M_PI *
m_p = MOOG_VOLTAGE * ( 1 - expf( F_2PI *
kfcr * kf ) );
m_r = 4 * _q * kacr;
break;
@@ -282,7 +283,7 @@ public:
default:
{
// other filters
const float omega = 2.0f * M_PI * _freq *
const float omega = F_2PI * _freq *
m_sampleRate;
const float tsin = sinf( omega );
const float tcos = cosf( omega );

View File

@@ -31,7 +31,7 @@
#endif
#include <math.h>
#include "lmms_constants.h"
inline float hermiteInterpolate( float x0, float x1, float x2, float x3,
float frac_pos )
@@ -79,7 +79,7 @@ inline float cubicInterpolate( float v0, float v1, float v2, float v3, float x )
inline float cosinusInterpolate( float v0, float v1, float x )
{
float f = cosf( x * ( M_PI*0.5f ) );
float f = cosf( x * ( F_PI_2 ) );
return( v0*f + v1*( 1.0f-f ) );
}

30
include/lmms_constants.h Normal file
View File

@@ -0,0 +1,30 @@
/*
* lmms_constants.h - defines system constants
*
* Copyright (c) 2006 Danny McRae <khjklujn/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This program 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
* General Public License for more details.
*
* You should have received a copy of the GNU General Public
* License along with this program (see COPYING); if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*
*/
#ifndef _LMMS_CONSTANTS_H
#define _LMMS_CONSTANTS_H
const float F_PI = 3.141593f;
const float F_2PI = 6.283185f;
const float F_PI_2 = 1.570796f;
#endif

View File

@@ -36,6 +36,7 @@
#include "mixer.h"
#include "interpolation.h"
#include "lmms_constants.h"
// fwd-decl because we need it for the typedef below...
@@ -138,7 +139,7 @@ public:
static inline sample_t sinSample( const float _sample )
{
return( sinf( _sample * 2.0f * M_PI ) );
return( sinf( _sample * F_2PI ) );
}
static inline sample_t triangleSample( const float _sample )