代码之家  ›  专栏  ›  技术社区  ›  Ronnie

Symbian/S60音频播放速率

  •  1
  • Ronnie  · 技术社区  · 14 年前

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

    此外,是否可以同时播放两个不同的曲目。想象一段录音,乐器在一个音轨上,声音在另一个音轨上。其中一首曲目应该能够在“实时”中更改播放速率。

    这在Symbian/S60上可行吗?

    1 回复  |  直到 14 年前
        1
  •  1
  •   Gareth Stockwell    14 年前

    这是可能的,但你必须:

    1. 如果音频数据尚未采用此格式,请将其转换为PCM
    2. 在应用程序中处理此PCM流,以更改其播放速率
    3. 通过cmdaaudioutputstream或cmmfdevsound(或)呈现音频 QAudioOutput ,如果使用qt)

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

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