From dce6a26eb3cde4dc2ffa67b48285a3ce6e37ef1d Mon Sep 17 00:00:00 2001 From: Vesa Date: Tue, 29 Apr 2014 20:13:05 +0300 Subject: [PATCH] Organic: update artwork, add harmonic knobs to control harmonic of each oscillator --- data/themes/default/style.css | 19 +++-- plugins/organic/artwork.png | Bin 44684 -> 51895 bytes plugins/organic/logo.png | Bin 2776 -> 3472 bytes plugins/organic/organic.cpp | 108 +++++++++++++++++++++----- plugins/organic/organic.h | 66 +++++++++++++--- plugins/organic/randomise.png | Bin 2342 -> 2086 bytes plugins/organic/randomise_pressed.png | Bin 2584 -> 2709 bytes 7 files changed, 153 insertions(+), 40 deletions(-) diff --git a/data/themes/default/style.css b/data/themes/default/style.css index a7dc512e9..b9c3e94b1 100644 --- a/data/themes/default/style.css +++ b/data/themes/default/style.css @@ -545,24 +545,29 @@ AudioFileProcessorView knob { } organicInstrumentView knob { - color: rgb(205, 16, 216); - qproperty-outerColor: rgb(23, 9, 24); - /*qproperty-outerColor: rgb(64, 21, 67);*/ + color: rgb(124, 207, 98); + qproperty-outerColor: rgb(13, 42, 4); qproperty-innerRadius: 2; - qproperty-outerRadius: 8.7; + qproperty-outerRadius: 7.5; qproperty-centerPointX: 10.5; qproperty-centerPointY: 10.5; - qproperty-lineWidth: 2; + qproperty-lineWidth: 1.5; } +organicInstrumentView knob#harmKnob { + color: rgb(205, 98, 216); + qproperty-outerColor: rgb(18, 4, 18); +} organicInstrumentView knob#fx1Knob, organicInstrumentView knob#volKnob { + color: rgb(157, 157, 157); + qproperty-outerColor: rgb(37, 37, 37); qproperty-innerRadius: 4; - qproperty-outerRadius: 11.2; + qproperty-outerRadius: 10.0; qproperty-centerPointX: 18.5; qproperty-centerPointY: 13.8; - qproperty-lineWidth: 3; + qproperty-lineWidth: 2; } sf2InstrumentView knob { diff --git a/plugins/organic/artwork.png b/plugins/organic/artwork.png index 07c6df140e92f42cf604079cc202bc6cdcf66b92..472e9c2d707833d66f2fae81ed3f6f4b8715ca28 100644 GIT binary patch literal 51895 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 yxgVTR96dx_DkUE^-- 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 e^Q{MKWBm`W?;t>ssXOEV0000m_oscModel, SIGNAL( dataChanged() ), m_osc[i], SLOT ( oscButtonChanged() ) ); + connect( &m_osc[i]->m_harmModel, SIGNAL( dataChanged() ), + m_osc[i], SLOT( updateDetuning() ) ); connect( &m_osc[i]->m_volModel, SIGNAL( dataChanged() ), m_osc[i], SLOT( updateVolume() ) ); connect( &m_osc[i]->m_panModel, SIGNAL( dataChanged() ), @@ -101,14 +105,37 @@ organicInstrument::organicInstrument( InstrumentTrack * _instrument_track ) : } - m_osc[0]->m_harmonic = log2f( 0.5f ); // one octave below +/* m_osc[0]->m_harmonic = log2f( 0.5f ); // one octave below m_osc[1]->m_harmonic = log2f( 0.75f ); // a fifth below m_osc[2]->m_harmonic = log2f( 1.0f ); // base freq m_osc[3]->m_harmonic = log2f( 2.0f ); // first overtone m_osc[4]->m_harmonic = log2f( 3.0f ); // second overtone m_osc[5]->m_harmonic = log2f( 4.0f ); // . m_osc[6]->m_harmonic = log2f( 5.0f ); // . - m_osc[7]->m_harmonic = log2f( 6.0f ); // . + m_osc[7]->m_harmonic = log2f( 6.0f ); // .*/ + + if( s_harmonics == NULL ) + { + s_harmonics = new float[ NUM_HARMONICS ]; + s_harmonics[0] = log2f( 0.5f ); + s_harmonics[1] = log2f( 0.75f ); + s_harmonics[2] = log2f( 1.0f ); + s_harmonics[3] = log2f( 2.0f ); + s_harmonics[4] = log2f( 3.0f ); + s_harmonics[5] = log2f( 4.0f ); + s_harmonics[6] = log2f( 5.0f ); + s_harmonics[7] = log2f( 6.0f ); + s_harmonics[8] = log2f( 7.0f ); + s_harmonics[9] = log2f( 8.0f ); + s_harmonics[10] = log2f( 9.0f ); + s_harmonics[11] = log2f( 10.0f ); + s_harmonics[12] = log2f( 11.0f ); + s_harmonics[13] = log2f( 12.0f ); + s_harmonics[14] = log2f( 13.0f ); + s_harmonics[15] = log2f( 14.0f ); + s_harmonics[16] = log2f( 15.0f ); + s_harmonics[17] = log2f( 16.0f ); + } for (int i=0; i < m_numOscillators; i++) { m_osc[i]->updateVolume(); @@ -142,8 +169,8 @@ void organicInstrument::saveSettings( QDomDocument & _doc, QDomElement & _this ) QString is = QString::number( i ); m_osc[i]->m_volModel.saveSettings( _doc, _this, "vol" + is ); m_osc[i]->m_panModel.saveSettings( _doc, _this, "pan" + is ); - _this.setAttribute( "harmonic" + is, QString::number( - powf( 2.0f, m_osc[i]->m_harmonic ) ) ); + m_osc[i]->m_harmModel.saveSettings( _doc, _this, "newharmonic" + is ); + m_osc[i]->m_detuneModel.saveSettings( _doc, _this, "detune" + is ); m_osc[i]->m_oscModel.saveSettings( _doc, _this, "wavetype" @@ -166,6 +193,15 @@ void organicInstrument::loadSettings( const QDomElement & _this ) m_osc[i]->m_detuneModel.loadSettings( _this, "detune" + is ); m_osc[i]->m_panModel.loadSettings( _this, "pan" + is ); m_osc[i]->m_oscModel.loadSettings( _this, "wavetype" + is ); + + if( _this.hasAttribute( "newharmonic" + is ) ) + { + m_osc[i]->m_harmModel.loadSettings( _this, "newharmonic" + is ); + } + else + { + m_osc[i]->m_harmModel.setValue( static_cast( i ) ); + } } m_volModel.loadSettings( _this, "vol" ); @@ -429,26 +465,40 @@ organicInstrumentView::~organicInstrumentView() void organicInstrumentView::modelChanged() { organicInstrument * oi = castModel(); - const float y=91.3; - const float rowHeight = 26.52f; - const float x=53.4; - const float colWidth = 23.829f; // 54.4 77.2 220.2 + + const float y=91.0f; + const float rowHeight = 26.0f; + const float x=53.0f; + const float colWidth = 24.0f; m_numOscillators = oi->m_numOscillators; m_fx1Knob->setModel( &oi->m_fx1Model ); m_volKnob->setModel( &oi->m_volModel ); - // TODO: Delete existing oscKnobs if they exist + if( m_oscKnobs != NULL ) + { + delete[] m_oscKnobs; + } m_oscKnobs = new OscillatorKnobs[ m_numOscillators ]; // Create knobs, now that we know how many to make for( int i = 0; i < m_numOscillators; ++i ) { + // setup harmonic knob + knob * harmKnob = new organicKnob( this ); + harmKnob->move( x + i * colWidth, y - rowHeight ); + harmKnob->setObjectName( "harmKnob" ); + connect( &oi->m_osc[i]->m_harmModel, SIGNAL( dataChanged() ), + this, SLOT( updateKnobHint() ) ); + // setup waveform-knob knob * oscKnob = new organicKnob( this ); oscKnob->move( x + i * colWidth, y ); + connect( &oi->m_osc[i]->m_oscModel, SIGNAL( dataChanged() ), + this, SLOT( updateKnobHint() ) ); + oscKnob->setHintText( tr( "Osc %1 waveform:" ).arg( i + 1 ) + " ", QString() ); // setup volume-knob @@ -473,17 +523,31 @@ void organicInstrumentView::modelChanged() + " ", " " + tr( "cents" ) ); - m_oscKnobs[i] = OscillatorKnobs( volKnob, oscKnob, panKnob, detuneKnob ); + m_oscKnobs[i] = OscillatorKnobs( harmKnob, volKnob, oscKnob, panKnob, detuneKnob ); // Attach to models - m_oscKnobs[i].m_volKnob->setModel( - &oi->m_osc[i]->m_volModel ); - m_oscKnobs[i].m_oscKnob->setModel( - &oi->m_osc[i]->m_oscModel ); - m_oscKnobs[i].m_panKnob->setModel( - &oi->m_osc[i]->m_panModel ); - m_oscKnobs[i].m_detuneKnob->setModel( - &oi->m_osc[i]->m_detuneModel ); + m_oscKnobs[i].m_harmKnob->setModel( &oi->m_osc[i]->m_harmModel ); + m_oscKnobs[i].m_volKnob->setModel( &oi->m_osc[i]->m_volModel ); + m_oscKnobs[i].m_oscKnob->setModel( &oi->m_osc[i]->m_oscModel ); + m_oscKnobs[i].m_panKnob->setModel( &oi->m_osc[i]->m_panModel ); + m_oscKnobs[i].m_detuneKnob->setModel( &oi->m_osc[i]->m_detuneModel ); + } + updateKnobHint(); +} + + +void organicInstrumentView::updateKnobHint() +{ + organicInstrument * oi = castModel(); + for( int i = 0; i < m_numOscillators; ++i ) + { + const float harm = oi->m_osc[i]->m_harmModel.value(); + const float wave = oi->m_osc[i]->m_oscModel.value(); + + m_oscKnobs[i].m_harmKnob->setHintText( tr( "Osc %1 harmonic:" ) + " ", " (" + + HARMONIC_NAMES[ static_cast( harm ) ] + ")" ); + m_oscKnobs[i].m_oscKnob->setHintText( tr( "Osc %1 waveform:" ) + " ", " (" + + WAVEFORM_NAMES[ static_cast( wave ) ] + ")" ); } } @@ -495,6 +559,8 @@ OscillatorObject::OscillatorObject( Model * _parent, int _index ) : m_waveShape( Oscillator::SineWave, 0, Oscillator::NumWaveShapes-1, this ), m_oscModel( 0.0f, 0.0f, 5.0f, 1.0f, this, tr( "Osc %1 waveform" ).arg( _index + 1 ) ), + m_harmModel( static_cast( _index ), 0.0f, 17.0f, 1.0f, + this, tr( "Osc %1 harmonic" ).arg( _index + 1 ) ), m_volModel( 100.0f, 0.0f, 100.0f, 1.0f, this, tr( "Osc %1 volume" ).arg( _index + 1 ) ), m_panModel( DefaultPanning, PanningLeft, PanningRight, 1.0f, @@ -547,10 +613,10 @@ void OscillatorObject::updateVolume() void OscillatorObject::updateDetuning() { - m_detuningLeft = powf( 2.0f, m_harmonic + m_detuningLeft = powf( 2.0f, organicInstrument::s_harmonics[ static_cast( m_harmModel.value() ) ] + (float)m_detuneModel.value() / 100.0f ) / engine::mixer()->processingSampleRate(); - m_detuningRight = powf( 2.0f, m_harmonic + m_detuningRight = powf( 2.0f, organicInstrument::s_harmonics[ static_cast( m_harmModel.value() ) ] - (float)m_detuneModel.value() / 100.0f ) / engine::mixer()->processingSampleRate(); } diff --git a/plugins/organic/organic.h b/plugins/organic/organic.h index 926dce1f1..b4ee15c75 100644 --- a/plugins/organic/organic.h +++ b/plugins/organic/organic.h @@ -2,7 +2,7 @@ * organic.h - additive synthesizer for organ-like sounds * * Copyright (c) 2006-2008 Andreas Brandmaier - * + * * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net * * This program is free software; you can redistribute it and/or @@ -23,8 +23,10 @@ */ -#ifndef _ORGANIC_H -#define _ORGANIC_H +#ifndef ORGANIC_H +#define ORGANIC_H + +#include #include "Instrument.h" #include "InstrumentView.h" @@ -37,6 +39,36 @@ class knob; class NotePlayHandle; class pixmapButton; +const int NUM_HARMONICS = 18; +const QString HARMONIC_NAMES[NUM_HARMONICS] = { + "Octave below", + "Fifth below", + "Fundamental", + "2nd harmonic", + "3rd harmonic", + "4th harmonic", + "5th harmonic", + "6th harmonic", + "7th harmonic", + "8th harmonic", + "9th harmonic", + "10th harmonic", + "11th harmonic", + "12th harmonic", + "13th harmonic", + "14th harmonic", + "15th harmonic", + "16th harmonic" + }; + +const QString WAVEFORM_NAMES[6] = { + "Sine wave", + "Triangle wave", + "Saw wave", + "Square wave", + "Moog saw wave", + "Exponential wave" + }; class OscillatorObject : public Model { @@ -45,11 +77,11 @@ private: int m_numOscillators; IntModel m_waveShape; FloatModel m_oscModel; + FloatModel m_harmModel; FloatModel m_volModel; FloatModel m_panModel; FloatModel m_detuneModel; - float m_harmonic; float m_volumeLeft; float m_volumeRight; // normalized detuning -> x/sampleRate @@ -90,9 +122,10 @@ public: virtual void loadSettings( const QDomElement & _this ); virtual QString nodeName() const; - + int intRand( int min, int max ); + static float * s_harmonics; public slots: void randomiseSettings(); @@ -101,17 +134,17 @@ public slots: private: float inline waveshape(float in, float amount); - + // fast atan, fast rather than accurate inline float fastatan( float x ) { return (x / (1.0 + 0.28 * (x * x))); } - + int m_numOscillators; - + OscillatorObject ** m_osc; - + struct oscPtr { Oscillator * oscLeft; @@ -125,6 +158,8 @@ private: virtual PluginView * instantiateView( QWidget * _parent ); + float m_harmonics [18]; + private slots: void updateAllDetuning(); @@ -144,10 +179,13 @@ private: struct OscillatorKnobs { - OscillatorKnobs( knob * v, + OscillatorKnobs( + knob * h, + knob * v, knob * o, knob * p, knob * dt ) : + m_harmKnob( h ), m_volKnob( v ), m_oscKnob( o ), m_panKnob( p ), @@ -157,7 +195,8 @@ private: OscillatorKnobs() { } - + + knob * m_harmKnob; knob * m_volKnob; knob * m_oscKnob; knob * m_panKnob; @@ -171,8 +210,11 @@ private: pixmapButton * m_randBtn; int m_numOscillators; - + static QPixmap * s_artwork; + +protected slots: + void updateKnobHint(); }; diff --git a/plugins/organic/randomise.png b/plugins/organic/randomise.png index 85518ee528f27fe43b214cbe3ab2a6840f46b78c..155d2f1f443387045f2b1bf6ec880e304baaf224 100644 GIT binary patch delta 2073 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 BcF_O; diff --git a/plugins/organic/randomise_pressed.png b/plugins/organic/randomise_pressed.png index 00d866ddc0da4c79ffaa3f714702f3ebfa517790..20486f407eed86ffd2121738e62cb5edfa9039ed 100644 GIT binary patch delta 2701 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