xoreos  0.0.5
Classes | Enumerations | Functions | Variables
Sound Namespace Reference

Classes

class  AACDecoder
 
class  ADPCMStream
 
class  Apple_ADPCMStream
 
class  ASFGUID
 
class  ASFStream
 
class  AudioStream
 Generic audio input stream. More...
 
struct  ChannelHandle
 A handle to a sound channel. More...
 
class  CodebookLibrary
 
class  EmptyAudioStream
 An empty audio stream that plays nothing. More...
 
class  FMODSampleBank
 Class to hold audio resource data of an FMOD samplebank file. More...
 
class  Ima_ADPCMStream
 
class  Interleaver
 
class  LoopingAudioStream
 A looping audio stream. More...
 
class  MP3Stream
 
class  MS_ADPCMStream
 
class  MSIma_ADPCMStream
 
class  Packet
 
class  PacketizedADPCMStream
 
class  PacketizedAudioStream
 An AudioStream designed to work in terms of packets. More...
 
class  PacketizedPCMStream
 
class  PacketizedVorbisStream
 
class  PCMStream
 This is a stream, which allows for playing raw PCM data from a stream. More...
 
class  QueuingAudioStream
 
class  QueuingAudioStreamImpl
 
class  RewindableAudioStream
 A rewindable audio stream. More...
 
struct  Segment
 
class  SoundManager
 The sound manager. More...
 
class  StatelessPacketizedAudioStream
 A PacketizedAudioStream that works closer to a QueuingAudioStream. More...
 
class  VorbisStream
 
class  WMACodec
 
struct  WMACoefHuffmanParam
 Parameters for Huffman'd WMA coefficient codes. More...
 
class  WwiseSoundBank
 Class to hold audio resources and information of a Wwise soundbank file. More...
 
class  WwRIFFVorbisStream
 
class  XACTWaveBank
 An abstract XACT WaveBank interface. More...
 
class  XACTWaveBank_ASCII
 Class to hold audio resource data of an ASCII representation of an XWB wavebank file. More...
 
class  XACTWaveBank_Binary
 Class to hold audio resource data of an XWB wavebank file. More...
 
class  Xbox_ADPCMStream
 

Enumerations

enum  ADPCMTypes { kADPCMMSIma, kADPCMMS, kADPCMApple, kADPCMXbox }
 
enum  PCMFlags { FLAG_UNSIGNED = 1 << 0, FLAG_16BITS = 1 << 1, FLAG_LITTLE_ENDIAN = 1 << 2, FLAG_NATIVE_ENDIAN = 0 }
 Various flags which can be bit-ORed and then passed to makeRawMemoryStream and some other AudioStream factories to control their behavior. More...
 
enum  WaveCompressionType {
  kWavePCM = 0x0001, kWaveMSADPCM = 0x0002, kWaveMSIMAADPCM = 0x0011, kWaveMSIMAADPCM2 = 0x0069,
  kWaveWMAv2 = 0x0161
}
 
enum  SampleFlags { kSampleFlagMP3 = 0x00000200, kSampleFlagIMAADPCM = 0x00400000 }
 
enum  HeaderFlags { kHeaderFlagSimpleInfo = 0x00000002 }
 
enum  SoundType {
  kSoundTypeMusic = 0, kSoundTypeSFX = 1, kSoundTypeVoice = 2, kSoundTypeVideo = 3,
  kSoundTypeMAX = 4
}
 The type of a sound. More...
 
enum  SectionType {
  kSectionBankHeader = MKTAG('B', 'K', 'H', 'D'), kSectionDataIndex = MKTAG('D', 'I', 'D', 'X'), kSectionData = MKTAG('D', 'A', 'T', 'A'), kSectionObjects = MKTAG('H', 'I', 'R', 'C'),
  kSectionSoundTypeID = MKTAG('S', 'T', 'I', 'D')
}
 
enum  ObjectType {
  kObjectSettings = 1, kObjectSound = 2, kObjectEventAction = 3, kObjectEvent = 4,
  kObjectSequenceContainer = 5, kObjectSwitchContainer = 6, kObjectActorMixer = 7, kObjectAudioBus = 8,
  kObjectBlendContainer = 9, kObjectMusicSegment = 10, kObjectMusicTrack = 11, kObjectMusicSwitchContainer = 12,
  kObjectMusicPlaylistContainer = 13, kObjectAttenuation = 14, kObjectDialogueEvent = 15, kObjectMotionBus = 16,
  kObjectMotionFX = 17, kObjectEffect = 18, kObjectAuxiliaryBus = 20
}
 
enum  XWBFlags {
  kXWBFlagsStreaming = 0x00000001, kXWBFlagsEntryNames = 0x00010000, kXWBFlagsCompact = 0x00020000, kXWBFlagsSyncDisabled = 0x00040000,
  kXWBFlagsSeekTables = 0x00080000
}
 
enum  WaveFlags { kWaveFlagsReadAhead = 0x00000001, kWaveFlagsLoopCache = 0x00000002, kWaveFlagsRemoveLoopTail = 0x00000004, kWaveFlagsIgnoreLoop = 0x00000008 }
 
enum  Segments {
  kSegmentBankData = 0, kSegmentEntryMetaData, kSegmentEntryNames, kSegmentWaveData,
  kSegmentMAX
}
 

Functions

AudioStreammakeLoopingAudioStream (RewindableAudioStream *stream, size_t loops)
 Wrapper functionality to efficiently create a stream, which might be looped. More...
 
QueuingAudioStreammakeQueuingAudioStream (int rate, int channels)
 Factory function for an QueuingAudioStream. More...
 
PacketizedAudioStreammakeAACStream (Common::SeekableReadStream &extraData)
 Create a PacketizedAudioStream that decodes AAC sound. More...
 
RewindableAudioStreammakeADPCMStream (Common::SeekableReadStream *stream, bool disposeAfterUse, uint32 size, ADPCMTypes type, int rate, int channels, uint32 blockAlign=0)
 Takes an input stream containing ADPCM compressed sound data and creates an RewindableAudioStream from that. More...
 
PacketizedAudioStreammakePacketizedADPCMStream (ADPCMTypes type, int rate, int channels, uint32 blockAlign=0)
 Creates a PacketizedAudioStream that will automatically queue packets as individual AudioStreams like returned by makeADPCMStream. More...
 
RewindableAudioStreammakeASFStream (Common::SeekableReadStream *stream, bool disposeAfterUse=true)
 Try to load a ASF from the given seekable stream and create a RewindableAudioStream from that data. More...
 
static int scale_sample (mad_fixed_t sample)
 
RewindableAudioStreammakeMP3Stream (Common::SeekableReadStream *stream, bool disposeAfterUse)
 Create a new SeekableAudioStream from the MP3 data in the given stream. More...
 
RewindableAudioStreammakePCMStream (Common::SeekableReadStream *stream, int rate, byte flags, int channels, bool disposeAfterUse=true)
 Creates an audio stream, which plays from the given stream. More...
 
