13#define IX_STREAMER_FILE "D:\\Rnd\\Prj\\ix\\Src\\Streamer\\streamer.cpp"
113 ix_log_printf(
"Can't change dev_mode while stream files are open!");
249 sizeof(
unsigned int));
260 sizeof(
unsigned int));
313 while (streamFile != 0) {
314 previousFile = streamFile->
previous;
316 streamFile = previousFile;
388 if (intensity >= 0) {
409 trigger < 0x40 ? trigger : 0x40;
426 unsigned int chunkCount;
436 while (-1 < trigger && chunkCount--) {
438 unsigned int triggerCount;
439 unsigned int triggerIndex;
445 while (triggerCount--) {
479 volume < 0xffff ? volume : 0xffff;
521 unsigned int character;
526 if (character >=
'a' && character <=
'z')
528 hash = character << 8;
529 while ((character = *name++) != 0) {
530 if (character >=
'a' && character <=
'z')
532 hash += (hash >> 4) * character;
550 mid = (hi + lo) >> 1;
554 }
else if (entry->
nameHash > hash) {
565 unsigned char priority)
577 if (streamFile == 0) {
583 streamFile->
entry = entry;
590 streamFile->
next = 0;
604 if (streamFile == 0) {
610 streamFile->
file = file;
617 streamFile->
next = 0;
637 if (streamFile->
next == 0)
void ix_dsp_configure(int option, void *value)
void ix_dsp_shutdown(void)
void *__cdecl * pIxMalloc(unsigned int)
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_dsps_set_volume(int stream, unsigned short vol)
unsigned int dwIxStreamerStatus
The library's classes and shared declarations.
unsigned int dwStreamBytesPerSecond
CRITICAL_SECTION csStreamer
void ix_file_close(FILE *file)
unsigned int * pStreamerPacketOffsetTable
DWORD dwIxStreamerThreadId
void ix_streamer_close_file(IxStreamFile *streamFile)
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
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
unsigned int dwIxStreamerAudioBufferSize
void ix_log_printf(const char *fmt,...)
void ix_file_seek(FILE *file, long position)
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)
unsigned char ix_streamer_get_intensity(void)
IxStreamFile * ix_streamer_open_file(unsigned char *name, unsigned char priority)
unsigned char bStreamerIntensityLevel
unsigned int nStreamCallStackIndex
CRITICAL_SECTION csStreamerFileList
unsigned int nStreamerAudioBlock
IxStreamFile * pStreamReadRequests
CRITICAL_SECTION csIxStreamerThread
long ix_file_size(FILE *file)
unsigned char * pStreamerLzoBuffer
IxStreamerHeader * pStreamerPackageInfo
IxStreamerBranch * pMusicStreamBranchList
@ IX_STREAMER_DSP_PLAYING
@ IX_STREAMER_DEVELOPER_MODE
@ IX_STREAMER_AUDIO_PAUSED
@ IX_STREAMER_AUDIO_PLAYING
@ IX_STREAMER_REPREPARE_AUDIO
@ IX_STREAMER_INITIALIZED
unsigned short nStreamerVolume
HANDLE hStreamerWakeupEvent
unsigned int dwUnusedStreamerWord
void ix_stream_file_wait(void)
IxStreamerFileEntry * entry
unsigned int triggerCount
unsigned int firstTrigger
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)
char ix_streamer_get_trigger(void)
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)