【发布时间】:2019-03-05 20:29:00
【问题描述】:
我正在开发一款节奏游戏,它的一个特点是每次完成一局后,背景音轨都会提高播放速度。目前,我正在为每个背景音轨生成具有不同节奏的不同 pcm 文件。不幸的是,这会显着增加应用程序的大小。我在想是否有什么方法可以使用双簧管来改变它的播放速度?有没有人试过这个?您能否为我指出如何使用 ndk 执行此操作的正确方向?感谢帮助
【问题讨论】:
标签: android android-ndk audio-player oboe
我正在开发一款节奏游戏,它的一个特点是每次完成一局后,背景音轨都会提高播放速度。目前,我正在为每个背景音轨生成具有不同节奏的不同 pcm 文件。不幸的是,这会显着增加应用程序的大小。我在想是否有什么方法可以使用双簧管来改变它的播放速度?有没有人试过这个?您能否为我指出如何使用 ndk 执行此操作的正确方向?感谢帮助
【问题讨论】:
标签: android android-ndk audio-player oboe
RhythmGame 示例现在可以使用 FFmpeg,它在提取压缩资产时支持重新采样 (full article here)。
您可以specify a different sample rate here 并在每一轮中重新提取压缩音频。
另一种解决方案是使用 FFmpeg 中的 libresample 动态重新采样已经提取的音频。
【讨论】:
在 onAudioReady 回调中渲染 sampledata 时,是否可以增加跳过的数据量?例如,如果您想以两倍的速度运行,请跳过备用样本。定点数学允许您选择任何输出速率。
【讨论】: