1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-07-23 16:08:07 +02:00
audacity/src/effects/Fade.cpp
martynshaw99 4ce2643d5f Remove the
// Indentation settings for Vim and Emacs
etc. lines from all files, as Campbell's patch (except for other changes to Languages.cpp)
2013-09-24 00:14:37 +00:00

65 lines
1.4 KiB
C++

/**********************************************************************
Audacity: A Digital Audio Editor
Fade.cpp
Robert Leidle
*******************************************************************//**
\class EffectFadeIn
\brief An EffectSimpleMono
*//****************************************************************//**
\class EffectFadeOut
\brief An EffectSimpleMono
*//*******************************************************************/
#include "../Audacity.h"
#include "Fade.h"
#include "../WaveTrack.h"
#include <wx/generic/textdlgg.h>
#include <math.h>
bool EffectFadeIn::NewTrackSimpleMono()
{
mLen = (int)((mCurT1 - mCurT0) * mCurRate + 0.5);
mSample = 0;
return true;
}
bool EffectFadeIn::ProcessSimpleMono(float *buffer, sampleCount len)
{
for (sampleCount i = 0; i < len; i++)
buffer[i] = (float) (buffer[i] * (float) (mSample + i)
/ (float) (mLen));
mSample += len;
return true;
}
bool EffectFadeOut::NewTrackSimpleMono()
{
mLen = (int)((mCurT1 - mCurT0) * mCurRate + 0.5);
mSample = 0;
return true;
}
bool EffectFadeOut::ProcessSimpleMono(float *buffer, sampleCount len)
{
for (sampleCount i = 0; i < len; i++)
buffer[i] = (float) (buffer[i]
* (float) (mLen - 1 - (mSample + i))
/ (float) (mLen));
mSample += len;
return true;
}