【发布时间】:2009-07-23 14:03:37
【问题描述】:
所以我想为 Android 制作一个新的音乐播放器,它将是开源的,如果您认为这个想法有什么好处,请随时告诉我,也许我们可以继续努力。
我知道可以加快和减慢一首歌曲的速度,并使声音正常化,以使人声和乐器仍然达到相同的音高。
我想为 Android 制作一个针对慢跑者的媒体播放器;
- 击败比赛连续歌曲
- 保持恒定的节拍以进行跑步
- 可以通过加速度计或手动确定节拍
- 在运行点(地理定位或计时器)自动发出警报和通知
现在我知道这会因许多用例而失败(慢歌听起来很愚蠢,歌曲中的节拍变化变得混乱),但我觉得它们是可以克服的。我真正需要知道的是如何开始用 C++ 编写一个应用程序(使用 Android NDK)来执行分析和调整流。
即时执行此操作是否可行?你会使用什么方法?流到手机的服务器?也许可以离线分析桌面上的歌曲并通过系链同步到您的设备?
如果一个帖子的问题太多了,我最感兴趣的是分析 MP3 的波形以找到节拍的最简单方法。最重要的是,如何进行操作,改变节拍,将是我的下一个兴趣点。
我有一个很小的蹩脚的 mp3 播放器,它可以在运行中实现双倍速度,所以我相信它可以做到!
Gav
【问题讨论】:
-
进行精确的 2X 速度播放(不提高音高)可以比任意(例如 1.1032X 或 0.92345X)移动播放快得多,这就是糟糕的设备这样做的原因。
-
很抱歉再次提出一个老问题,但您有没有这样做过?我有兴趣看到一些可以实现这一目标的代码。谢谢