Qt 5.1 或更高版本:
我需要播放频率为 x 的通知声音 n 毫秒。如果我能像这样组合音调那就太好了:1000Hz 2 秒,然后 3000Hz 1 秒,..
最简单的方法是使用文件(WAV、MP3、..),例如如下所述:如何使用 Qt 播放声音但是我必须为每个场景生成这样的文件。
Qt 的音频输出示例在内存中生成此类音调 ( Generator::generateData(const QAudioFormat &format, qint64 durationUs, int sampleRate))。我可以为我的目的编写这样一个生成器。但我必须这样做吗?
那么,仅播放频率 x n 毫秒的最简单方法是什么?
我用C / C ++编写代码已经有一段时间了,我已经找到解决问题的替代方法,但是我想知道为什么原始代码不起作用。
我有一个测试类,基本上只存储一个字符串。
class test {
private:
std::string name;
public:
test(std::string name) : name(name) {};
std::string get_name() { return name; }
};
Run Code Online (Sandbox Code Playgroud)
在其中,main我有一个向量,我有时会用test对象填充。下面的代码模拟了vector的不规则用法vect。
int main(void) {
std::vector<test *> vect;
std::vector<test *>::iterator i;
//* Comment this for a working example
std::cout << "Searching empty vector" << std::endl;
i = *(_is_in_vector(vect, std::string("test 3")));
if (i == vect.end()) {
std::cout << "Nothing found" << std::endl;
} // */
vect.push_back(new test("test 1"));
vect.push_back(new test("test 2"));
vect.push_back(new …Run Code Online (Sandbox Code Playgroud)