PacketizedAudioStreammakePacketizedPCMStream (int rate, byte flags, int channels)
 Creates a PacketizedAudioStream that will automatically queue packets as individual AudioStreams like returned by makePCMStream. More...
 
static int16 floatToInt16 (float src)
 
static void floatToInt16Interleave (int16 *dst, const float **src, uint32 length, uint8 channels)
 
static size_t read_stream_wrap (void *ptr, size_t size, size_t nmemb, void *dataSource)
 
static int seek_stream_wrap (void *dataSource, ogg_int64_t offset, int whence)
 
static int close_stream_wrap (void *dataSource)
 
static long tell_stream_wrap (void *dataSource)
 
RewindableAudioStreammakeVorbisStream (Common::SeekableReadStream *stream, bool disposeAfterUse)
 Create a new RewindableAudioStream from the Ogg Vorbis data in the given stream. More...
 
PacketizedAudioStreammakePacketizedVorbisStream (Common::SeekableReadStream &extraData)
 Create a new PacketizedAudioStream capable of decoding vorbis audio data. More...
 
PacketizedAudioStreammakePacketizedVorbisStream (Common::SeekableReadStream &packet1, Common::SeekableReadStream &packet2, Common::SeekableReadStream &packet3)
 Create a new PacketizedAudioStream capable of decoding vorbis audio data. More...
 
RewindableAudioStreammakeWAVStream (Common::SeekableReadStream *stream, bool disposeAfterUse)
 Try to load a WAVE from the given seekable stream and create an AudioStream from that data. More...
 
static void butterflyFloats (float *v1, float *v2, int len)
 
static void vectorFMulAdd (float *dst, const float *src0, const float *src1, const float *src2, int len)
 
static void vectorFMulReverse (float *dst, const float *src0, const float *src1, int len)
 
PacketizedAudioStreammakeWMAStream (int version, uint32 sampleRate, uint8 channels, uint32 bitRate, uint32 blockAlign, Common::SeekableReadStream &extraData)
 Create a PacketizedAudioStream that decodes WMA sound. More...
 
static size_t bookMapType1QuantVals (size_t entries, size_t dimensions)
 
static void putVorbisString (Common::BitStreamWriter &stream)
 
static void putVorbisHeader (Common::BitStreamWriter &stream, uint8 type)
 
Sound::RewindableAudioStreammakeWwRIFFVorbisStream (Common::SeekableReadStream *wwRIFFVorbis, bool disposeAfterUse)
 
AudioStreammakeInterleaver (int rate, const std::vector< AudioStream * > &streams, bool disposeAfterUse=true)
 Takes several input audio streams and interleaves the sample data to create an audio stream with x channels, where x is the summation of the channels in all input streams. More...
 
static Common::UString getFirst (Common::StreamTokenizer &tokenizer, Common::SeekableReadStream &stream)
 

Variables

static const int MSADPCMAdaptCoeff1 []
 
static const int MSADPCMAdaptCoeff2 []
 
static const int MSADPCMAdaptationTable []
 
static const uint16 imaStepTable [89]
 
static const int8 kXboxIndexTable [16]
 
static const ASFGUID s_asfHeader = ASFGUID(0x30, 0x26, 0xB2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xA6, 0xD9, 0x00, 0xAA, 0x00, 0x62, 0xCE, 0x6C)
 
static const ASFGUID s_asfFileHeader = ASFGUID(0xA1, 0xDC, 0xAB, 0x8C, 0x47, 0xA9, 0xCF, 0x11, 0x8E, 0xE4, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65)
 
static const ASFGUID s_asfHead1 = ASFGUID(0xb5, 0x03, 0xbf, 0x5f, 0x2E, 0xA9, 0xCF, 0x11, 0x8e, 0xe3, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65)
 
static const ASFGUID s_asfComment = ASFGUID(0x33, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c)
 
static const ASFGUID s_asfStreamHeader = ASFGUID(0x91, 0x07, 0xDC, 0xB7, 0xB7, 0xA9, 0xCF, 0x11, 0x8E, 0xE6, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65)
 
static const ASFGUID s_asfCodecComment = ASFGUID(0x40, 0x52, 0xD1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xA3, 0xA4, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6)
 
static const ASFGUID s_asfDataHeader = ASFGUID(0x36, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c)
 
static const ASFGUID s_asfAudioStream = ASFGUID(0x40, 0x9E, 0x69, 0xF8, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B)
 
static const ASFGUID s_asfExtendedHeader = ASFGUID(0x40, 0xA4, 0xD0, 0xD2, 0x07, 0xE3, 0xD2, 0x11, 0x97, 0xF0, 0x00, 0xA0, 0xC9, 0x5E, 0xA8, 0x50)
 
static const ASFGUID s_asfStreamBitRate = ASFGUID(0xce, 0x75, 0xf8, 0x7b, 0x8d, 0x46, 0xd1, 0x11, 0x8d, 0x82, 0x00, 0x60, 0x97, 0xc9, 0xa2, 0xb2)
 
static const mad_timer_t timer_zero = {0, 0}
 
static ov_callbacks g_stream_wrap
 
static const float powTab []
 
const uint16 wmaCriticalFreqs [25]
 
static const uint8 exponentBand22050 [3][25]
 
static const uint8 exponentBand32000 [3][25]
 
static const uint8 exponentBand44100 [3][25]
 
static const uint32 coef0Huffcodes [666]
 
static const uint8 coef0Huffbits [666]
 
static const uint32 coef1Huffcodes [555]
 
static const uint8 coef1Huffbits [555]
 
static const uint32 coef2Huffcodes [1336]
 
static const uint8 coef2Huffbits [1336]
 
static const uint32 coef3Huffcodes [1072]
 
static const uint8 coef3Huffbits [1072]
 
static const uint32 coef4Huffcodes [476]
 
static const uint8 coef4Huffbits [476]
 
static const uint32 coef5Huffcodes [435]
 
static const uint8 coef5Huffbits [435]
 
static const uint16 levels0 [60]
 
static const uint16 levels1 [40]
 
static const uint16 levels2 [340]
 
static const uint16 levels3 [180]
 
static const uint16 levels4 [70]
 
static const uint16 levels5 [40]
 
static const WMACoefHuffmanParam coefHuffmanParam [6]
 
const uint32 hgainHuffCodes [37]
 
const uint8 hgainHuffBits [37]
 
const uint32 scaleHuffCodes [121]
 
const uint8 scaleHuffBits [121]
 
static const int kLSPCoefCount = 10
 
const float lspCodebook [kLSPCoefCount][16]
 
static const byte kCodeBook []
 
static const size_t kChannelInvalid = SIZE_MAX
 

Enumeration Type Documentation

◆ ADPCMTypes

Enumerator
kADPCMMSIma 
kADPCMMS 
kADPCMApple 
kADPCMXbox 

Definition at line 65 of file adpcm.h.

◆ HeaderFlags

Enumerator
kHeaderFlagSimpleInfo 

