diff options
author | Doug McLain <doug@nostar.net> | 2008-06-02 05:02:28 +0000 |
---|---|---|
committer | Doug McLain <doug@nostar.net> | 2008-06-02 05:02:28 +0000 |
commit | 9c0d7d72d70082a54f823cd44c0ccda5da64bb6f (patch) | |
tree | 96ec400b83b8c1c06852b1936f684b5fbcd47a79 /libs/ardour/caimportable.cc | |
parent | 2f3f697bb8e185eb43c2c50b4eefc2bcb937f269 (diff) |
remove empty sigc++2 directory
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/caimportable.cc')
-rw-r--r-- | libs/ardour/caimportable.cc | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/libs/ardour/caimportable.cc b/libs/ardour/caimportable.cc deleted file mode 100644 index 229bfa8809..0000000000 --- a/libs/ardour/caimportable.cc +++ /dev/null @@ -1,118 +0,0 @@ -#include <ardour/caimportable.h> -#include <sndfile.h> -#include <pbd/error.h> - -#include "i18n.h" - -using namespace ARDOUR; -using namespace std; -using namespace PBD; - -CAImportableSource::CAImportableSource (const string& path) -{ - try { - af.Open (path.c_str()); - - CAStreamBasicDescription file_format (af.GetFileDataFormat()); - CAStreamBasicDescription client_format (file_format); - - /* set canonial form (PCM, native float packed, 32 bit, with the correct number of channels - and interleaved (since we plan to deinterleave ourselves) - */ - - client_format.SetCanonical(client_format.NumberChannels(), true); - af.SetClientFormat (client_format); - - } catch (CAXException& cax) { - error << string_compose ("CAImportable: %1", cax.mOperation) << endmsg; - throw failed_constructor (); - } - -} - -CAImportableSource::~CAImportableSource () -{ -} - -nframes_t -CAImportableSource::read (Sample* buffer, nframes_t nframes) -{ - nframes_t nread = 0; - AudioBufferList abl; - nframes_t per_channel; - bool at_end = false; - - abl.mNumberBuffers = 1; - abl.mBuffers[0].mNumberChannels = channels(); - - per_channel = nframes / abl.mBuffers[0].mNumberChannels; - - while (nread < per_channel) { - - UInt32 new_cnt = per_channel - nread; - - abl.mBuffers[0].mDataByteSize = new_cnt * abl.mBuffers[0].mNumberChannels * sizeof(Sample); - abl.mBuffers[0].mData = buffer + nread; - - try { - af.Read (new_cnt, &abl); - } catch (CAXException& cax) { - error << string_compose("CAImportable: %1", cax.mOperation); - return -1; - } - - if (new_cnt == 0) { - /* EOF */ - at_end = true; - break; - } - - nread += new_cnt; - } - - if (!at_end && nread < per_channel) { - return 0; - } else { - return nread * abl.mBuffers[0].mNumberChannels; - } -} - -uint -CAImportableSource::channels () const -{ - return af.GetFileDataFormat().NumberChannels(); -} - -nframes_t -CAImportableSource::length () const -{ - return af.GetNumberFrames(); -} - -nframes_t -CAImportableSource::samplerate() const -{ - CAStreamBasicDescription client_asbd; - - try { - client_asbd = af.GetClientDataFormat (); - } catch (CAXException& cax) { - error << string_compose ("CAImportable: %1", cax.mOperation) << endmsg; - return 0.0; - } - - return client_asbd.mSampleRate; -} - -void -CAImportableSource::seek (nframes_t pos) -{ - try { - af.Seek (pos); - } catch (CAXException& cax) { - error << string_compose ("CAImportable: %1 to %2", cax.mOperation, pos) << endmsg; - } -} - - - |