summaryrefslogtreecommitdiff
path: root/src/audiooutputenginesndfile.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/audiooutputenginesndfile.cc')
-rw-r--r--src/audiooutputenginesndfile.cc84
1 files changed, 0 insertions, 84 deletions
diff --git a/src/audiooutputenginesndfile.cc b/src/audiooutputenginesndfile.cc
deleted file mode 100644
index f311180..0000000
--- a/src/audiooutputenginesndfile.cc
+++ /dev/null
@@ -1,84 +0,0 @@
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/***************************************************************************
- * audiooutputenginesndfile.cc
- *
- * Tue Sep 21 09:31:30 CEST 2010
- * Copyright 2010 Bent Bisballe Nyeng
- * deva@aasimon.org
- ****************************************************************************/
-
-/*
- * This file is part of DrumGizmo.
- *
- * DrumGizmo is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * DrumGizmo is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with DrumGizmo; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
-#include "audiooutputenginesndfile.h"
-
-#include "drumgizmo.h"
-
-AudioOutputEngineSndFile::AudioOutputEngineSndFile(std::string file)
-{
- filename = file;
-}
-
-AudioOutputEngineSndFile::~AudioOutputEngineSndFile()
-{
- if(fh) sf_close(fh);
-}
-
-bool AudioOutputEngineSndFile::init(Channels *channels)
-{
- this->channels = channels;
-
- sf_info.channels = channels->size();
- sf_info.format = SF_FORMAT_WAV | SF_FORMAT_FLOAT;
- sf_info.samplerate = 44100;
-
- fh = sf_open(filename.c_str(), SFM_WRITE, &sf_info);
- if(!fh) {
- printf("Load error...\n");
- return false;
- }
-
- channel_t c = 0;
- Channels::iterator i = channels->begin();
- while(i != channels->end()) {
- i->num = c;
- i++;
- c++;
- }
-
- return true;
-}
-
-void AudioOutputEngineSndFile::run(DrumGizmo *gizmo)
-{
- sample_t s[channels->size()];
-
- while(gizmo->isRunning()) {
-
- gizmo->pre(1);
- Channels::iterator i = channels->begin();
- while(i != channels->end()) {
- s[i->num] = 0.0;
- gizmo->getSamples(&(*i), &(s[i->num]), 1);
- i++;
- }
-
- gizmo->post(1);
-
- sf_writef_float(fh, s, 1);
- }
-}