Definition at line 137 of file fmodsamplebank.cpp.

◆ ObjectType

Enumerator
kObjectSettings 
kObjectSound 
kObjectEventAction 
kObjectEvent 
kObjectSequenceContainer 
kObjectSwitchContainer 
kObjectActorMixer 
kObjectAudioBus 
kObjectBlendContainer 
kObjectMusicSegment 
kObjectMusicTrack 
kObjectMusicSwitchContainer 
kObjectMusicPlaylistContainer 
kObjectAttenuation 
kObjectDialogueEvent 
kObjectMotionBus 
kObjectMotionFX 
kObjectEffect 
kObjectAuxiliaryBus 

Definition at line 212 of file wwisesoundbank.cpp.

◆ PCMFlags

Various flags which can be bit-ORed and then passed to makeRawMemoryStream and some other AudioStream factories to control their behavior.

Engine authors are advised not to rely on a certain value or order of these flags (in particular, do not store them verbatim in savestates).

Enumerator
FLAG_UNSIGNED 

unsigned samples (default: signed)

FLAG_16BITS 

sound is 16 bits wide (default: 8bit)

FLAG_LITTLE_ENDIAN 

samples are little endian (default: big endian)

FLAG_NATIVE_ENDIAN 

samples are in native endianness

Definition at line 67 of file pcm.h.

◆ SampleFlags

Enumerator
kSampleFlagMP3 
kSampleFlagIMAADPCM 

Definition at line 97 of file fmodsamplebank.cpp.

◆ SectionType

Enumerator
kSectionBankHeader 
kSectionDataIndex 
kSectionData 
kSectionObjects 
kSectionSoundTypeID 

Definition at line 204 of file wwisesoundbank.cpp.

◆ Segments

Enumerator
kSegmentBankData 
kSegmentEntryMetaData 
kSegmentEntryNames 
kSegmentWaveData 
kSegmentMAX 

Definition at line 128 of file xactwavebank_binary.cpp.

◆ SoundType

The type of a sound.

Enumerator
kSoundTypeMusic 

Music.

kSoundTypeSFX 

Sound effect.

kSoundTypeVoice 

Voice/Speech.

kSoundTypeVideo 

Video/Movie.

kSoundTypeMAX 

Definition at line 43 of file types.h.

◆ WaveCompressionType

Enumerator
kWavePCM 
kWaveMSADPCM 
kWaveMSIMAADPCM 
kWaveMSIMAADPCM2 
kWaveWMAv2 

Definition at line 30 of file wave_types.h.

◆ WaveFlags

Enumerator
kWaveFlagsReadAhead 

Performance hint: read ahead while streaming.

kWaveFlagsLoopCache 

Audio file is used by at least one looping sound.

kWaveFlagsRemoveLoopTail 

Ignore the data after the looping section.

kWaveFlagsIgnoreLoop 

Don't loop this sound.

Definition at line 76 of file xactwavebank_binary.cpp.

◆ XWBFlags

Enumerator
kXWBFlagsStreaming 
kXWBFlagsEntryNames 
kXWBFlagsCompact 
kXWBFlagsSyncDisabled 
kXWBFlagsSeekTables 

Definition at line 68 of file xactwavebank_binary.cpp.

Function Documentation

◆ bookMapType1QuantVals()

static size_t Sound::bookMapType1QuantVals ( size_t  entries,
size_t  dimensions 
)
static

Definition at line 101 of file wwriffvorbis.cpp.

References Common::intLog2().

Referenced by Sound::CodebookLibrary::copy(), and Sound::CodebookLibrary::rebuild().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ butterflyFloats()

static void Sound::butterflyFloats ( float *  v1,
float *  v2,
int  len 
)
inlinestatic

Definition at line 78 of file wma.cpp.

Referenced by Sound::WMACodec::decodeChannels().

Here is the caller graph for this function:

◆ close_stream_wrap()

static int Sound::close_stream_wrap ( void *  dataSource)
static

Definition at line 101 of file vorbis.cpp.

◆ floatToInt16()

static int16 Sound::floatToInt16 ( float  src)
inlinestatic

Definition at line 34 of file util.h.

Referenced by floatToInt16Interleave().

Here is the caller graph for this function:

◆ floatToInt16Interleave()

static void Sound::floatToInt16Interleave ( int16 dst,
const float **  src,
uint32  length,
uint8  channels 
)
inlinestatic

Definition at line 39 of file util.h.

References floatToInt16().

Referenced by Video::Bink::BinkAudioTrack::audioBlock(), and Sound::WMACodec::decodeFrame().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFirst()

static Common::UString Sound::getFirst ( Common::StreamTokenizer tokenizer,
Common::SeekableReadStream stream 
)
static

Definition at line 73 of file xactwavebank_ascii.cpp.

References Common::StreamTokenizer::getTokens(), and Common::StreamTokenizer::nextChunk().

Referenced by Sound::XACTWaveBank_ASCII::load().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeAACStream()

PacketizedAudioStream * Sound::makeAACStream ( Common::SeekableReadStream extraData)

Create a PacketizedAudioStream that decodes AAC sound.

Parameters
extraDataThe stream containing the extra data needed for initialization
Returns
A new PacketizedAudioStream, or NULL on error

Definition at line 140 of file aac.cpp.

Referenced by Video::QuickTimeDecoder::AudioSampleDesc::createAudioStream().

Here is the caller graph for this function:

◆ makeADPCMStream()

RewindableAudioStream * Sound::makeADPCMStream ( Common::SeekableReadStream stream,
bool  disposeAfterUse,
uint32  size,
ADPCMTypes  type,
int  rate,
int  channels,
uint32  blockAlign = 0 
)

Takes an input stream containing ADPCM compressed sound data and creates an RewindableAudioStream from that.

Parameters
streamThe SeekableReadStream from which to read the ADPCM data.
disposeAfterUseWhether to delete the stream after use.
sizeHow many bytes to read from the stream (0 = all).
typeThe compression type used.
rateThe sampling rate.
channelsThe number of channels.
blockAlignBlock alignment ???
Returns
A new RewindableAudioStream, or 0, if an error occurred.

Definition at line 640 of file adpcm.cpp.

References error(), kADPCMApple, kADPCMMS, kADPCMMSIma, and kADPCMXbox.

Referenced by Sound::FMODSampleBank::getSample(), Sound::XACTWaveBank_Binary::getWave(), Sound::PacketizedADPCMStream::makeStream(), and makeWAVStream().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeASFStream()

RewindableAudioStream * Sound::makeASFStream ( Common::SeekableReadStream stream,
bool  disposeAfterUse = true 
)

Try to load a ASF from the given seekable stream and create a RewindableAudioStream from that data.

Parameters
streamThe SeekableReadStream from which to read the ASF data.
disposeAfterUseWhether to delete the stream after use.
Returns
A new RewindableAudioStream, or 0, if an error occurred.

Definition at line 481 of file asf.cpp.

Referenced by Sound::XACTWaveBank_Binary::getWave(), and Sound::SoundManager::makeAudioStream().

