14#define IX_STREAMER_FILE "D:\\Rnd\\Prj\\ix\\Src\\Streamer\\streamer.cpp"
110 ix_log_printf(
"Can't change dev_mode while stream files are open!");
246 sizeof(
unsigned int));
257 sizeof(
unsigned int));
310 while (streamFile != 0) {
385 if (intensity >= 0) {
406 trigger < 0x40 ? trigger : 0x40;
422 unsigned int triggerCount;
423 unsigned int chunkIndex;
424 unsigned int audioChunks;
425 unsigned int triggerIndex;
435 while (-1 < trigger && audioChunks--) {
441 while (triggerCount--) {
475 volume < 0xffff ? volume : 0xffff;
517 unsigned int character;
522 if (character >=
'a' && character <=
'z')
524 hash = character << 8;
525 while ((character = *name++) != 0) {
526 if (character >=
'a' && character <=
'z')
528 hash += (hash >> 4) * character;
545 while (limit > first) {
546 mid = (first + limit) >> 1;
550 }
else if (entry->
nameHash > hash) {
561 unsigned char priority)
573 if (streamFile == 0) {
579 streamFile->
entry = entry;
586 streamFile->
next = 0;
600 if (streamFile == 0) {
606 streamFile->
file = file;
613 streamFile->
next = 0;
633 if (streamFile->
next == 0)
641 g_pIxFree(streamFile);
void ix_dsp_configure(int option, void *value)
void ix_dsp_shutdown(void)
void *__cdecl * g_pIxMalloc(unsigned int)
void ix_dsps_set_volume(int stream, unsigned short volume)
void ix_dsps_free(int stream)
void ix_dsps_stop(int stream)
void ix_dsps_alloc(int stream, unsigned int size, int freq, int bps, int channels)
void ix_streamer_set_intensity(unsigned char intensity)
void ix_streamer_configure(int option, void *value)
void ix_streamer_audio_play(void)
int ix_streamer_open_stream_file(char *path)
void ix_streamer_set_trigger(char trigger)
void ix_streamer_destroy(void)
unsigned short ix_streamer_get_volume(void)
int ix_streamer_init(void)
void ix_streamer_force_trigger(char trigger)
void ix_streamer_audio_stop(void)
void ix_streamer_close_stream_file(void)
void ix_streamer_set_volume(unsigned short volume)
unsigned int g_dwStreamerMode
Audio classes, DirectSound interfaces and shared ix state.
IxStreamerTrigger * g_6_pFeederTriggers
IxStreamerHeader * g_pStreamPrologue
unsigned int g_nStreamerBranchStackIndex
unsigned int * g_7_pStreamerPacketOffsets
void ix_file_close(FILE *file)
void ix_streamer_close_file(IxStreamFile *streamFile)
HANDLE g_1_hStreamRouseEvent
HANDLE g_4_hStreamerWorker
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)
IxStreamFile * g_48_pPumpIdleFiles
IxStreamerFileEntry * ix_streamer_find_entry(unsigned int hash)
void ix_streamer_audio_reprepare(void)
unsigned int ix_file_read(FILE *file, void *destination, unsigned int bytes)
void ix_streamer_audio_pause(void)
FILE * g_1_pFeederPackageDisk
IxStreamerFileEntry * g_3_pReaderFileEntries
unsigned int g_nSpoolerDiskChunk
void ix_log_printf(const char *fmt,...)
void ix_file_seek(FILE *file, long position)
unsigned int g_49_nStreamerAudioBufferSize
CRITICAL_SECTION g_csStreamerFileFifo
void ix_streamer_seek_chunk(unsigned int chunk)
unsigned int g_6_dwStreamSoundChunk
CRITICAL_SECTION g_49_csStreamWorker
void ix_streamer_set_dev_mode(int mode)
DWORD WINAPI ix_streamer_thread_proc(void *parameter)
unsigned char * g_pStreamerFileStore
unsigned short g_nStreamerVolume
unsigned char ix_streamer_get_intensity(void)
IxStreamFile * g_1_pPlayerReadQueue
IxStreamFile * ix_streamer_open_file(unsigned char *name, unsigned char priority)
char ix_streamer_get_trigger(void)
char g_cStreamerBranchTag
unsigned char * g_126_pReaderCompressedBuf
unsigned int g_13_adwPlayerBranchingStack[32]
IxStreamerFileChunk * g_17_pStreamerFileParts
long ix_file_size(FILE *file)
CRITICAL_SECTION g_1_csStreamer
IxStreamerBranch * g_7_pStreamBranches
unsigned int g_16_nStreamerBytesEachSecond
@ IX_STREAMER_DSP_PLAYING
@ IX_STREAMER_DEVELOPER_MODE
@ IX_STREAMER_AUDIO_PAUSED
@ IX_STREAMER_AUDIO_PLAYING
@ IX_STREAMER_REPREPARE_AUDIO
@ IX_STREAMER_INITIALIZED
IxStreamerAudioChunk * g_15_pStreamerSoundChunks
unsigned int g_18_dwStreamerThreadTick
unsigned char g_6_bFeederLevel
unsigned int g_38_nUnusedPumpWord
IxStreamerFileEntry * entry
void ix_stream_file_wait()
unsigned int triggerCount
unsigned int firstTrigger