我想在播放歌曲时控制其播放速率。基本上,当我告诉它这样做时,我想让它播放得更快或更慢。

另外,是否可以同时播放两个不同的曲目。想象一下录音时,乐器在一个轨道中,而人声在另一轨道中。这些轨道之一应该能够“实时”改变播放速率。

这在 Symbian/S60 上可行吗?

有帮助吗?

解决方案

这是可能的,但你必须:

  1. 将音频数据转换为 PCM(如果尚未采用此格式)
  2. 在应用程序中处理此 PCM 流,以更改其播放速率
  3. 通过 CMdaAudioOutputStream 或 CMMFDevSound(或 QA音频输出, ,如果您使用的是 Qt)

换句话说,平台本身不提供任何用于更改音频播放速率的 API - 您的应用程序需要直接处理音频流。

至于一起播放多个曲目,根据设备的不同,音频子系统可能允许您使用上述 API 之一同时播放两个或多个流。然而,您可能遇到的问题是它们不太可能同步。因此,您的应用程序可能必须在渲染之前将所有单独的轨道混合到一个流中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top