Here is the caller graph for this function:

◆ makeInterleaver()

AudioStream * Sound::makeInterleaver ( int  rate,
const std::vector< AudioStream * > &  streams,
bool  disposeAfterUse = true 
)

Takes several input audio streams and interleaves the sample data to create an audio stream with x channels, where x is the summation of the channels in all input streams.

For example, if you put in 3 stereo audio streams, this will create an audio stream with 6 channels, all sample data properly interleaved.

Parameters
rateThe sampling rate.
streamsThe streams themselves.
disposeAfterUseWhether to delete the streams after use.
Returns
A new AudioStream.

Definition at line 137 of file interleaver.cpp.

Referenced by Video::XboxMediaVideo::XMVAudioTrack51::XMVAudioTrack51().

Here is the caller graph for this function:

◆ makeLoopingAudioStream()

AudioStream * Sound::makeLoopingAudioStream ( RewindableAudioStream stream,
size_t  loops 
)

Wrapper functionality to efficiently create a stream, which might be looped.

Note that this function does not return a LoopingAudioStream, because it does not create one when the loop count is "1". This allows to keep the runtime overhead down, when the code does not require any functionality only offered by LoopingAudioStream.

Parameters
streamStream to loop (will be automatically destroyed, when the looping is done)
loopsHow often to loop (0 = infinite)
Returns
A new AudioStream, which offers the desired functionality.

Definition at line 101 of file audiostream.cpp.

Referenced by Engines::Jade::Game::playMenuMusic(), and Sound::SoundManager::playSoundFile().

Here is the caller graph for this function:

◆ makeMP3Stream()

RewindableAudioStream * Sound::makeMP3Stream ( Common::SeekableReadStream stream,
bool  disposeAfterUse 
)

Create a new SeekableAudioStream from the MP3 data in the given stream.

Allows for seeking (which is why we require a SeekableReadStream).

Parameters
streamThe SeekableReadStream from which to read the MP3 data.
disposeAfterUseWhether to delete the stream after use.
Returns
A new SeekableAudioStream, or 0, if an error occurred.

Definition at line 353 of file mp3.cpp.

References Common::ScopedPtrBase< T, Deallocator >::release().

Referenced by Sound::FMODSampleBank::getSample(), and Sound::SoundManager::makeAudioStream().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makePacketizedADPCMStream()

PacketizedAudioStream * Sound::makePacketizedADPCMStream ( ADPCMTypes  type,
int  rate,
int  channels,
uint32  blockAlign = 0 
)

Creates a PacketizedAudioStream that will automatically queue packets as individual AudioStreams like returned by makeADPCMStream.

Due to the ADPCM types not necessarily supporting stateless streaming, OKI and DVI are not supported by this function and will return NULL.

Parameters
typethe compression type used
ratethe sampling rate
channelsthe number of channels
blockAlignblock alignment ???
Returns
The new PacketizedAudioStream or NULL, if the type isn't supported.

Definition at line 673 of file adpcm.cpp.

Referenced by Video::QuickTimeDecoder::AudioSampleDesc::createAudioStream(), and Video::XboxMediaVideo::XMVAudioTrack::createStream().

Here is the caller graph for this function:

◆ makePacketizedPCMStream()

PacketizedAudioStream * Sound::makePacketizedPCMStream ( int  rate,
byte  flags,
int  channels 
)

Creates a PacketizedAudioStream that will automatically queue packets as individual AudioStreams like returned by makePCMStream.

Parameters
rateRate of the sound data.
flagsAudio flags combination.
See also
PCMFlags
Returns
The new PacketizedAudioStream.

Definition at line 171 of file pcm.cpp.

Referenced by Video::QuickTimeDecoder::AudioSampleDesc::createAudioStream(), and Video::XboxMediaVideo::XMVAudioTrack::createStream().

Here is the caller graph for this function:

◆ makePacketizedVorbisStream() [1/2]

PacketizedAudioStream * Sound::makePacketizedVorbisStream ( Common::SeekableReadStream extraData)

Create a new PacketizedAudioStream capable of decoding vorbis audio data.

Parameters
extraDataThe vorbis header data, combined into one stream, as used in non-ogg containers.
Returns
a new PacketizedAudioStream, or NULL if an error occurred

Definition at line 524 of file vorbis.cpp.

References Common::ScopedPtrBase< T, Deallocator >::release().

Referenced by Sound::WwRIFFVorbisStream::rewind().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makePacketizedVorbisStream() [2/2]

PacketizedAudioStream * Sound::makePacketizedVorbisStream ( Common::SeekableReadStream packet1,
Common::SeekableReadStream packet2,
Common::SeekableReadStream packet3 
)

Create a new PacketizedAudioStream capable of decoding vorbis audio data.

Parameters
packet1The first vorbis header, as used in ogg
packet2The second vorbis header, as used in ogg
packet3The third vorbis header, as used in ogg
Returns
a new PacketizedAudioStream, or NULL if an error occurred

Definition at line 532 of file vorbis.cpp.

References Common::ScopedPtrBase< T, Deallocator >::release().

Here is the call graph for this function:

◆ makePCMStream()

RewindableAudioStream * Sound::makePCMStream ( Common::SeekableReadStream stream,
int  rate,
byte  flags,
int  channels,
bool  disposeAfterUse = true 
)

Creates an audio stream, which plays from the given stream.

Parameters
streamStream object to play from.
rateRate of the sound data.
flagsAudio flags combination.
channelsNumber of channels
See also
RawFlags
Parameters
disposeAfterUseWhether to delete the stream after use.
Returns
The new SeekableAudioStream (or 0 on failure).

Definition at line 140 of file pcm.cpp.

References FLAG_16BITS, FLAG_LITTLE_ENDIAN, FLAG_UNSIGNED, and MAKE_RAW_STREAM.

Referenced by Sound::AACDecoder::decodeFrame(), Sound::WMACodec::decodeFrame(), Sound::XACTWaveBank_Binary::getWave(), Sound::PacketizedPCMStream::makeStream(), and makeWAVStream().

Here is the caller graph for this function:

◆ makeQueuingAudioStream()

QueuingAudioStream * Sound::makeQueuingAudioStream ( int  rate,
int  channels 
)

Factory function for an QueuingAudioStream.

Definition at line 270 of file audiostream.cpp.

Referenced by Sound::AACDecoder::AACDecoder(), Sound::AACDecoder::decodeFrame(), and Sound::WMACodec::WMACodec().

Here is the caller graph for this function:

◆ makeVorbisStream()

RewindableAudioStream * Sound::makeVorbisStream ( Common::SeekableReadStream stream,
bool  disposeAfterUse 
)

Create a new RewindableAudioStream from the Ogg Vorbis data in the given stream.

Parameters
streamThe RewindableAudioStream from which to read the Ogg Vorbis data.
disposeAfterUseWhether to delete the stream after use.
Returns
A new RewindableAudioStream, or 0, if an error occurred.

Definition at line 516 of file vorbis.cpp.

