所以我想为Android做一个新的音乐播放器,它将是开源的,如果你认为这个想法是好的,可以让我知道,也许我们可以在上面工作。
我知道这是有可能的,加快和放慢一首歌曲,并使声音正常化,使声音和乐器仍然保持相同的音高。
我想为Android做一个针对慢跑者的媒体播放;
manually
自动发出通知。
现在我知道很多用例都会失败(慢歌听起来很愚蠢,歌曲中的变化被搞砸了),但我觉得它们是可以克服的。我真正需要知道的是如何开始用C++ (使用Android )编写应用程序,这将执行分析并调整流。
在飞行中这样做是否可行?你会用什么方法?流到电话的服务器?也许离线分析桌面上的歌曲,通过绳索同步到你的设备上?
如果这是太多的问题,一个帖子,我最感兴趣的是,最简单的方法,分析一个波的MP3,以找到拍子。除此之外,如何进行操作,改变节拍,将是我下一个感兴趣的问题。
我有一个小烂mp3播放器,可以做双速的飞行,所以我相信这是可以做到的!
盖夫
发布于 2009-07-23 15:07:46
这在技术上是可行的,在智能手机类型的设备,虽然它是非常困难的,以达到良好的音高转换和时间拉伸的效果,即使是在一个强大的个人电脑,而不是在实时。
在功能相对强大的移动设备上(我在三星i760智能手机上使用i760 CF实现了这一功能),无需对处理器过度征税(简单的版本并不比普通的MP3回放昂贵得多),就可以实现音高转换和时间拉伸。效果不是很好,但如果球场和时间的变化相对较小的话,听起来也不算太糟。
自动确定歌曲的节奏可能太费时,无法实时完成,但这部分过程可以在播放之前执行,也可以在当前歌曲播放完成之前在下一首歌曲上完成。我自己从来没做过,所以我不知道。
你提到的其他事情都是相对容易做的。然而:我不知道Android的API在音频输出方面有多容易,甚至不知道它是否允许这个项目所需的低级别音频播放。
发布于 2009-07-23 14:30:34
实际上,你会有两个问题:
如果你真的想在这方面工作,我建议从电气工程系选修一门信号和系统课程。
也许一个更简单的想法:在用户库中找到所有歌曲的节奏,然后专注于以接近慢跑者的节奏播放歌曲。你仍然需要做第一,但你不需要担心#2。
发布于 2009-07-23 22:52:10
在飞行中改变音频速度是绝对可行的;我不确定它在G1上是否可行。
我建议您不要编写自己的源代码,而应该查看MythTV源代码和/或mplayer源代码。它们都支持加速视频播放,同时对音频进行补偿。
https://stackoverflow.com/questions/1171988
复制相似问题