dungeon_crawler
annotate prototype/src/audio/ovstream.h @ 55:4c427e28ca00
music playback bugfixing
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Wed, 19 Sep 2012 08:19:10 +0300 |
parents | 1ea56011c1ff |
children |
rev | line source |
---|---|
nuclear@53 | 1 #ifndef OVSTREAM_H_ |
nuclear@53 | 2 #define OVSTREAM_H_ |
nuclear@53 | 3 |
nuclear@53 | 4 #include <vorbis/vorbisfile.h> |
nuclear@53 | 5 #include "stream.h" |
nuclear@53 | 6 |
nuclear@53 | 7 class OggVorbisStream : public AudioStream { |
nuclear@53 | 8 private: |
nuclear@53 | 9 OggVorbis_File vf; |
nuclear@55 | 10 bool vfopen; |
nuclear@53 | 11 |
nuclear@55 | 12 std::mutex vflock; |
nuclear@55 | 13 |
nuclear@55 | 14 virtual bool more_samples(AudioStreamBuffer *buf); |
nuclear@53 | 15 |
nuclear@53 | 16 public: |
nuclear@53 | 17 OggVorbisStream(); |
nuclear@53 | 18 virtual ~OggVorbisStream(); |
nuclear@53 | 19 |
nuclear@53 | 20 bool open(const char *fname); |
nuclear@53 | 21 void close(); |
nuclear@55 | 22 |
nuclear@55 | 23 virtual void rewind(); |
nuclear@53 | 24 }; |
nuclear@53 | 25 |
nuclear@53 | 26 #endif // OVSTREAM_H_ |