diff --git a/data/samples/CMakeLists.txt b/data/samples/CMakeLists.txt index 96c7cd0d8..bb8e15ef7 100644 --- a/data/samples/CMakeLists.txt +++ b/data/samples/CMakeLists.txt @@ -1,4 +1,4 @@ INCLUDE(InstallHelpers) -INSTALL_DATA_SUBDIRS("samples" "*.wav;*.ogg;*.ds") +INSTALL_DATA_SUBDIRS("samples" "*.wav;*.ogg;*.ds;*.flac") diff --git a/data/samples/waveforms/10saw.flac b/data/samples/waveforms/10saw.flac new file mode 100644 index 000000000..49f04d906 Binary files /dev/null and b/data/samples/waveforms/10saw.flac differ diff --git a/data/samples/waveforms/10sine.flac b/data/samples/waveforms/10sine.flac new file mode 100644 index 000000000..3cd8f2fed Binary files /dev/null and b/data/samples/waveforms/10sine.flac differ diff --git a/data/samples/waveforms/10sqr.flac b/data/samples/waveforms/10sqr.flac new file mode 100644 index 000000000..53aa21d5f Binary files /dev/null and b/data/samples/waveforms/10sqr.flac differ diff --git a/data/samples/waveforms/10tri.flac b/data/samples/waveforms/10tri.flac new file mode 100644 index 000000000..942d881cb Binary files /dev/null and b/data/samples/waveforms/10tri.flac differ diff --git a/data/samples/waveforms/analogsqr.flac b/data/samples/waveforms/analogsqr.flac new file mode 100644 index 000000000..01b984286 Binary files /dev/null and b/data/samples/waveforms/analogsqr.flac differ diff --git a/data/samples/waveforms/fmsaw1.flac b/data/samples/waveforms/fmsaw1.flac new file mode 100644 index 000000000..7aaf864e2 Binary files /dev/null and b/data/samples/waveforms/fmsaw1.flac differ diff --git a/data/samples/waveforms/fmsine.flac b/data/samples/waveforms/fmsine.flac new file mode 100644 index 000000000..2b4c23771 Binary files /dev/null and b/data/samples/waveforms/fmsine.flac differ diff --git a/data/samples/waveforms/fmsine2.flac b/data/samples/waveforms/fmsine2.flac new file mode 100644 index 000000000..26ad79d3c Binary files /dev/null and b/data/samples/waveforms/fmsine2.flac differ diff --git a/data/samples/waveforms/halfsine.flac b/data/samples/waveforms/halfsine.flac new file mode 100644 index 000000000..9b19025b0 Binary files /dev/null and b/data/samples/waveforms/halfsine.flac differ diff --git a/data/samples/waveforms/impulse.flac b/data/samples/waveforms/impulse.flac new file mode 100644 index 000000000..85a31488d Binary files /dev/null and b/data/samples/waveforms/impulse.flac differ diff --git a/data/samples/waveforms/lfo_trancegate_quarter.flac b/data/samples/waveforms/lfo_trancegate_quarter.flac new file mode 100644 index 000000000..5f4766010 Binary files /dev/null and b/data/samples/waveforms/lfo_trancegate_quarter.flac differ diff --git a/data/samples/waveforms/lfo_trancegate_sawdecay_quarter.flac b/data/samples/waveforms/lfo_trancegate_sawdecay_quarter.flac new file mode 100644 index 000000000..76a356870 Binary files /dev/null and b/data/samples/waveforms/lfo_trancegate_sawdecay_quarter.flac differ diff --git a/data/samples/waveforms/lfo_trancegate_sinedecay_quarter.flac b/data/samples/waveforms/lfo_trancegate_sinedecay_quarter.flac new file mode 100644 index 000000000..dbaae7748 Binary files /dev/null and b/data/samples/waveforms/lfo_trancegate_sinedecay_quarter.flac differ diff --git a/data/samples/waveforms/lfo_trancegate_triplet_half.flac b/data/samples/waveforms/lfo_trancegate_triplet_half.flac new file mode 100644 index 000000000..347d8ba0e Binary files /dev/null and b/data/samples/waveforms/lfo_trancegate_triplet_half.flac differ diff --git a/data/samples/waveforms/lfo_trancegate_triplet_half_2.flac b/data/samples/waveforms/lfo_trancegate_triplet_half_2.flac new file mode 100644 index 000000000..48f79063e Binary files /dev/null and b/data/samples/waveforms/lfo_trancegate_triplet_half_2.flac differ diff --git a/data/samples/waveforms/lfo_trancegate_triplet_quarter.flac b/data/samples/waveforms/lfo_trancegate_triplet_quarter.flac new file mode 100644 index 000000000..5d2ceb0de Binary files /dev/null and b/data/samples/waveforms/lfo_trancegate_triplet_quarter.flac differ diff --git a/data/samples/waveforms/lfo_trancegate_whole.flac b/data/samples/waveforms/lfo_trancegate_whole.flac new file mode 100644 index 000000000..e4850e91d Binary files /dev/null and b/data/samples/waveforms/lfo_trancegate_whole.flac differ diff --git a/data/samples/waveforms/lfo_trancegate_whole_2.flac b/data/samples/waveforms/lfo_trancegate_whole_2.flac new file mode 100644 index 000000000..f60c7e118 Binary files /dev/null and b/data/samples/waveforms/lfo_trancegate_whole_2.flac differ diff --git a/data/samples/waveforms/modsqr.flac b/data/samples/waveforms/modsqr.flac new file mode 100644 index 000000000..811e62c63 Binary files /dev/null and b/data/samples/waveforms/modsqr.flac differ diff --git a/data/samples/waveforms/saw1.flac b/data/samples/waveforms/saw1.flac new file mode 100644 index 000000000..9bae8d265 Binary files /dev/null and b/data/samples/waveforms/saw1.flac differ diff --git a/data/samples/waveforms/saw2.flac b/data/samples/waveforms/saw2.flac new file mode 100644 index 000000000..f29a9effa Binary files /dev/null and b/data/samples/waveforms/saw2.flac differ diff --git a/data/samples/waveforms/sinesaw.flac b/data/samples/waveforms/sinesaw.flac new file mode 100644 index 000000000..4dc6bb463 Binary files /dev/null and b/data/samples/waveforms/sinesaw.flac differ diff --git a/data/samples/waveforms/w2_addsyn.flac b/data/samples/waveforms/w2_addsyn.flac new file mode 100644 index 000000000..50ee71144 Binary files /dev/null and b/data/samples/waveforms/w2_addsyn.flac differ diff --git a/data/samples/waveforms/w2_angrysaw.flac b/data/samples/waveforms/w2_angrysaw.flac new file mode 100644 index 000000000..763b6d85e Binary files /dev/null and b/data/samples/waveforms/w2_angrysaw.flac differ diff --git a/data/samples/waveforms/w2_hexagon.flac b/data/samples/waveforms/w2_hexagon.flac new file mode 100644 index 000000000..998d63980 Binary files /dev/null and b/data/samples/waveforms/w2_hexagon.flac differ diff --git a/data/samples/waveforms/w2_invsine.flac b/data/samples/waveforms/w2_invsine.flac new file mode 100644 index 000000000..b5844f952 Binary files /dev/null and b/data/samples/waveforms/w2_invsine.flac differ diff --git a/data/samples/waveforms/w2_invsineabs.flac b/data/samples/waveforms/w2_invsineabs.flac new file mode 100644 index 000000000..70d09211f Binary files /dev/null and b/data/samples/waveforms/w2_invsineabs.flac differ diff --git a/data/samples/waveforms/w2_invsinehalf.flac b/data/samples/waveforms/w2_invsinehalf.flac new file mode 100644 index 000000000..dfed2fd36 Binary files /dev/null and b/data/samples/waveforms/w2_invsinehalf.flac differ diff --git a/data/samples/waveforms/w2_noisy.flac b/data/samples/waveforms/w2_noisy.flac new file mode 100644 index 000000000..30d49b894 Binary files /dev/null and b/data/samples/waveforms/w2_noisy.flac differ diff --git a/data/samples/waveforms/w2_rad.flac b/data/samples/waveforms/w2_rad.flac new file mode 100644 index 000000000..4971abb3d Binary files /dev/null and b/data/samples/waveforms/w2_rad.flac differ diff --git a/data/samples/waveforms/w2_sawsine.flac b/data/samples/waveforms/w2_sawsine.flac new file mode 100644 index 000000000..b267c3e0c Binary files /dev/null and b/data/samples/waveforms/w2_sawsine.flac differ diff --git a/data/samples/waveforms/w2_sharp.flac b/data/samples/waveforms/w2_sharp.flac new file mode 100644 index 000000000..647500088 Binary files /dev/null and b/data/samples/waveforms/w2_sharp.flac differ diff --git a/data/samples/waveforms/w2_w-wave.flac b/data/samples/waveforms/w2_w-wave.flac new file mode 100644 index 000000000..40db66f14 Binary files /dev/null and b/data/samples/waveforms/w2_w-wave.flac differ diff --git a/include/SampleBuffer.h b/include/SampleBuffer.h index e42d3690e..54c444fc5 100644 --- a/include/SampleBuffer.h +++ b/include/SampleBuffer.h @@ -174,7 +174,8 @@ public: QString openAudioFile() const; QString openAndSetAudioFile(); - + QString openAndSetWaveformFile(); + QString & toBase64( QString & _dst ) const; diff --git a/plugins/sfxr/artwork.png b/plugins/sfxr/artwork.png index bedfc4ec3..0f6820d0c 100644 Binary files a/plugins/sfxr/artwork.png and b/plugins/sfxr/artwork.png differ diff --git a/plugins/sfxr/logo.png b/plugins/sfxr/logo.png index a39e4e865..c686f9fbd 100644 Binary files a/plugins/sfxr/logo.png and b/plugins/sfxr/logo.png differ diff --git a/plugins/sfxr/sfxr.h b/plugins/sfxr/sfxr.h index aae42c051..a549389cf 100644 --- a/plugins/sfxr/sfxr.h +++ b/plugins/sfxr/sfxr.h @@ -42,11 +42,11 @@ enum SfxrWaves }; const int WAVEFORM_BASE_X = 20; -const int WAVEFORM_BASE_Y = 14; +const int WAVEFORM_BASE_Y = 15; const int WAVEFORM_BUTTON_WIDTH = 16; const int GENERATOR_BASE_X = 110; -const int GENERATOR_BASE_Y = 24; +const int GENERATOR_BASE_Y = 25; const int GENERATOR_BUTTON_WIDTH = 16; const int RAND_BUTTON_X = 160; diff --git a/plugins/triple_oscillator/TripleOscillator.cpp b/plugins/triple_oscillator/TripleOscillator.cpp index d675b7b83..0b91fba22 100644 --- a/plugins/triple_oscillator/TripleOscillator.cpp +++ b/plugins/triple_oscillator/TripleOscillator.cpp @@ -138,7 +138,7 @@ OscillatorObject::~OscillatorObject() void OscillatorObject::oscUserDefWaveDblClick() { - QString af = m_sampleBuffer->openAndSetAudioFile(); + QString af = m_sampleBuffer->openAndSetWaveformFile(); if( af != "" ) { // TODO: diff --git a/src/core/LfoController.cpp b/src/core/LfoController.cpp index 2ba7d4e18..30f2b7322 100644 --- a/src/core/LfoController.cpp +++ b/src/core/LfoController.cpp @@ -198,6 +198,7 @@ void LfoController::saveSettings( QDomDocument & _doc, QDomElement & _this ) m_phaseModel.saveSettings( _doc, _this, "phase" ); m_waveModel.saveSettings( _doc, _this, "wave" ); m_multiplierModel.saveSettings( _doc, _this, "multiplier" ); + _this.setAttribute( "userwavefile" , m_userDefSampleBuffer->audioFile() ); } @@ -212,6 +213,7 @@ void LfoController::loadSettings( const QDomElement & _this ) m_phaseModel.loadSettings( _this, "phase" ); m_waveModel.loadSettings( _this, "wave" ); m_multiplierModel.loadSettings( _this, "multiplier" ); + m_userDefSampleBuffer->setAudioFile( _this.attribute("userwavefile" ) ); updateSampleFunction(); } diff --git a/src/core/SampleBuffer.cpp b/src/core/SampleBuffer.cpp index 674a0a101..238d282fd 100644 --- a/src/core/SampleBuffer.cpp +++ b/src/core/SampleBuffer.cpp @@ -908,6 +908,27 @@ QString SampleBuffer::openAndSetAudioFile() } +QString SampleBuffer::openAndSetWaveformFile() +{ + if( m_audioFile.isEmpty() ) + { + m_audioFile = configManager::inst()->factorySamplesDir() + "waveforms/10saw.flac"; + } + + QString fileName = this->openAudioFile(); + + if(!fileName.isEmpty()) + { + this->setAudioFile( fileName ); + } + else + { + m_audioFile = ""; + } + + return fileName; +} + #undef LMMS_HAVE_FLAC_STREAM_ENCODER_H /* not yet... */ diff --git a/src/gui/LfoControllerDialog.cpp b/src/gui/LfoControllerDialog.cpp index 3aa9f7c0a..03b0b2d01 100644 --- a/src/gui/LfoControllerDialog.cpp +++ b/src/gui/LfoControllerDialog.cpp @@ -252,7 +252,7 @@ void LfoControllerDialog::askUserDefWave() { SampleBuffer * sampleBuffer = dynamic_cast(this->model())-> m_userDefSampleBuffer; - QString fileName = sampleBuffer->openAndSetAudioFile(); + QString fileName = sampleBuffer->openAndSetWaveformFile(); if( fileName.isEmpty() == false ) { // TODO: diff --git a/src/gui/widgets/graph.cpp b/src/gui/widgets/graph.cpp index 9a4347647..dc0246eb0 100644 --- a/src/gui/widgets/graph.cpp +++ b/src/gui/widgets/graph.cpp @@ -485,7 +485,7 @@ void graphModel::setWaveToNoise() QString graphModel::setWaveToUser() { SampleBuffer * sampleBuffer = new SampleBuffer; - QString fileName = sampleBuffer->openAndSetAudioFile(); + QString fileName = sampleBuffer->openAndSetWaveformFile(); if( fileName.isEmpty() == false ) { for( int i = 0; i < length(); i++ )