References Common::ScopedPtrBase< T, Deallocator >::release().

Referenced by Sound::XACTWaveBank_ASCII::getWave(), and Sound::SoundManager::makeAudioStream().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeWAVStream()

RewindableAudioStream * Sound::makeWAVStream ( Common::SeekableReadStream stream,
bool  disposeAfterUse 
)

Try to load a WAVE from the given seekable stream and create an AudioStream from that data.

Currently this function supports uncompressed raw PCM data, MS IMA ADPCM and MS ADPCM (uses makeADPCMStream internally).

Parameters
streamThe SeekableReadStream from which to read the WAVE data.
disposeAfterUseWhether to delete the stream after use.
Returns
A new RewindableAudioStream, or 0, if an error occurred.

Definition at line 38 of file wave.cpp.

References Common::debugTag(), Common::ReadStream::eos(), FLAG_16BITS, FLAG_LITTLE_ENDIAN, FLAG_UNSIGNED, kADPCMMS, kADPCMMSIma, kWaveMSADPCM, kWaveMSIMAADPCM, kWaveMSIMAADPCM2, kWavePCM, makeADPCMStream(), makePCMStream(), MKTAG, Common::SeekableReadStream::pos(), Common::ReadStream::readUint16LE(), Common::ReadStream::readUint32BE(), Common::ReadStream::readUint32LE(), and Common::SeekableReadStream::skip().

Referenced by Sound::SoundManager::makeAudioStream().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeWMAStream()

PacketizedAudioStream * Sound::makeWMAStream ( int  version,
uint32  sampleRate,
uint8  channels,
uint32  bitRate,
uint32  blockAlign,
Common::SeekableReadStream extraData 
)

Create a PacketizedAudioStream that decodes WMA sound.

Parameters
extraDataThe stream containing the extra data needed for initialization
Returns
A new PacketizedAudioStream, or NULL on error

Definition at line 1726 of file wma.cpp.

Referenced by Sound::ASFStream::createAudioStream().

Here is the caller graph for this function:

◆ makeWwRIFFVorbisStream()

Sound::RewindableAudioStream * Sound::makeWwRIFFVorbisStream ( Common::SeekableReadStream wwRIFFVorbis,
bool  disposeAfterUse 
)

Definition at line 1035 of file wwriffvorbis.cpp.

References kCodeBook.

Referenced by Sound::WwiseSoundBank::getFile(), and Sound::WwiseSoundBank::getSound().

Here is the caller graph for this function:

◆ putVorbisHeader()

static void Sound::putVorbisHeader ( Common::BitStreamWriter stream,
uint8  type 
)
static

Definition at line 673 of file wwriffvorbis.cpp.

References Common::BitStreamWriter::putBits(), and putVorbisString().

Referenced by Sound::WwRIFFVorbisStream::generateHeaderComment(), Sound::WwRIFFVorbisStream::generateHeaderIdentification(), and Sound::WwRIFFVorbisStream::generateHeaderSetup().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ putVorbisString()

static void Sound::putVorbisString ( Common::BitStreamWriter stream)
static

Definition at line 664 of file wwriffvorbis.cpp.

References Common::BitStreamWriter::putBits().

Referenced by putVorbisHeader().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ read_stream_wrap()

static size_t Sound::read_stream_wrap ( void *  ptr,
size_t  size,
size_t  nmemb,
void *  dataSource 
)
static

Definition at line 71 of file vorbis.cpp.

References Common::ReadStream::read().

Here is the call graph for this function:

◆ scale_sample()

static int Sound::scale_sample ( mad_fixed_t  sample)
inlinestatic

Definition at line 317 of file mp3.cpp.

Referenced by Sound::MP3Stream::readBuffer().

Here is the caller graph for this function:

◆ seek_stream_wrap()

static int Sound::seek_stream_wrap ( void *  dataSource,
ogg_int64_t  offset,
int  whence 
)
static

◆ tell_stream_wrap()

static long Sound::tell_stream_wrap ( void *  dataSource)
static

Definition at line 106 of file vorbis.cpp.

References Common::SeekableReadStream::pos().

Here is the call graph for this function:

◆ vectorFMulAdd()

static void Sound::vectorFMulAdd ( float *  dst,
const float *  src0,
const float *  src1,
const float *  src2,
int  len 
)
inlinestatic

Definition at line 87 of file wma.cpp.

Referenced by Sound::WMACodec::window().

Here is the caller graph for this function:

◆ vectorFMulReverse()

static void Sound::vectorFMulReverse ( float *  dst,
const float *  src0,
const float *  src1,
int  len 
)
inlinestatic

Definition at line 93 of file wma.cpp.

Referenced by Sound::WMACodec::window().

Here is the caller graph for this function:

Variable Documentation

◆ coef0Huffbits

const uint8 Sound::coef0Huffbits[666]
static

Definition at line 171 of file wmadata.h.

◆ coef0Huffcodes

const uint32 Sound::coef0Huffcodes[666]
static

Definition at line 84 of file wmadata.h.

◆ coef1Huffbits

const uint8 Sound::coef1Huffbits[555]
static

Definition at line 331 of file wmadata.h.

◆ coef1Huffcodes

const uint32 Sound::coef1Huffcodes[555]
static

Definition at line 258 of file wmadata.h.

◆ coef2Huffbits

const uint8 Sound::coef2Huffbits[1336]
static

Definition at line 574 of file wmadata.h.

◆ coef2Huffcodes

const uint32 Sound::coef2Huffcodes[1336]
static

Definition at line 404 of file wmadata.h.

◆ coef3Huffbits

const uint8 Sound::coef3Huffbits[1072]
static

Definition at line 881 of file wmadata.h.

◆ coef3Huffcodes

const uint32 Sound::coef3Huffcodes[1072]
static

Definition at line 744 of file wmadata.h.

◆ coef4Huffbits

const uint8 Sound::coef4Huffbits[476]
static

Definition at line 1081 of file wmadata.h.

◆ coef4Huffcodes

const uint32 Sound::coef4Huffcodes[476]
static

Definition at line 1018 of file wmadata.h.

◆ coef5Huffbits

const uint8 Sound::coef5Huffbits[435]
static

Definition at line 1202 of file wmadata.h.

◆ coef5Huffcodes

const uint32 Sound::coef5Huffcodes[435]
static

Definition at line 1144 of file wmadata.h.

◆ coefHuffmanParam

