int MP3ME_Load(char *fileName){ MP3ME_filePos = 0; MP3ME_playingSpeed = 0; MP3ME_isPlaying = 0; getcwd(audioCurrentDir, 256); //initFileInfo(&MP3ME_info); strcpy(MP3ME_fileName, fileName); if (MP3MEgetInfo() != 0){ strcpy(MP3ME_fileName, ""); return ERROR_OPENING; } releaseAudio(); if (setAudioFrequency(OUTPUT_BUFFER_SIZE/4, MP3ME_info.hz, 2) < 0){ MP3ME_End(); return ERROR_INVALID_SAMPLE_RATE; } MP3ME_thid = -1; MP3ME_eof = 0; MP3ME_thid = sceKernelCreateThread("decodeThread", decodeThread, THREAD_PRIORITY, DEFAULT_THREAD_STACK_SIZE, PSP_THREAD_ATTR_USER, NULL); if(MP3ME_thid < 0) return ERROR_CREATE_THREAD; sceKernelStartThread(MP3ME_thid, 0, NULL); return OPENING_OK; }
int MP3ME_Load(char * path){ MP3ME_filePos = 0; MP3ME_isPlaying = 0; MP3ME_playingTime = 0; strcpy(MP3ME_Name, path); // Needed for decode thread releaseAudio(); if (setAudioFrequency(OUTPUT_BUFFER_SIZE/4, 44100, 2) < 0){ MP3ME_Stop(); return ERROR_INVALID_SAMPLE_RATE; } MP3ME_eof = 0; MP3ME_thid = sceKernelCreateThread("decodeThread", decodeThread, THREAD_PRIORITY, 0x10000, PSP_THREAD_ATTR_USER, NULL); if(MP3ME_thid < 0) return ERROR_CREATE_THREAD; sceKernelStartThread(MP3ME_thid, 0, NULL); return OPENING_OK; }