Normalize volume 100% to MIDI velocity 63

Furthermore moved midiVelocity() to Note and removed global volumeToMidi()
helper method.

Closes #280.
This commit is contained in:
Tobias Doerffel
2014-03-08 12:13:42 +01:00
parent 0b0d905214
commit 0ca3901ab8
5 changed files with 9 additions and 14 deletions

View File

@@ -28,6 +28,7 @@
#include <cstdlib>
#include "Midi.h"
#include "panning_constants.h"
#include "volume.h"
class MidiEvent
{
@@ -141,7 +142,7 @@ public:
volume_t volume() const
{
return (volume_t)( velocity() * 100 / MidiMaxVelocity );
return (volume_t)( velocity() * MaxVolume / MidiMaxVelocity );
}
const void* sourcePort() const

View File

@@ -68,11 +68,6 @@ public:
virtual void setVolume( volume_t volume );
virtual void setPanning( panning_t panning );
int midiVelocity() const
{
return volumeToMidi( getVolume() );
}
int midiKey() const;
int midiChannel() const
{

View File

@@ -176,6 +176,11 @@ public:
return m_volume;
}
int midiVelocity() const
{
return qMin( MidiMaxVelocity, getVolume() * MidiMaxVelocity / MaxVolume );
}
inline panning_t getPanning() const
{
return m_panning;

View File

@@ -40,10 +40,4 @@ typedef struct
float vol[2];
} stereoVolumeVector;
inline int volumeToMidi( volume_t vol )
{
return qMin( MidiMaxVelocity, vol * MidiMaxVelocity / DefaultVolume );
}
#endif