const WMACoefHuffmanParam Sound::coefHuffmanParam[6]
static
Initial value:
= {
}
static const uint32 coef1Huffcodes[555]
Definition: wmadata.h:258
static const uint8 coef0Huffbits[666]
Definition: wmadata.h:171
static const uint8 coef5Huffbits[435]
Definition: wmadata.h:1202
static const uint32 coef3Huffcodes[1072]
Definition: wmadata.h:744
static const uint16 levels5[40]
Definition: wmadata.h:1363
static const uint8 coef1Huffbits[555]
Definition: wmadata.h:331
#define ARRAYSIZE(x)
Macro which determines the number of entries in a fixed size array.
Definition: util.h:131
static const uint32 coef0Huffcodes[666]
Definition: wmadata.h:84
static const uint8 coef3Huffbits[1072]
Definition: wmadata.h:881
static const uint16 levels0[60]
Definition: wmadata.h:1260
static const uint32 coef5Huffcodes[435]
Definition: wmadata.h:1144
static const uint8 coef4Huffbits[476]
Definition: wmadata.h:1081
static const uint16 levels3[180]
Definition: wmadata.h:1325
static const uint8 coef2Huffbits[1336]
Definition: wmadata.h:574
static const uint32 coef2Huffcodes[1336]
Definition: wmadata.h:404
static const uint16 levels4[70]
Definition: wmadata.h:1351
static const uint16 levels2[340]
Definition: wmadata.h:1279
static const uint16 levels1[40]
Definition: wmadata.h:1271
static const uint32 coef4Huffcodes[476]
Definition: wmadata.h:1018

Definition at line 1382 of file wmadata.h.

Referenced by Sound::WMACodec::initCoefHuffman().

◆ exponentBand22050

const uint8 Sound::exponentBand22050[3][25]
static
Initial value:
= {
{ 10, 4, 8, 4, 8, 8, 12, 20, 24, 24, 16 },
{ 14, 4, 8, 8, 4, 12, 12, 16, 24, 16, 20, 24, 32, 40, 36 },
{ 23, 4, 4, 4, 8, 4, 4, 8, 8, 8, 8, 8, 12, 12, 16, 16, 24, 24, 32, 44, 48, 60, 84, 72 }
}

Definition at line 66 of file wmadata.h.

Referenced by Sound::WMACodec::evalMDCTScales().

◆ exponentBand32000

const uint8 Sound::exponentBand32000[3][25]
static
Initial value:
= {
{ 11, 4, 4, 8, 4, 4, 12, 16, 24, 20, 28, 4 },
{ 15, 4, 8, 4, 4, 8, 8, 16, 20, 12, 20, 20, 28, 40, 56, 8 },
{ 16, 8, 4, 8, 8, 12, 16, 20, 24, 40, 32, 32, 44, 56, 80, 112, 16 }
}

Definition at line 72 of file wmadata.h.

Referenced by Sound::WMACodec::evalMDCTScales().

◆ exponentBand44100

const uint8 Sound::exponentBand44100[3][25]
static
Initial value:
= {
{ 12, 4, 4, 4, 4, 4, 8, 8, 8, 12, 16, 20, 36 },
{ 15, 4, 8, 4, 8, 8, 4, 8, 8, 12, 12, 12, 24, 28, 40, 76 },
{ 17, 4, 8, 8, 4, 12, 12, 8, 8, 24, 16, 20, 24, 32, 40, 60, 80, 152 }
}

Definition at line 78 of file wmadata.h.

Referenced by Sound::WMACodec::evalMDCTScales().

◆ g_stream_wrap

ov_callbacks Sound::g_stream_wrap
static
Initial value:
= {
}
static long tell_stream_wrap(void *dataSource)
Definition: vorbis.cpp:106
static size_t read_stream_wrap(void *ptr, size_t size, size_t nmemb, void *dataSource)
Definition: vorbis.cpp:71
static int close_stream_wrap(void *dataSource)
Definition: vorbis.cpp:101
static int seek_stream_wrap(void *dataSource, ogg_int64_t offset, int whence)
Definition: vorbis.cpp:79

Definition at line 111 of file vorbis.cpp.

Referenced by Sound::VorbisStream::VorbisStream().

◆ hgainHuffBits

const uint8 Sound::hgainHuffBits[37]
Initial value:
= {
10, 12, 10, 13, 9, 13, 9, 8,
7, 5, 5, 4, 4, 3, 3, 3,
4, 3, 4, 4, 5, 5, 6, 8,
7, 10, 8, 10, 9, 8, 9, 9,
13, 10, 13, 13, 13
}

Definition at line 1399 of file wmadata.h.

Referenced by Sound::WMACodec::initNoise().

◆ hgainHuffCodes

const uint32 Sound::hgainHuffCodes[37]
Initial value:
= {
0x00003, 0x002E7, 0x00001, 0x005CD, 0x0005D, 0x005C9, 0x0005E, 0x00003,
0x00016, 0x0000B, 0x00001, 0x00006, 0x00001, 0x00006, 0x00004, 0x00005,
0x00004, 0x00007, 0x00003, 0x00007, 0x00004, 0x0000A, 0x0000A, 0x00002,
0x00003, 0x00000, 0x00005, 0x00002, 0x0005F, 0x00004, 0x00003, 0x00002,
0x005C8, 0x000B8, 0x005CA, 0x005CB, 0x005CC
}

Definition at line 1391 of file wmadata.h.

Referenced by Sound::WMACodec::initNoise().

◆ imaStepTable

const uint16 Sound::imaStepTable[89]
static
Initial value:
= {
7, 8, 9, 10, 11, 12, 13, 14,
16, 17, 19, 21, 23, 25, 28, 31,
34, 37, 41, 45, 50, 55, 60, 66,
73, 80, 88, 97, 107, 118, 130, 143,
157, 173, 190, 209, 230, 253, 279, 307,
337, 371, 408, 449, 494, 544, 598, 658,
724, 796, 876, 963, 1060, 1166, 1282, 1411,
1552, 1707, 1878, 2066, 2272, 2499, 2749, 3024,
3327, 3660, 4026, 4428, 4871, 5358, 5894, 6484,
7132, 7845, 8630, 9493,10442,11487,12635,13899,
15289,16818,18500,20350,22385,24623,27086,29794,
32767
}

Definition at line 451 of file adpcm.cpp.

Referenced by Sound::Ima_ADPCMStream::decodeIMA(), Sound::Xbox_ADPCMStream::decodeXbox(), and Sound::Xbox_ADPCMStream::readBuffer().

◆ kChannelInvalid

const size_t Sound::kChannelInvalid = SIZE_MAX
static

Definition at line 32 of file types.h.

Referenced by Sound::SoundManager::freeChannel(), and Sound::SoundManager::newChannel().

◆ kCodeBook

const byte Sound::kCodeBook[]
static

Definition at line 26 of file wwriffvorbisdata.h.

Referenced by makeWwRIFFVorbisStream().

◆ kLSPCoefCount

const int Sound::kLSPCoefCount = 10
static

Definition at line 1437 of file wmadata.h.

Referenced by Sound::WMACodec::decodeExpLSP(), and Sound::WMACodec::lspToCurve().

◆ kXboxIndexTable

const int8 Sound::kXboxIndexTable[16]
static
Initial value:
= {
-1, -1, -1, -1, 2, 4, 6, 8,
-1, -1, -1, -1, 2, 4, 6, 8
}

Definition at line 570 of file adpcm.cpp.

Referenced by Sound::Xbox_ADPCMStream::decodeXbox().

◆ levels0

const uint16 Sound::levels0[60]
static
Initial value:
= {
317, 92, 62, 60, 19, 17, 10, 7,
6, 5, 5, 3, 3, 3, 2, 2,
2, 2, 2, 2, 2, 1, 2, 2,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1
}

Definition at line 1260 of file wmadata.h.

◆ levels1

const uint16 Sound::levels1[40]
static
Initial value:
= {
311, 91, 61, 28, 10, 6, 5, 2,
2, 2, 2, 2, 2, 2, 2, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1
}

Definition at line 1271 of file wmadata.h.

◆ levels2

const uint16 Sound::levels2[340]
static

Definition at line 1279 of file wmadata.h.

◆ levels3

const uint16 Sound::levels3[180]
static
Initial value:
= {
351, 122, 76, 61, 41, 42, 24, 30,
22, 19, 11, 9, 10, 8, 5, 5,
4, 5, 5, 3, 3, 3, 3, 3,
3, 3, 2, 2, 3, 2, 2, 2,
3, 3, 2, 2, 2, 3, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 1, 1,
2, 2, 1, 2, 1, 2, 2, 2,
2, 2, 2, 1, 2, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 2,
2, 1, 2, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1
}

Definition at line 1325 of file wmadata.h.

◆ levels4

const uint16 Sound::levels4[70]
static
Initial value:
= {
113, 68, 49, 42, 40, 32, 27, 15,
10, 5, 3, 3, 3, 3, 2, 2,
2, 2, 2, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1
}

Definition at line 1351 of file wmadata.h.

◆ levels5

const uint16 Sound::levels5[40]
static
Initial value:
= {
214, 72, 42, 40, 18, 4, 4, 2,
2, 2, 2, 2, 1, 1, 2, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1
}

Definition at line 1363 of file wmadata.h.

◆ lspCodebook

const float Sound::lspCodebook[kLSPCoefCount][16]
Initial value:
= {
{ 1.98732877f, 1.97944528f, 1.97179088f, 1.96260549f, 1.95038374f, 1.93336114f, 1.90719232f, 1.86191415f, },
{ 1.97260000f, 1.96083160f, 1.94982586f, 1.93806164f, 1.92516608f, 1.91010199f, 1.89232331f, 1.87149812f,
1.84564818f, 1.81358067f, 1.77620070f, 1.73265264f, 1.67907855f, 1.60959081f, 1.50829650f, 1.33120330f, },
{ 1.90109110f, 1.86482426f, 1.83419671f, 1.80168452f, 1.76650116f, 1.72816320f, 1.68502700f, 1.63738256f,
1.58501580f, 1.51795181f, 1.43679906f, 1.33950585f, 1.24176208f, 1.12260729f, 0.96749668f, 0.74048265f, },
{ 1.76943864f, 1.67822463f, 1.59946365f, 1.53560582f, 1.47470796f, 1.41210167f, 1.34509536f, 1.27339507f,
1.19303814f, 1.09765169f, 0.98818722f, 0.87239446f, 0.74369172f, 0.59768184f, 0.43168630f, 0.17977021f, },
{ 1.43428349f, 1.32038354f, 1.21074086f, 1.10577988f, 1.00561746f, 0.90335924f, 0.80437489f, 0.70709671f,
0.60427395f, 0.49814048f, 0.38509539f, 0.27106800f, 0.14407416f, 0.00219910f,-0.16725141f,-0.36936085f, },
{ 0.99895687f, 0.84188166f, 0.70753739f, 0.57906595f, 0.47055563f, 0.36966965f, 0.26826648f, 0.17163380f,
0.07208392f,-0.03062936f,-1.40037388f,-0.25128968f,-0.37213937f,-0.51075646f,-0.64887512f,-0.80308031f, },
{ 0.26515280f, 0.06313551f,-0.08872080f,-0.21103548f,-0.31069678f,-0.39680323f,-0.47223474f,-0.54167135f,
-0.61444740f,-0.68943343f,-0.76580211f,-0.85170082f,-0.95289061f,-1.06514703f,-1.20510707f,-1.37617746f, },
{-0.53940301f,-0.73770929f,-0.88424876f,-1.01117930f,-1.13389091f,-1.26830073f,-1.42041987f,-1.62033919f,
-1.10158808f,-1.16512566f,-1.23337128f,-1.30414401f,-1.37663312f,-1.46853845f,-1.57625798f,-1.66893638f, },
{-0.38601997f,-0.56009350f,-0.66978483f,-0.76028471f,-0.83846064f,-0.90868087f,-0.97408881f,-1.03694962f, },
{-1.56144989f,-1.65944032f,-1.72689685f,-1.77857740f,-1.82203011f,-1.86220079f,-1.90283983f,-1.94820479f, },
}

Definition at line 1439 of file wmadata.h.

Referenced by Sound::WMACodec::decodeExpLSP().

◆ MSADPCMAdaptationTable

const int Sound::MSADPCMAdaptationTable[]
static
Initial value:
= {
230, 230, 230, 230, 307, 409, 512, 614,
768, 614, 512, 409, 307, 230, 230, 230
}

Definition at line 340 of file adpcm.cpp.

Referenced by Sound::MS_ADPCMStream::decodeMS().

◆ MSADPCMAdaptCoeff1

const int Sound::MSADPCMAdaptCoeff1[]
static
Initial value:
= {
256, 512, 0, 192, 240, 460, 392
}

Definition at line 332 of file adpcm.cpp.

Referenced by Sound::MS_ADPCMStream::readBuffer().

◆ MSADPCMAdaptCoeff2

const int Sound::MSADPCMAdaptCoeff2[]
static
Initial value:
= {
0, -256, 0, 64, 0, -208, -232
}

Definition at line 336 of file adpcm.cpp.

Referenced by Sound::MS_ADPCMStream::readBuffer().

◆ powTab

const float Sound::powTab[]
static

Definition at line 1342 of file wma.cpp.

Referenced by Sound::WMACodec::decodeExpHuffman().

◆ s_asfAudioStream

const ASFGUID Sound::s_asfAudioStream = ASFGUID(0x40, 0x9E, 0x69, 0xF8, 0x4D, 0x5B, 0xCF, 0x11, 0xA8, 0xFD, 0x00, 0x80, 0x5F, 0x5C, 0x44, 0x2B)
static

Definition at line 102 of file asf.cpp.

Referenced by Sound::ASFStream::parseStreamHeader().

◆ s_asfCodecComment

const ASFGUID Sound::s_asfCodecComment = ASFGUID(0x40, 0x52, 0xD1, 0x86, 0x1D, 0x31, 0xD0, 0x11, 0xA3, 0xA4, 0x00, 0xA0, 0xC9, 0x03, 0x48, 0xF6)
static

Definition at line 100 of file asf.cpp.

Referenced by Sound::ASFStream::load().

◆ s_asfComment

const ASFGUID Sound::s_asfComment = ASFGUID(0x33, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c)
static

Definition at line 98 of file asf.cpp.

Referenced by Sound::ASFStream::load().

◆ s_asfDataHeader

const ASFGUID Sound::s_asfDataHeader = ASFGUID(0x36, 0x26, 0xb2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xa6, 0xd9, 0x00, 0xaa, 0x00, 0x62, 0xce, 0x6c)
static

Definition at line 101 of file asf.cpp.

Referenced by Sound::ASFStream::load().

◆ s_asfExtendedHeader

const ASFGUID Sound::s_asfExtendedHeader = ASFGUID(0x40, 0xA4, 0xD0, 0xD2, 0x07, 0xE3, 0xD2, 0x11, 0x97, 0xF0, 0x00, 0xA0, 0xC9, 0x5E, 0xA8, 0x50)
static

Definition at line 103 of file asf.cpp.

Referenced by Sound::ASFStream::load().

◆ s_asfFileHeader

const ASFGUID Sound::s_asfFileHeader = ASFGUID(0xA1, 0xDC, 0xAB, 0x8C, 0x47, 0xA9, 0xCF, 0x11, 0x8E, 0xE4, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65)
static

Definition at line 96 of file asf.cpp.

Referenced by Sound::ASFStream::load().

◆ s_asfHead1

const ASFGUID Sound::s_asfHead1 = ASFGUID(0xb5, 0x03, 0xbf, 0x5f, 0x2E, 0xA9, 0xCF, 0x11, 0x8e, 0xe3, 0x00, 0xc0, 0x0c, 0x20, 0x53, 0x65)
static

Definition at line 97 of file asf.cpp.

Referenced by Sound::ASFStream::load().

◆ s_asfHeader

const ASFGUID Sound::s_asfHeader = ASFGUID(0x30, 0x26, 0xB2, 0x75, 0x8E, 0x66, 0xCF, 0x11, 0xA6, 0xD9, 0x00, 0xAA, 0x00, 0x62, 0xCE, 0x6C)
static

Definition at line 95 of file asf.cpp.

Referenced by Sound::ASFStream::load().

◆ s_asfStreamBitRate

const ASFGUID Sound::s_asfStreamBitRate = ASFGUID(0xce, 0x75, 0xf8, 0x7b, 0x8d, 0x46, 0xd1, 0x11, 0x8d, 0x82, 0x00, 0x60, 0x97, 0xc9, 0xa2, 0xb2)
static

Definition at line 104 of file asf.cpp.

Referenced by Sound::ASFStream::load().

◆ s_asfStreamHeader

const ASFGUID Sound::s_asfStreamHeader = ASFGUID(0x91, 0x07, 0xDC, 0xB7, 0xB7, 0xA9, 0xCF, 0x11, 0x8E, 0xE6, 0x00, 0xC0, 0x0C, 0x20, 0x53, 0x65)
static

Definition at line 99 of file asf.cpp.

Referenced by Sound::ASFStream::load().

◆ scaleHuffBits

const uint8 Sound::scaleHuffBits[121]
Initial value:
= {
18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
19, 19, 19, 18, 19, 18, 17, 17, 16, 17, 16, 16, 16, 16, 15, 15,
14, 14, 14, 14, 14, 14, 13, 13, 12, 12, 12, 11, 12, 11, 10, 10,
10, 9, 9, 8, 8, 8, 7, 6, 6, 5, 4, 3, 1, 4, 4, 5,
6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 10, 11, 11, 11, 11, 12,
12, 13, 13, 13, 14, 14, 16, 15, 16, 15, 18, 19, 19, 19, 19, 19,
19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
19, 19, 19, 19, 19, 19, 19, 19, 19
}

Definition at line 1426 of file wmadata.h.

Referenced by Sound::WMACodec::initExponents().

◆ scaleHuffCodes

const uint32 Sound::scaleHuffCodes[121]
Initial value:
= {
0x3FFE8, 0x3FFE6, 0x3FFE7, 0x3FFE5, 0x7FFF5, 0x7FFF1, 0x7FFED, 0x7FFF6,
0x7FFEE, 0x7FFEF, 0x7FFF0, 0x7FFFC, 0x7FFFD, 0x7FFFF, 0x7FFFE, 0x7FFF7,
0x7FFF8, 0x7FFFB, 0x7FFF9, 0x3FFE4, 0x7FFFA, 0x3FFE3, 0x1FFEF, 0x1FFF0,
0x0FFF5, 0x1FFEE, 0x0FFF2, 0x0FFF3, 0x0FFF4, 0x0FFF1, 0x07FF6, 0x07FF7,
0x03FF9, 0x03FF5, 0x03FF7, 0x03FF3, 0x03FF6, 0x03FF2, 0x01FF7, 0x01FF5,
0x00FF9, 0x00FF7, 0x00FF6, 0x007F9, 0x00FF4, 0x007F8, 0x003F9, 0x003F7,
0x003F5, 0x001F8, 0x001F7, 0x000FA, 0x000F8, 0x000F6, 0x00079, 0x0003A,
0x00038, 0x0001A, 0x0000B, 0x00004, 0x00000, 0x0000A, 0x0000C, 0x0001B,
0x00039, 0x0003B, 0x00078, 0x0007A, 0x000F7, 0x000F9, 0x001F6, 0x001F9,
0x003F4, 0x003F6, 0x003F8, 0x007F5, 0x007F4, 0x007F6, 0x007F7, 0x00FF5,
0x00FF8, 0x01FF4, 0x01FF6, 0x01FF8, 0x03FF8, 0x03FF4, 0x0FFF0, 0x07FF4,
0x0FFF6, 0x07FF5, 0x3FFE2, 0x7FFD9, 0x7FFDA, 0x7FFDB, 0x7FFDC, 0x7FFDD,
0x7FFDE, 0x7FFD8, 0x7FFD2, 0x7FFD3, 0x7FFD4, 0x7FFD5, 0x7FFD6, 0x7FFF2,
0x7FFDF, 0x7FFE7, 0x7FFE8, 0x7FFE9, 0x7FFEA, 0x7FFEB, 0x7FFE6, 0x7FFE0,
0x7FFE1, 0x7FFE2, 0x7FFE3, 0x7FFE4, 0x7FFE5, 0x7FFD7, 0x7FFEC, 0x7FFF4,
0x7FFF3
}

Definition at line 1407 of file wmadata.h.

Referenced by Sound::WMACodec::initExponents().

◆ timer_zero

const mad_timer_t Sound::timer_zero = {0, 0}
static

Definition at line 66 of file mp3.cpp.

Referenced by Sound::MP3Stream::initStream().

◆ wmaCriticalFreqs

const uint16 Sound::wmaCriticalFreqs[25]
Initial value:
= {
100, 200, 300, 400, 510, 630, 770, 920,
1080, 1270, 1480, 1720, 2000, 2320, 2700, 3150,
3700, 4400, 5300, 6400, 7700, 9500, 12000, 15500,
24500
}

Definition at line 58 of file wmadata.h.

Referenced by Sound::WMACodec::evalMDCTScales().