mirror of
https://github.com/projectM-visualizer/projectm.git
synced 2026-02-05 10:45:36 +00:00
PJS: hard cuts/soft cuts
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/dev-1.0@307 6778bc44-b910-0410-a7a0-be141de4315d
This commit is contained in:
@ -102,15 +102,7 @@ DLLEXPORT void projectM::renderFrame()
|
||||
DWRITE ( "frame: %d\ttime: %f\tprogress: %f\tavgtime: %d\tang: %f\trot: %f\n",
|
||||
this->presetInputs.frame, presetInputs.time, this->presetInputs.progress, this->avgtime, this->presetInputs.ang_per_pixel,
|
||||
this->presetOutputs.rot );
|
||||
if ( presetInputs.progress>1.0 )
|
||||
{
|
||||
presetInputs.progress=0.0;
|
||||
presetInputs.frame = 0;
|
||||
if (m_activePreset)
|
||||
delete(m_activePreset);
|
||||
m_activePreset = m_presetChooser->weightedRandom<PresetChooser::UniformRandomFunctor>
|
||||
(presetInputs, presetOutputs);
|
||||
}
|
||||
|
||||
|
||||
// printf("start:%d at:%d min:%d stop:%d on:%d %d\n",startframe, frame frame-startframe,avgtime, noSwitch,progress);
|
||||
presetInputs.ResetMesh();
|
||||
@ -136,21 +128,36 @@ DLLEXPORT void projectM::renderFrame()
|
||||
m_activePreset->evaluateFrame();
|
||||
if ( renderer->noSwitch==0 )
|
||||
{
|
||||
nohard--;
|
||||
if ( ( beatDetect->bass-beatDetect->bass_old>beatDetect->beat_sensitivity ||
|
||||
avgtime ) && nohard<0 )
|
||||
{
|
||||
// printf("%f %d %d\n", beatDetect->bass-beatDetect->bass_old,this->frame,this->avgtime);
|
||||
// switchPreset(RANDOM_NEXT, HARD_CUT);
|
||||
nohard=presetInputs.fps*5;
|
||||
}
|
||||
if ( presetInputs.progress>1.0 )
|
||||
{
|
||||
presetInputs.progress=0.0;
|
||||
presetInputs.frame = 0;
|
||||
if (m_activePreset)
|
||||
delete(m_activePreset);
|
||||
m_activePreset = m_presetChooser->weightedRandom<PresetChooser::UniformRandomFunctor>
|
||||
(presetInputs, presetOutputs);
|
||||
nohard=presetInputs.fps*5;
|
||||
printf("SOFT CUT");
|
||||
}
|
||||
else if ( ( beatDetect->bass-beatDetect->bass_old>beatDetect->beat_sensitivity ) && nohard<0 )
|
||||
{
|
||||
// printf("%f %d %d\n", beatDetect->bass-beatDetect->bass_old,this->frame,this->avgtime);
|
||||
printf("HARD CUT");
|
||||
if (m_activePreset)
|
||||
delete(m_activePreset);
|
||||
m_activePreset = m_presetChooser->weightedRandom<PresetChooser::UniformRandomFunctor>
|
||||
(presetInputs, presetOutputs);
|
||||
nohard=presetInputs.fps*5;
|
||||
}
|
||||
else nohard--;
|
||||
}
|
||||
|
||||
count++;
|
||||
// renderer->presetName = m_activePreset->absoluteFilePath();
|
||||
|
||||
// renderer->presetName = m_activePreset->absoluteFilePath();
|
||||
m_activePreset->evaluateFrame();
|
||||
renderer->RenderFrame ( &presetOutputs, &presetInputs );
|
||||
|
||||
count++;
|
||||
#ifndef WIN32
|
||||
/** Frame-rate limiter */
|
||||
/** Compute once per preset */
|
||||
|
||||
Reference in New Issue
Block a user