什么是Qt相当于SDL音频?

时间:2012-08-07 06:45:35

标签: qt ffmpeg sdl

有一个旧代码使用SDL音频输出音乐。我将它移植到Qt,我想用原生Qt音频API替换SDL音频。

最简单的说法是:

...
// Initialization
wanted_spec.callback = sdl_audio_callback;
SDL_OpenAudio(&wanted_spec, &spec);
...

// copies raw data to audio buffer
static void sdl_audio_callback(void *opaque, Uint8 *stream, int len)

我应该使用Qt的哪个音频Api?没有涉及视频

2 个答案:

答案 0 :(得分:2)

通常您会使用更高级别的Phonon模块,here是它的API文档。但是因为您正在处理原始样本,所以需要较低级别QtMultimedia模块,特别是QAudioOutput类。文档here

答案 1 :(得分:1)

<强> SFML - Simple and Fast Multimedia Library

  

主要功能:

     

便携式 SFML在Windows(98,2000,XP,Vista)和Unix系统(Linux,Mac OS X)等标准平台上进行编译。作为图书馆   长大后,将增加对更多操作系统的支持。

     

面向对象 SFML是用C ++编写的,提供了一种高效的面向对象设计。它依赖于标准模式和习语   提供一个简单而强大的框架。

     

易于使用 SFML旨在易于操作。努力放在内部代码上,以提供最简单的公共接口。

     

灵活 SFML不是一个大的API,而是包含许多小包,可以根据需要选择和组合   预期用途。您只能使用基础包来获取输入和   窗口,以及带有精灵和的完整图形包   后的效果。

     

易于集成 SFML可以在一个或多个窗口中使用,和/或可以集成到现有的界面组件中。与...整合   现有的图形用户界面(GUI)库很容易,所以你   可以将SFML视图添加到使用Qt,wxWidgets构建的复杂接口中,   MFC或其他什么。

希望这有帮助。