本文整理汇总了C++中Wav类的典型用法代码示例。如果您正苦于以下问题:C++ Wav类的具体用法?C++ Wav怎么用?C++ Wav使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Wav类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: DERROR
bool ProgramState::dumpToFile()
{
if(!runningDump())
{
DERROR("not running dump");
return false;
}
Wav w;
w.make(wavdump->getBytes(),dumpoff*2 /*bytes*/,getSampleRate(),nchan,16);
string fname = running_dump_name;
DASSERT(fname.size()>0);
w.save(fname,true);
cout << "wrote: " << fname.c_str() << endl;
w.del();
delete wavdump;
wavdump=NULL;
dumplen=0;
return true;
}
开发者ID:tenso,项目名称:subphonic,代码行数:25,代码来源:progstate.cpp
示例2: create
///
/// オーディオリソース生成
AudioResourcePtr AudioResource::create(
const t3::File& file ///< ファイル
) {
// とりあえず.wavだけサポート
Wav wav;
wav.setup(file);
// リソース生成
AudioResourcePtr res;
res.reset(T3_SYS_NEW AudioResource);
res->resourceName(file.name().c_str());
res->setupBuffer(wav);
res->createHandle();
return res;
}
开发者ID:doscoy,项目名称:tri_engine,代码行数:17,代码来源:tri_audio_resource.cpp
示例3: T3_ASSERT_MSG
///
/// オーディオリソース生成
AudioResourcePtr AudioResource::create(
FilePath& filepath ///< ファイルパス
) {
// 未サポート判定
T3_ASSERT_MSG(filepath.ext() == ".wav", "%s is not support. only supported .wav", filepath.filename().c_str());
// とりあえず.wavだけサポート
Wav wav;
wav.load(filepath);
// リソース生成
AudioResourcePtr res;
res.reset(T3_SYS_NEW AudioResource);
res->setupBuffer(wav);
res->resourceName(filepath.filename().c_str());
res->createHandle();
return res;
}
开发者ID:doscoy,项目名称:tri_engine,代码行数:20,代码来源:tri_audio_resource.cpp
示例4: T3_SYSTEM_LOG
///
/// バッファ構築
void AudioResource::setupBuffer(
const Wav& wav ///< 元となるサウンドデータ
) {
// オーディオフォーマット調査
cross::AudioSystem::AudioFormat format;
if (wav.channel() == 1) {
// モノラル
if (wav.bitPerSample() == 8) {
format = cross::AudioSystem::AudioFormat::MONO_8;
}
else {
format = cross::AudioSystem::AudioFormat::MONO_16;
}
}
else {
// ステレオ
if (wav.bitPerSample() == 8) {
format = cross::AudioSystem::AudioFormat::STEREO_8;
}
else {
format = cross::AudioSystem::AudioFormat::STEREO_16;
}
}
// バッファ生成
cross::AudioSystem::setBufferData(
id_,
format,
wav.getData(),
wav.size(),
wav.samplingRate()
);
// 生成ログ出力
T3_SYSTEM_LOG("create Wav\n");
T3_SYSTEM_LOG(" channel %d\n", wav.channel());
T3_SYSTEM_LOG(" bit sample %d\n", wav.bitPerSample());
T3_SYSTEM_LOG(" rate %d\n", wav.samplingRate());
T3_SYSTEM_LOG(" size %d\n", wav.size());
}
开发者ID:doscoy,项目名称:tri_engine,代码行数:44,代码来源:tri_audio_resource.cpp
示例5: Wav_set3dDopplerFactor
void Wav_set3dDopplerFactor(void * aClassPtr, float aDopplerFactor)
{
Wav * cl = (Wav *)aClassPtr;
cl->set3dDopplerFactor(aDopplerFactor);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例6: Wav_set3dAttenuation
void Wav_set3dAttenuation(void * aClassPtr, unsigned int aAttenuationModel, float aAttenuationRolloffFactor)
{
Wav * cl = (Wav *)aClassPtr;
cl->set3dAttenuation(aAttenuationModel, aAttenuationRolloffFactor);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例7: Wav_stop
void Wav_stop(void * aClassPtr)
{
Wav * cl = (Wav *)aClassPtr;
cl->stop();
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例8: Wav_setInaudibleBehavior
void Wav_setInaudibleBehavior(void * aClassPtr, int aMustTick, int aKill)
{
Wav * cl = (Wav *)aClassPtr;
cl->setInaudibleBehavior(!!aMustTick, !!aKill);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例9: Wav_set3dColliderEx
void Wav_set3dColliderEx(void * aClassPtr, AudioCollider * aCollider, int aUserData)
{
Wav * cl = (Wav *)aClassPtr;
cl->set3dCollider(aCollider, aUserData);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例10: Wav_set3dDistanceDelay
void Wav_set3dDistanceDelay(void * aClassPtr, int aDistanceDelay)
{
Wav * cl = (Wav *)aClassPtr;
cl->set3dDistanceDelay(!!aDistanceDelay);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例11: Wav_loadMemEx
int Wav_loadMemEx(void * aClassPtr, unsigned char * aMem, unsigned int aLength, int aCopy, int aTakeOwnership)
{
Wav * cl = (Wav *)aClassPtr;
return cl->loadMem(aMem, aLength, !!aCopy, !!aTakeOwnership);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例12: Wav_loadMem
int Wav_loadMem(void * aClassPtr, unsigned char * aMem, unsigned int aLength)
{
Wav * cl = (Wav *)aClassPtr;
return cl->loadMem(aMem, aLength);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例13: Wav_load
int Wav_load(void * aClassPtr, const char * aFilename)
{
Wav * cl = (Wav *)aClassPtr;
return cl->load(aFilename);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例14: DERROR
int SampleHold::loadDir(const string& path)
{
ProgramState& progstate = ProgramState::instance();
if(path.size()==0)
{
DERROR("path empty");
return 1;
}
FileDir fd;
bool exist = fd.read(path, false, ".wav", false, false);
if(!exist)
{
DERROR("(E) SampleHold loadDIR(): no such dir!");
return 1;
}
vector<string> files;
fd.getFiles(files);
if(files.size()==0)return 0;
for(unsigned int i=0; i<files.size(); i++)
{
Wav w;
string str=path+files[i];
//FIXME: better errorchecking!
Wav::err ret = w.load(str);
//w.info();
if(ret==Wav::FILE_NOTFOUND_ERR)continue;
//something went wrong but probably file does not exist...
if(!w.ok())
{
DERROR("something wrong happend");
continue;
}
WavSample* samp;
if(w.isStereo())
{
SampleValue* l = new SampleValue(w.makeSample(Wav::EXTRACT_LEFT));
l->setResampleRate(w.getSampleRate(), progstate.getSampleRate());
SampleValue* r = new SampleValue(w.makeSample(Wav::EXTRACT_RIGHT));
r->setResampleRate(w.getSampleRate(), progstate.getSampleRate());
samp = new WavSample(files[i], l,r);
}
else
{
SampleValue* m = new SampleValue(w.makeSample(Wav::EXTRACT_ALL));
m->setResampleRate(w.getSampleRate(), progstate.getSampleRate());
samp = new WavSample(files[i], m);
}
samples.push_back(samp);
w.del();
}
return 0;
}
开发者ID:tenso,项目名称:subphonic,代码行数:68,代码来源:g_wav.cpp
示例15: Wav_set3dProcessing
void Wav_set3dProcessing(void * aClassPtr, int aDo3dProcessing)
{
Wav * cl = (Wav *)aClassPtr;
cl->set3dProcessing(!!aDo3dProcessing);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例16: Wav_set3dListenerRelative
void Wav_set3dListenerRelative(void * aClassPtr, int aListenerRelative)
{
Wav * cl = (Wav *)aClassPtr;
cl->set3dListenerRelative(!!aListenerRelative);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例17: Wav_loadFile
int Wav_loadFile(void * aClassPtr, File * aFile)
{
Wav * cl = (Wav *)aClassPtr;
return cl->loadFile(aFile);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例18: Wav_set3dCollider
void Wav_set3dCollider(void * aClassPtr, AudioCollider * aCollider)
{
Wav * cl = (Wav *)aClassPtr;
cl->set3dCollider(aCollider);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例19: Wav_getLength
double Wav_getLength(void * aClassPtr)
{
Wav * cl = (Wav *)aClassPtr;
return cl->getLength();
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
示例20: Wav_set3dAttenuator
void Wav_set3dAttenuator(void * aClassPtr, AudioAttenuator * aAttenuator)
{
Wav * cl = (Wav *)aClassPtr;
cl->set3dAttenuator(aAttenuator);
}
开发者ID:Itaros,项目名称:soloud,代码行数:5,代码来源:soloud_c.cpp
注:本文中的Wav类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论