Exemple #1
0
// \brief Loads a wav file by filename
bool CGUISound::Load(const CStdString& strFile)
{
#ifndef HAS_SDL_AUDIO
  LPBYTE pbData=NULL;
  WAVEFORMATEX wfx;
  int size=0;
  if (!LoadWav(strFile, &wfx, &pbData, &size))
    return false;

  bool bReady=(CreateBuffer(&wfx, size) && FillBuffer(pbData, size));

  if (!bReady)
    FreeBuffer();

  delete[] pbData;

  return bReady;
#else
  m_soundBuffer = Mix_LoadWAV(strFile);
  if (!m_soundBuffer)
    return false;
    
  return true;    
#endif
}
int AudioManager::LoadSound(char *_filename)
{
	map<char*, unsigned int>::iterator it;
	
	it = soundMap.find(_filename);

	if (it == soundMap.end())
	{
		unsigned int count = 0;

		while(true)
		{
			if(_filename[count] == '.')
			{
				count++;
				break;
			}
			count++;
		}

		if(!strcmp(_filename+count, "wav") || !strcmp(_filename+count, "WAV"))
			if(!LoadWav(_filename))
				return -1;

		//should probably load .ogg's for compressed audio

		return sounds.size()-1;
	}else
		return it->second;

	return false;
}
void Load(int i, const char* pPath)
{
    if (g_UseSoundPool)
        g_Samples[i] = s3eSoundPoolSampleLoad(pPath);
    else
        g_SampleData[i] = LoadWav(pPath, &g_SampleDataLen[i]);
}
Exemple #4
0
static CSample *LoadSample(const char *name, enum _play_audio_flags_ flag)
{
	CSample *sampleWav = LoadWav(name, flag);

	if (sampleWav) {
		return sampleWav;
	}
#ifdef USE_VORBIS
	CSample *sampleVorbis = LoadVorbis(name, flag);
	if (sampleVorbis) {
		return sampleVorbis;
	}
#endif
#ifdef USE_MIKMOD
	CSample *sampleMikMod = LoadMikMod(name, flag);
	if (sampleMikMod) {
		return sampleMikMod;
	}
#endif
#ifdef USE_FLUIDSYNTH
	CSample *sampleFluidSynth = LoadFluidSynth(name, flag);
	if (sampleFluidSynth) {
		return sampleFluidSynth;
	}
#endif
	return NULL;
}
Exemple #5
0
int AalibLoad(char* filename,int channel,bool loadToRam)
{
	if ((channel<1)||(channel>48))
	{
		return PSPAALIB_ERROR_INVALID_CHANNEL;
	}
	memset(channels[channel].effects,0,7);
	channels[channel].position=(ScePspFVector2){0.0f,0.0f};
	channels[channel].velocity=(ScePspFVector2){0.0f,0.0f};
	channels[channel].playSpeed=1.0f;
	channels[channel].volume=(AalibVolume){1.0f,1.0f};
	channels[channel].ampValue=1.0f;
	channels[channel].initialized=TRUE;
	if ((PSPAALIB_CHANNEL_WAV_1<=channel)&&(channel<=PSPAALIB_CHANNEL_WAV_32))
	{
		return LoadWav(filename,channel-PSPAALIB_CHANNEL_WAV_1,loadToRam);
	}
	if ((PSPAALIB_CHANNEL_OGG_1<=channel)&&(channel<=PSPAALIB_CHANNEL_OGG_10))
	{
		return LoadOgg(filename,channel-PSPAALIB_CHANNEL_OGG_1,loadToRam);
	}
	if ((PSPAALIB_CHANNEL_SCEMP3_1<=channel)&&(channel<=PSPAALIB_CHANNEL_SCEMP3_2))
	{
		return LoadSceMp3(filename,channel-PSPAALIB_CHANNEL_SCEMP3_1);
	}
	if ((PSPAALIB_CHANNEL_AT3_1<=channel)&&(channel<=PSPAALIB_CHANNEL_AT3_2))
	{
		return LoadAt3(filename,channel-PSPAALIB_CHANNEL_AT3_1);
	}
	return PSPAALIB_ERROR_INVALID_CHANNEL;
}
Exemple #6
0
bool Sound::BeginLoad(Deserializer& source)
{
    PROFILE(LoadSound);
    
    bool success = false;
    if (GetExtension(source.GetName()) == ".ogg")
        success = LoadOggVorbis(source);
    else if (GetExtension(source.GetName()) == ".wav")
        success = LoadWav(source);
    else
        success = LoadRaw(source);
    
    // Load optional parameters
    if (success)
        LoadParameters();
    
    return success;
}
Exemple #7
0
void AudioTest()
{
	int ch, sr, bps, wavsize;
	void *wavdata = LoadWav( "blowraspberry.wav", ch, sr, bps, wavsize );

	list_audio_devices(_alcGetString(NULL, ALC_DEVICE_SPECIFIER));

	const ALCchar *defaultDeviceName = _alcGetString(NULL, ALC_DEFAULT_DEVICE_SPECIFIER);
	ALCdevice *device = _alcOpenDevice(defaultDeviceName);

	ALCcontext *context = _alcCreateContext(device, NULL);
	_alcMakeContextCurrent(context);

	_alListener3f(AL_POSITION, 0, 0, 1.0f);
   	_alListener3f(AL_VELOCITY, 0, 0, 0);
	
	ALfloat listenerOri[] = { 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f };
	ALuint buffer, source;
	
	_alListenerfv(AL_ORIENTATION, listenerOri);
	_alGenSources((ALuint)1, &source);
	_alSourcef(source, AL_PITCH, 1);
	_alSourcef(source, AL_GAIN, 1);
	_alSource3f(source, AL_POSITION, 0, 0, 0);
	_alSource3f(source, AL_VELOCITY, 0, 0, 0);
	_alSourcei(source, AL_LOOPING, AL_FALSE);
	_alGenBuffers(1, &buffer);
	_alBufferData(buffer, AL_FORMAT_MONO8, wavdata, wavsize, sr);

	ALint source_state;
	_alSourcei(source, AL_BUFFER, buffer);
	_alSourcePlay(source);
	_alGetSourcei(source, AL_SOURCE_STATE, &source_state);
	while (source_state == AL_PLAYING) {
		_alGetSourcei(source, AL_SOURCE_STATE, &source_state);
	}
}
/*
========================
idSoundSample_XAudio2::Load
========================
*/
void idSoundSample_XAudio2::LoadResource() {
	FreeData();

	if ( idStr::Icmpn( GetName(), "_default", 8 ) == 0 ) {
		MakeDefault();
		return;
	}

	if ( s_noSound.GetBool() ) {
		MakeDefault();
		return;
	}

	loaded = false;

	for ( int i = 0; i < 2; i++ ) {
		idStrStatic< MAX_OSPATH > sampleName = GetName();
		if ( ( i == 0 ) && !sampleName.Replace( "/vo/", va( "/vo/%s/", sys_lang.GetString() ) ) ) {
			i++;
		}
		idStrStatic< MAX_OSPATH > generatedName = "generated/";
		generatedName.Append( sampleName );

		{
			if ( s_useCompression.GetBool() ) {
				sampleName.Append( ".msadpcm" );
			} else {
				sampleName.Append( ".wav" );
			}
			generatedName.Append( ".idwav" );
		}
		loaded = LoadGeneratedSample( generatedName ) || LoadWav( sampleName );

		if ( !loaded && s_useCompression.GetBool() ) {
			sampleName.SetFileExtension( "wav" );
			loaded = LoadWav( sampleName );
		}

		if ( loaded ) {
			if ( cvarSystem->GetCVarBool( "fs_buildresources" ) ) {
				fileSystem->AddSamplePreload( GetName() );
				WriteAllSamples( GetName() );

				if ( sampleName.Find( "/vo/" ) >= 0 ) {
					for ( int i = 0; i < Sys_NumLangs(); i++ ) {
						const char * lang = Sys_Lang( i );
						if ( idStr::Icmp( lang, ID_LANG_ENGLISH ) == 0 ) {
							continue;
						}
						idStrStatic< MAX_OSPATH > locName = GetName();
						locName.Replace( "/vo/", va( "/vo/%s/", Sys_Lang( i ) ) );
						WriteAllSamples( locName );
					}
				}
			}
			return;
		}
	}

	if ( !loaded ) {
		// make it default if everything else fails
		MakeDefault();
	}
	return;
}