00001
00002
00003 #ifndef FILTERAUDIOFILE_H
00004 #define FILTERAUDIOFILE_H
00005
00006 #include <qstring.h>
00007 #include <qstringlist.h>
00008
00009 #include <audiofile.h>
00010
00011 class FilterAUDIOFILE
00012 {
00013 public:
00014 FilterAUDIOFILE(QString filename=0);
00015 bool fileOK() { return fileok; }
00016 QString description() { return QString("TODO"); }
00017 int frameCount() { return (int) afGetFrameCount(file, AF_DEFAULT_TRACK); }
00018 int channelCount() { return afGetVirtualChannels(file, AF_DEFAULT_TRACK); }
00019 QString getName() { return QString((char *)afQueryPointer(AF_QUERYTYPE_FILEFMT,AF_QUERY_NAME,format,0,0)); }
00020 QString getDesc() { return QString((char *)afQueryPointer(AF_QUERYTYPE_FILEFMT,AF_QUERY_DESC,format,0,0)); }
00021 QString sampleFormat();
00022 QString getFormat(int f);
00023 int sampleWidth();
00024 double sampleRate() { return afGetRate(file, AF_DEFAULT_TRACK); }
00025 double frameSize() { return (double) afGetVirtualFrameSize(file, AF_DEFAULT_TRACK, 1); }
00026 unsigned int virtualFrameSize() { return (unsigned int)afGetVirtualFrameSize(file,AF_DEFAULT_TRACK, 1);}
00027 double *getData();
00028
00029 private:
00030 QString filename;
00031 bool fileok;
00032 AFfilehandle file;
00033 int format;
00034 };
00035
00036 #endif //FILTERAUDIOFILE_H