comparison data/fileio/OggVorbisFileReader.h @ 265:e08f486e8d8c

* Enable threaded decoding for Ogg and MP3 files. Needs some work on reducing updates to the overview widget
author Chris Cannam
date Wed, 06 Jun 2007 16:24:55 +0000
parents 71dfc6ab3b54
children 822bd7fd526c
comparison
equal deleted inserted replaced
264:260032c26c4f 265:e08f486e8d8c
43 43
44 virtual QString getError() const { return m_error; } 44 virtual QString getError() const { return m_error; }
45 45
46 static void getSupportedExtensions(std::set<QString> &extensions); 46 static void getSupportedExtensions(std::set<QString> &extensions);
47 47
48 virtual int getDecodeCompletion() const { return m_completion; }
49
48 virtual bool isUpdating() const { 50 virtual bool isUpdating() const {
49 return m_decodeThread && m_decodeThread->isRunning(); 51 return m_decodeThread && m_decodeThread->isRunning();
50 } 52 }
51 53
52 protected: 54 protected:
57 FishSound *m_fishSound; 59 FishSound *m_fishSound;
58 QProgressDialog *m_progress; 60 QProgressDialog *m_progress;
59 size_t m_fileSize; 61 size_t m_fileSize;
60 size_t m_bytesRead; 62 size_t m_bytesRead;
61 bool m_cancelled; 63 bool m_cancelled;
64 int m_completion;
62 65
63 static int readPacket(OGGZ *, ogg_packet *, long, void *); 66 static int readPacket(OGGZ *, ogg_packet *, long, void *);
64 static int acceptFrames(FishSound *, float **, long, void *); 67 static int acceptFrames(FishSound *, float **, long, void *);
65 68
66 class DecodeThread : public Thread 69 class DecodeThread : public Thread