AudioSamplePtr ETHAudioResourceManager::AddFile(AudioPtr audio, const str_type::string &path, const GS_SAMPLE_TYPE type) { if (!m_resource.empty()) { str_type::string fileName = ETHGlobal::GetFileName(path); std::map<str_type::string, AudioSamplePtr>::iterator iter = m_resource.find(fileName); if (iter != m_resource.end()) return iter->second; } AudioSamplePtr pSample; str_type::string fixedName(path); Platform::FixSlashes(fixedName); if (!(pSample = audio->LoadSampleFromFile(fixedName, type))) { pSample.reset(); ETH_STREAM_DECL(ss) << GS_L("(Not loaded) \"") << fixedName << GS_L("\""); ETHResourceProvider::Log(ss.str(), Platform::Logger::ERROR); return AudioSamplePtr(); } //#ifdef _DEBUG str_type::string fileName = ETHGlobal::GetFileName(path); ETH_STREAM_DECL(ss) << GS_L("(Loaded) ") << fileName; ETHResourceProvider::Log(ss.str(), Platform::Logger::INFO); //#endif m_resource[fileName] = pSample; return pSample; }
AudioSamplePtr AndroidAudioContext::LoadSampleFromFile( const str_type::string& fileName, const Platform::FileManagerPtr& fileManager, const Audio::SAMPLE_TYPE type) { AudioSamplePtr sample = AudioSamplePtr(new AndroidAudioSample); sample->LoadSampleFromFile(weak_this, fileName, fileManager, type); return sample; }
AudioSamplePtr AudiereContext::LoadSampleFromFileInMemory(void *pBuffer, const unsigned int bufferLength, const GS_SAMPLE_TYPE type) { AudioSamplePtr audio = AudioSamplePtr(new AudiereSample); if (!audio->LoadSampleFromFileInMemory(weak_this, pBuffer, bufferLength, type)) { return AudioSamplePtr(); } return audio; }
AudioSamplePtr AudiereContext::LoadSampleFromFile(const std::wstring& fileName, const Platform::FileManagerPtr& fileManager, const GS_SAMPLE_TYPE type) { AudioSamplePtr audio = AudioSamplePtr(new AudiereSample); if (!audio->LoadSampleFromFile(weak_this, fileName, fileManager, type)) { return AudioSamplePtr(); } return audio; }
bool ETHScriptWrapper::IsSamplePlaying(const str_type::string &file) { Platform::FileIOHubPtr fileIOHub = m_provider->GetFileIOHub(); AudioSamplePtr pSample = m_provider->GetAudioResourceManager()->GetPointer(m_provider->GetAudio(), fileIOHub, file, GS_L(""), GSST_UNKNOWN); if (!pSample) { ShowMessage(GS_L("File not found: ") + file, ETH_ERROR, false); return false; } return pSample->IsPlaying(); }
AudioSamplePtr IrrKlangAudio::LoadSampleFromFile( const str_type::string& fileName, const Platform::FileManagerPtr& fileManager, const Audio::SAMPLE_TYPE type) { AudioSamplePtr audio = AudioSamplePtr(new IrrKlangAudioSample); if (!audio->LoadSampleFromFile(weak_this, fileName, fileManager, type)) { return AudioSamplePtr(); } return audio; }
AudioSamplePtr IrrKlangAudio::LoadSampleFromFileInMemory( void *pBuffer, const unsigned int bufferLength, const Audio::SAMPLE_TYPE type) { AudioSamplePtr audio = AudioSamplePtr(new IrrKlangAudioSample); if (!audio->LoadSampleFromFileInMemory(weak_this, pBuffer, bufferLength, type)) { return AudioSamplePtr(); } return audio; }
bool ETHScriptWrapper::SetSampleVolume(const str_type::string &file, const float volume) { Platform::FileIOHubPtr fileIOHub = m_provider->GetFileIOHub(); AudioSamplePtr pSample = m_provider->GetAudioResourceManager()->GetPointer(m_provider->GetAudio(), fileIOHub, file, GS_L(""), GSST_UNKNOWN); if (!pSample) { ShowMessage(GS_L("File not found: ") + file, ETH_ERROR, false); return false; } const float volumeFix = Max(Min(volume, 1.0f), 0.0f); pSample->SetVolume(volumeFix); return true; }
AudioSamplePtr AndroidAudioContext::LoadSampleFromFile(const str_type::string& fileName, const GS_SAMPLE_TYPE type) { AudioSamplePtr sample = AudioSamplePtr(new AndroidAudioSample); sample->LoadSampleFromFile(weak_this, fileName, type); return sample; }