我正在制作一款游戏,我正在使用midi文件作为背景音乐。这是我目前使用的代码:voidGame::play_music(){//Startthemusic:if(map.levelnumber%2==0){mciSendString(L"openMUSIC01.MIDtypesequenceraliasMusic1",NULL,0,NULL);mciSendString(L"playMusic1",NULL,0,NULL);playing="Music1";}else{mciSendString(L"openMUSIC02.MIDtypesequenceraliasMusic2",NU
我需要制作一个简单的带通音频滤波器。现在我使用了这个简单的C++类:http://www.cardinalpeak.com/blog/a-c-class-to-implement-low-pass-high-pass-and-band-pass-filters效果很好,可以切断所需的strip。但是,当我尝试以较小的步幅更改上限或下限时,在某些限制值上我听到了错误的结果-频率衰减或偏移(与当前限制不对应)的声音。计算脉冲响应的函数:voidFilter::designBPF(){intn;floatmm;for(n=0;n在哪里m_lambda=M_PI*Fl/(Fs/2);m_phi
目前SDL_Mixer有两种声音资源:chunk和music。除了API和支持的格式限制外,是否有任何理由不将音乐作为SDL_Chunk和channel加载和播放?(内存、速度等) 最佳答案 API才是真正的问题。“音乐”API旨在处理流式压缩音乐,而“声音”API则不是。话又说回来,如果你设法让它在你的应用程序中工作,那么它就可以工作。 关于c++-将音乐作为SDL_Mixerblock运行,我们在StackOverflow上找到一个类似的问题: https
我在业余时间是个super英雄,我正在尝试构建一个应用程序来分析口头关键字的音频。(想想紧急/911电话)如果关键字是“抢劫”,并且在提供的音频中说出了这个词,我想标记该文件并可能将其翻译成文本。有哪些开发库或软件应用程序可以执行此类操作?C++或Java库是首选,但不是必需的。 最佳答案 维基页面here是一个很好的起点。我认为在那里提到的那些CMUSphinx是最活跃的。 关于java-哪些库可用于分析口语关键字和/或语音到文本的音频文件?,我们在StackOverflow上找到一个
我有几个简单的C++类,例如:classAudio{public:Audio(constchar*filename,boolasync=true);~Audio();Audio*play(intfade=0);Audio*pause();Audio*loop(intloops=-1);Audio*volume(floatvolume);我已经在JavaScript中复制了如下结构:varAudio=function(filename,async){};Audio.prototype.Play=function(fade){};Audio.prototype.Pause=functi
所以我在长期中断后开始使用C++,我想创建一个程序,该程序可以在运行时根据数字字符串生成音乐(受到某些人完成的compositionofPi的启发),最终目标是某种程序音乐生成软件。到目前为止,我已经能够使用Beep()函数制作一个非常原始的版本,并且只输入Pi的第一个某某数字作为测试。就像一个魅力。我现在正在寻找的是如何将它提升一个档次并获得更高质量的声音(因为Beep()确实是最原始的声音......曾经)我意识到我完全没有想法如何做到这一点。我需要的是一个库或某种API,它可以:1)在没有预先存在的文件的情况下生成声音。我希望结果100%由代码生成,而不依赖于任何样本,这是最优的
我有一个关于我正在开发的声音合成应用程序的问题。我正在尝试读取一个音频文件,使用granularsynthesistechniques创建随机的“grains”,将它们放入输出缓冲区,然后能够使用OpenAL将其回放给用户。出于测试目的,我只是将输出缓冲区写入一个文件,然后我可以回听。从我的结果来看,我在正确的轨道上,但我遇到了一些混叠问题和播放声音,这些问题似乎不太正确。输出文件中间通常会发出相当响亮的爆破声,而且音量有时非常大。以下是我为获得所需结果而采取的步骤,但我对一些事情有点困惑,即我为AudioStreamBasicDescription指定的格式。从我的mainBundl
我想近乎实时地更改立体声音频流的速度-音频是从文件加载的,缓冲区不应超过1秒。我试过SoundTouch(http://www.surina.net/soundtouch/)但降低速度时的质量非常差。现在我正在寻找其他方法来延长音频信号的时间。在Audacity中实现的一种产生非常好的结果的方法是基于“子带正弦建模”,但它非常慢。然后是RubberBand音频处理器库(http://breakfastquay.com/rubberband)和Dirac(http://www.dspdimension.com/technology-licensing/dirac/),它们都是商业/GPL
我目前正在使用C++中的openFrameworks编写程序音乐引擎。我可以生成一首歌曲并从标准化(-1到1之间)的浮点缓冲区完美播放它,但是当我尝试将相同的浮点缓冲区写入32位.WAV时,我遇到了几个问题文件。当我在Finder的预览中播放文件时(我在OSX10.9.2上),整个歌曲持续时间的播放都极度削波和失真。它似乎能够很好地读取格式,因为它显示了正确的文件持续时间、比特率和采样率http://i.stack.imgur.com/fz2w8.png.奇怪的是,当我将同一个文件拖到LogicProX中时,它可以正常读取、成功转换并且播放时没有失真。它还会生成一个波形显示,我可以在其
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找书籍、工具、软件库、教程或其他场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,请描述问题以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我有.ogg文件,我想将其解码为原始音频数据。我阅读了libvorbis的文档,但它非常简短且不清楚。我不明白!我应该使用什么libvorbis或libogg?还是别的?