57extern "C" void ix_dspv_mix(
void *outputBuffer,
unsigned int outputBytes);
165 unsigned char newBasePriority,
166 unsigned int initialVolume,
168 unsigned short newPan);
170 unsigned char newBasePriority);
193extern void (__cdecl *pIxFree)(
void *);
198extern CRITICAL_SECTION
csMixer;
200#define IX_MIXER_BASE_RATE 22050
205#define IX_DSPV_FILE "D:\\rnd\\prj\\ix\\win95\\dsp\\dspv.cpp"
254 unsigned char **,
unsigned int *);
265#define IX_DSPS_FILE "D:\\rnd\\prj\\ix\\win95\\dsp\\dsps.cpp"
266void ix_dsps_alloc(
int stream,
unsigned int size,
int frequency,
267 int bitsPerSample,
int channels);
275void ix_dsps_lock(
int stream,
unsigned int requestedBytes,
276 unsigned char **buffer,
unsigned int *lockedBytes);
302void *
ix_dsp_copy(
void *destination,
const void *source,
323 unsigned int minimumPriority);
325 unsigned int maximumPriority);
472 unsigned char priority);
482 unsigned char *destination,
483 unsigned int destinationBytes);
491extern "C" unsigned int ix_file_read(FILE *file,
void *destination,
493extern "C" unsigned int ix_file_write(FILE *file,
const void *source,
void ix_dsp_build_pan_tables(void)
int ix_dsp_get_stream_count(void)
void ix_dsp_configure(int option, void *value)
int ix_dsp_get_voice_count(void)
void ix_dsp_set_stream_count(int streamCount)
unsigned int ix_dsp_get_tick(void)
void(__cdecl *pIxFree)(void *)
void ix_dsp_shutdown(void)
unsigned int ix_dsp_get_flags(void)
void ix_dsp_set_config_bit3(int enabled)
void ix_dsp_set_voice_count(int voiceCount)
void *__cdecl * pIxMalloc(unsigned int)
unsigned short nMasterVolume
void ix_dsp_free(void *memory)
unsigned short ix_dsp_get_master_volume(void)
void ix_dsp_set_config_bit1(int enabled)
void * ix_dsp_copy(void *destination, const void *source, unsigned int bytes)
void ix_dsp_set_master_volume(unsigned short volume)
const char * ix_dsp_result_to_text(int result)
void * ix_dsp_alloc(unsigned int bytes)
void ix_dsps_prepare(int stream)
void ix_dsps_unlock(int stream)
int ix_dsps_get_buffer_free(int streamIndex)
unsigned int ix_dsps_get_flags(int stream)
void ix_dsps_free(int stream)
void ix_dsps_stop(int stream)
void ix_dsps_play(int stream)
void ix_dsps_alloc(int stream, unsigned int size, int freq, int bps, int channels)
void ix_dsps_lock(int stream, unsigned int requestedBytes, unsigned char **buffer, unsigned int *lockedBytes)
void ix_dsps_set_volume(int stream, unsigned short vol)
void ix_dspv_set_channels(int voice, int channels)
void ix_dspv_set_buffer(int voice, unsigned char *p, int len)
unsigned int ix_dspv_get_flags(int voice)
void ix_dspv_set_active(int voice)
void ix_dspv_set_volume(int voice, short vol)
void ix_dspv_set_flag4(int voice, int on)
void ix_dspv_set_bits_per_sample(int voice, int bps)
void ix_dspv_set_position(int voice, int off)
void ix_dspv_set_pan(int voice, unsigned short angle)
int ix_dspv_get_position(int voice)
void ix_dspv_clear_flag4(int voice)
void ix_dspv_set_frequency(int voice, unsigned int hz)
void ix_dspv_clear_active(int voice)
void ix_dspv_recalc_mix(int voice)
unsigned int dwIxStreamerStatus
unsigned int dwStreamBytesPerSecond
unsigned short ix_system_get_master_volume(void)
CRITICAL_SECTION csStreamer
void ix_thread_handle_file_chunk(IxStreamFile *streamFile)
void ix_file_close(FILE *file)
unsigned int * pStreamerPacketOffsetTable
DWORD dwIxStreamerThreadId
unsigned int ix_thread_get_audio_chunk_size(void)
void ix_streamer_close_file(IxStreamFile *streamFile)
int ix_system_get_voice_count(void)
int ix_system_find_free_voice(void)
IxSound * pPlayingSoundList
FILE * ix_file_open(const char *path, int mode)
unsigned int ix_streamer_get_audio_chunk(void)
unsigned int ix_streamer_hash_name(unsigned char *name)
IxStreamerFileEntry * ix_streamer_find_entry(unsigned int hash)
IxStreamFile * pStreamIdleFiles
IxStreamerAudioChunk * pStreamedMusicAudioChunks
unsigned int ix_file_write(FILE *file, const void *source, unsigned int bytes)
void ix_thread_advance_audio_chunk(void)
int ix_mixer_service(void)
IxStreamerFileEntry * pStreamFileEntries
void ix_streamer_audio_reprepare(void)
unsigned int ix_file_read(FILE *file, void *destination, unsigned int bytes)
void ix_streamer_audio_pause(void)
unsigned int nIxStreamerCurrentFileChunk
void ix_thread_lock_stream_buffer(void)
unsigned int dwSoundStateFlags
unsigned int ix_streamer_service_audio(void)
unsigned int dwIxStreamerAudioBufferSize
void ix_log_printf(const char *fmt,...)
void ix_dspv_mix(void *outputBuffer, unsigned int outputBytes)
void ix_file_seek(FILE *file, long position)
long ix_file_tell(FILE *file)
unsigned int dwStreamThreadTick
void ix_streamer_seek_chunk(unsigned int chunk)
IxStreamerTrigger * pStreamTriggerList
unsigned char * pIxStreamerInputBuffer
IxStreamerFileChunk * pStreamFileBlocks
unsigned int adwStreamCallStack[32]
void ix_streamer_set_dev_mode(int mode)
DWORD WINAPI ix_streamer_thread_proc(void *parameter)
IxSound * ix_system_find_lowest_playing(IxSound *sound, unsigned int maximumPriority)
int ix_system_release_voice(IxSound *sound)
void ix_file_init_hook(void)
IxSound * ix_system_find_highest_waiting(IxSound *sound, unsigned int minimumPriority)
unsigned char ix_streamer_get_intensity(void)
IxStreamFile * ix_streamer_open_file(unsigned char *name, unsigned char priority)
@ IX_SOUND_RELEASE_PENDING
@ IX_SOUND_FREQUENCY_DIRTY
@ IX_SOUND_DELETE_ON_STOP
DWORD WINAPI ix_mixer_thread_proc(void *parameter)
IxSound * pQueuedSoundList
unsigned char bStreamerIntensityLevel
unsigned int nStreamCallStackIndex
CRITICAL_SECTION csStreamerFileList
unsigned int nStreamerAudioBlock
IxStreamFile * pStreamReadRequests
void ix_system_assign_voice(IxSound *sound, int voice)
void ix_lzo1x_decompress(unsigned char *source, unsigned char *destination, unsigned int destinationBytes)
void ix_system_delete_sample(IxSample *sample)
CRITICAL_SECTION csIxStreamerThread
long ix_file_size(FILE *file)
unsigned char * pStreamerLzoBuffer
IxStreamerHeader * pStreamerPackageInfo
IxStreamerBranch * pMusicStreamBranchList
void ix_file_shutdown_hook(void)
unsigned int ix_thread_service_streams(void)
@ IX_STREAMER_DSP_PLAYING
@ IX_STREAMER_DEVELOPER_MODE
@ IX_STREAMER_AUDIO_PAUSED
@ IX_STREAMER_AUDIO_PLAYING
@ IX_STREAMER_THREAD_RUNNING
@ IX_STREAMER_REPREPARE_AUDIO
@ IX_STREAMER_END_TRIGGERED
@ IX_STREAMER_INITIALIZED
unsigned short nStreamerVolume
void __fastcall ix_sound_unlink_from_free_list(IxSound *sound)
HANDLE hStreamerWakeupEvent
int ix_sample_load_wav(void *data, int bytes)
int ix_sample_load_raw(void *data, int bytes, int frequency, int bitsPerSample, int channels)
unsigned int bitsPerSample
void ix_sample_construct(void)
unsigned int rateNumerator
unsigned int rateDenominator
long ix_sample_convert_from_ieee_extended(unsigned char *bytes)
unsigned int bytesPerFrame
void ix_sample_destruct(void)
int ix_sample_load_aiff(void *data, int bytes)
void ix_sound_reprioritise(void)
void ix_system_sound_construct(IxSample *newSample, unsigned char newBasePriority)
void ix_system_sound_set_volume(unsigned short newVolume)
void ix_system_sound_set_frequency(int newPitchOffset)
void ix_system_sound_set_pan(unsigned short newPan)
void ix_system_sound_set_priority(unsigned char newBasePriority)
void ix_system_sound_construct_centred(IxSample *newSample)
void ix_system_sound_init(IxSample *newSample, unsigned char newBasePriority, unsigned int initialVolume, int newPitchOffset, unsigned short newPan)
void ix_sound_set_delete_on_stop(int enabled)
unsigned char basePriority
unsigned int ix_stream_file_tell(void)
void ix_stream_file_wait(void)
unsigned int ix_stream_file_read(void *destination, unsigned int bytes)
int ix_stream_file_is_reading(void)
unsigned char * destination
unsigned int ix_stream_file_size(void)
void ix_stream_file_seek(unsigned int position)
IxStreamerFileEntry * entry
friend void ix_dsps_prepare(int)
friend void ix_dsps_unlock(int)
friend int ix_dsps_get_buffer_free(int)
friend unsigned int ix_dsps_get_flags(int)
friend void ix_dsps_free(int)
friend void ix_dsps_stop(int)
friend void ix_dsps_play(int)
friend void ix_dsps_alloc(int, unsigned int, int, int, int)
friend void ix_dsps_lock(int, unsigned int, unsigned char **, unsigned int *)
friend void ix_dsps_set_volume(int, unsigned short)
unsigned int triggerCount
unsigned int firstTrigger
friend void ix_dspv_set_channels(int, int)
friend void ix_dsps_prepare(int)
friend void ix_dspv_set_buffer(int, unsigned char *, int)
friend int ix_dsps_get_buffer_free(int)
friend unsigned int ix_dspv_get_flags(int)
friend void ix_dspv_set_active(int)
friend void ix_dspv_set_volume(int, short)
friend void ix_dspv_set_flag4(int, int)
friend void ix_dspv_mix(void *, unsigned int)
friend void ix_dspv_set_bits_per_sample(int, int)
friend void ix_dspv_set_position(int, int)
friend void ix_dspv_set_pan(int, unsigned short)
friend int ix_dspv_get_position(int)
friend void ix_dsps_stop(int)
unsigned char rightGainHi
friend void ix_dsps_play(int)
friend void ix_dspv_clear_flag4(int)
friend void ix_dspv_set_frequency(int, unsigned int)
friend void ix_dsps_alloc(int, unsigned int, int, int, int)
friend void ix_dspv_clear_active(int)
friend void ix_dsp_set_master_volume(unsigned short)
friend void ix_dspv_recalc_mix(int)
friend void ix_dsps_set_volume(int, unsigned short)
void ix_system_set_master_volume(unsigned short volume)
void ix_system_delete_all_samples(void)
void __fastcall ix_sound_stop(IxSound *sound)
void ix_streamer_set_intensity(unsigned char intensity)
int __fastcall ix_sound_is_playing(IxSound *sound)
void ix_streamer_configure(int option, void *value)
IxSound * ix_system_new_sound(IxSample *sample)
void ix_streamer_audio_play(void)
void ix_system_shutdown(void)
void ix_system_configure(int option, void *value)
int ix_streamer_open_stream_file(char *path)
void ix_system_set_voice_count(int voiceCount)
void ix_streamer_set_trigger(char trigger)
void ix_system_delete_all_sounds(void)
char ix_streamer_get_trigger(void)
void ix_streamer_destroy(void)
IxSample * ix_system_new_sample(void)
unsigned short ix_streamer_get_volume(void)
int ix_streamer_init(void)
void __fastcall ix_sound_start(IxSound *sound)
void ix_streamer_force_trigger(char trigger)
void ix_system_delete_sound(IxSound *sound)
void __fastcall ix_sound_release(IxSound *sound)
void ix_streamer_audio_stop(void)
void ix_streamer_close_stream_file(void)
void ix_streamer_set_volume(unsigned short volume)
void ix_system_service_sounds(void)