diff options
author | Max Horn | 2003-09-07 20:23:38 +0000 |
---|---|---|
committer | Max Horn | 2003-09-07 20:23:38 +0000 |
commit | ea461dfc3caacd476c91a6e9d83e7464d549768a (patch) | |
tree | 900225ed5eb570fdf7b2827924c928a9e62f1063 /sound | |
parent | a7676e07c33a15f0ccd40ae4a64fc929a3903913 (diff) | |
download | scummvm-rg350-ea461dfc3caacd476c91a6e9d83e7464d549768a.tar.gz scummvm-rg350-ea461dfc3caacd476c91a6e9d83e7464d549768a.tar.bz2 scummvm-rg350-ea461dfc3caacd476c91a6e9d83e7464d549768a.zip |
new header file for VOC specific stuff
svn-id: r10072
Diffstat (limited to 'sound')
-rw-r--r-- | sound/mixer.h | 8 | ||||
-rw-r--r-- | sound/voc.h | 64 |
2 files changed, 67 insertions, 5 deletions
diff --git a/sound/mixer.h b/sound/mixer.h index d688513d01..0e7e89bddf 100644 --- a/sound/mixer.h +++ b/sound/mixer.h @@ -24,17 +24,15 @@ #define SOUND_MIXER_H #include "stdafx.h" -#if defined(HAVE_CONFIG_H) -#include "config.h" -#endif +#include "common/scummsys.h" +#include "common/system.h" + #ifdef USE_MAD #include <mad.h> #endif #ifdef USE_VORBIS #include <vorbis/vorbisfile.h> #endif -#include "common/scummsys.h" -#include "common/system.h" typedef uint32 PlayingSoundHandle; diff --git a/sound/voc.h b/sound/voc.h new file mode 100644 index 0000000000..aa45880004 --- /dev/null +++ b/sound/voc.h @@ -0,0 +1,64 @@ +/* ScummVM - Scumm Interpreter + * Copyright (C) 2001 Ludvig Strigeus + * Copyright (C) 2001-2003 The ScummVM project + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * $Header$ + * + */ + +#ifndef SOUND_VOC_H +#define SOUND_VOC_H + +#include "stdafx.h" +#include "common/scummsys.h" + +#if !defined(__GNUC__) +#pragma START_PACK_STRUCTS +#endif + +struct VocHeader { + uint8 desc[20]; + uint16 datablock_offset; + uint16 version; + uint16 id; +} GCC_PACK; + +struct VocBlockHeader { + uint8 blocktype; + uint8 size[3]; + uint8 sr; + uint8 pack; +} GCC_PACK; + +#if !defined(__GNUC__) +#pragma END_PACK_STRUCTS +#endif + + +static inline int getSampleRateFromVOCRate(int vocSR) { + if (vocSR == 0xa6) { + return 11025; + } else if (vocSR == 0xd2) { + return 22050; + } else { + int sr = 1000000L / (256L - vocSR); + warning("inexact sample rate used: %i", sr); + return sr; + } +} + +#endif |