audio_postprocessor Class Reference

This class handles conversion of audio data (audio_chunk) to various linear PCM types, with optional dithering. More...

#include <audio_postprocessor.h>

Inheritance diagram for audio_postprocessor:

service_base

List of all members.

Public Types

typedef audio_postprocessor t_interface_entrypoint
typedef audio_postprocessor t_interface
typedef service_base t_interface_parent

Public Member Functions

virtual void run (const audio_chunk &p_chunk, mem_block_container &p_output, t_uint32 p_out_bps, t_uint32 p_out_bps_physical, bool p_dither, audio_sample p_prescale)=0

Static Public Attributes

static const GUID class_guid


Detailed Description

This class handles conversion of audio data (audio_chunk) to various linear PCM types, with optional dithering.

Member Typedef Documentation

Reimplemented from service_base.


Member Function Documentation

virtual void audio_postprocessor::run ( const audio_chunk p_chunk,
mem_block_container p_output,
t_uint32  p_out_bps,
t_uint32  p_out_bps_physical,
bool  p_dither,
audio_sample  p_prescale 
) [pure virtual]

Processes one chunk of audio data.

Parameters:
p_chunk Chunk of audio data to process.
p_output Receives output linear signed PCM data.
p_out_bps Desired bit depth of output.
p_out_bps_physical Desired physical word width of output. Must be either 8, 16, 24 or 32, greater or equal to p_out_bps. This is typically set to same value as p_out_bps.
p_dither Indicates whether dithering should be used. Note that dithering is CPU-heavy.
p_prescale Value to scale all audio samples by when converting. Set to 1.0 to do nothing.


Member Data Documentation

const GUID audio_postprocessor::class_guid [static]

Initial value:

{ 0x61c4e6e4, 0xc31e, 0x4c89, { 0xa7, 0x59, 0xbf, 0x9, 0x49, 0xdf, 0xc5, 0x28 } }


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

Generated on Fri Apr 25 18:49:40 2008 for foobar2000 SDK by  doxygen 1.5.5