Marsyas  0.6.0-alpha
/usr/src/RPM/BUILD/marsyas-0.6.0/src/marsyas/TranscriberExtract.h
Go to the documentation of this file.
00001 #ifndef MARSYAS_TRANSCRIBERINFO_H
00002 #define MARSYAS_TRANSCRIBERINFO_H
00003 
00004 #include <marsyas/system/MarSystemManager.h>
00005 //#include "Easymar.h"
00006 
00007 namespace Marsyas
00008 {
00016 class TranscriberExtract
00017 {
00018 
00019 public:
00020   TranscriberExtract();
00021   ~TranscriberExtract();
00022   mrs_real addFileSource(MarSystem* net,
00023                          const std::string infile);
00024 
00025   realvec getPitchesFromAudio(const std::string audioFilename);
00026   realvec getAmpsFromAudio(const std::string audioFilename);
00027   MarSystem* makePitchNet(const mrs_real srate,
00028                           const mrs_real lowFreq = 100.0,
00029                           MarSystem* rvSink = NULL);
00030   realvec getPitchesFromRealvecSink(MarSystem* rvSink,
00031                                     const mrs_real srate);
00032   MarSystem* makeAmplitudeNet(MarSystem* rvSink = NULL);
00033   realvec getAmpsFromRealvecSink(MarSystem* rvSink);
00034 
00035   void getAllFromAudio(const std::string audioFilename, realvec&
00036                        pitchList, realvec& ampList, realvec&
00037                        boundaries);
00038   void toMidi(realvec& pitchList);
00039   mrs_real getNormalizingGain(const std::string audioFilename);
00040 
00041 private:
00042   MarSystemManager mng;
00043 };
00044 }
00045 #endif
00046