Mixxx

/home/maxime/Projets/Mixxx/1.10/mixxx/src/soundsourceoggvorbis.h

Go to the documentation of this file.
00001 /***************************************************************************
00002                           soundsourceoggvorbis.h  -  ogg vorbis decoder
00003                              -------------------
00004     copyright            : (C) 2003 by Svein Magne Bang
00005     email                :
00006  ***************************************************************************/
00007 
00008 /***************************************************************************
00009  *                                                                         *
00010  *   This program is free software; you can redistribute it and/or modify  *
00011  *   it under the terms of the GNU General Public License as published by  *
00012  *   the Free Software Foundation; either version 2 of the License, or     *
00013  *   (at your option) any later version.                                   *
00014  *                                                                         *
00015  ***************************************************************************/
00016 
00017 #ifndef SOUNDSOURCEOGGVORBIS_H
00018 #define SOUNDSOURCEOGGVORBIS_H
00019 
00020 #include <qstring.h>
00021 #include "soundsource.h"
00022 #include <vorbis/codec.h>
00023 #include <vorbis/vorbisfile.h>
00024 
00025 class SoundSourceOggVorbis : public Mixxx::SoundSource {
00026  public:
00027   SoundSourceOggVorbis(QString qFilename);
00028   ~SoundSourceOggVorbis();
00029   int open();
00030   long seek(long);
00031   unsigned read(unsigned long size, const SAMPLE*);
00032   inline long unsigned length();
00033   int parseHeader();
00034   static QList<QString> supportedFileExtensions();
00035  private:
00036   int channels;
00037   unsigned long filelength;
00038   OggVorbis_File vf;
00039   int current_section;
00040 };
00041 
00042 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines