ScummVM API documentation
Audio::XanDPCMStream Class Reference

#include <xan_dpcm.h>

Inheritance diagram for Audio::XanDPCMStream:
Audio::StatelessPacketizedAudioStream Audio::PacketizedAudioStream Audio::AudioStream

Public Member Functions

 XanDPCMStream (int rate, int channels)
 
- Public Member Functions inherited from Audio::StatelessPacketizedAudioStream
 StatelessPacketizedAudioStream (uint rate, uint channels)
 
bool isStereo () const
 
int getRate () const
 
int readBuffer (int16 *data, const int numSamples)
 
bool endOfData () const
 
bool endOfStream () const
 
void queuePacket (Common::SeekableReadStream *data)
 
void finish ()
 
uint getChannels () const
 

Protected Member Functions

AudioStreammakeStream (Common::SeekableReadStream *data) override
 

Detailed Description

Implements the Xan DPCM decoder used in Crusader: No Regret and Wing Commander IV movies. Implementation based on the description on the MultiMedia Wiki: https://wiki.multimedia.cx/index.php/Xan_DPCM

Constructor & Destructor Documentation

◆ XanDPCMStream()

Audio::XanDPCMStream::XanDPCMStream ( int  rate,
int  channels 
)

Create a Xan DPCM stream

Parameters
ratesampling rate (samples per second)
channelsnumber of channels to decode
Returns
a new XanDPCMStream, or NULL, if an error occurred

Member Function Documentation

◆ makeStream()

AudioStream* Audio::XanDPCMStream::makeStream ( Common::SeekableReadStream data)
overrideprotectedvirtual

Create an AudioStream for a given packet.

Implements Audio::StatelessPacketizedAudioStream.


The documentation for this class was generated from the following file: