Android卡拉OK文本?

Android卡拉OK文本?,android,Android,在过去的一周里,我一直在挠头,想对文本产生这样的影响。 如果有人能给我一些关于如何做到这一点的提示、指导或教程,那就太好了 感谢阅读和回答=D如果您只想播放带有视频和声音的电影,a可以轻松做到这一点 所以我假设你实际上是在谈论将某种动画显示与单独播放的声音文件同步。我们使用MediaPlayer并在动画循环中轮询getCurrentPosition。这或多或少是可行的,但也有一些严重的问题需要克服。(所有这些都涉及播放mp3文件;我们没有尝试任何其他音频格式) 首先,您的mp3必须以44100

在过去的一周里,我一直在挠头,想对文本产生这样的影响。 如果有人能给我一些关于如何做到这一点的提示、指导或教程,那就太好了


感谢阅读和回答=D

如果您只想播放带有视频和声音的电影,a可以轻松做到这一点

所以我假设你实际上是在谈论将某种动画显示与单独播放的声音文件同步。我们使用MediaPlayer并在动画循环中轮询
getCurrentPosition
。这或多或少是可行的,但也有一些严重的问题需要克服。(所有这些都涉及播放mp3文件;我们没有尝试任何其他音频格式)

首先,您的mp3必须以44100 Hz的采样率录制。否则,
getCurrentPosition
返回的值就不正确了。(我们认为它是按实际采样率与44100的比率来缩放的,但我们没有验证这个假设。)128000的比特率似乎效果最好


其次,更严重的是,
getCurrentPosition
返回的值似乎随着时间的推移从设备发出的声音中消失。大约45秒后,这开始非常明显。更糟糕的是,这种漂移在不同的操作系统级别上是显著不同的(但总是存在的),可能在不同的设备之间也是如此。(我们在2.1和2.2中对模拟器和真实设备进行了测试,在3.0中对模拟器进行了测试。)我们怀疑存在某种缓冲问题,但无法真正诊断它。我们的工作是将较长的mp3文件分解为短片段,并将其播放链接起来。大量的簿记使人恼火。这仍在测试中,但到目前为止,它似乎已经起作用。

Ted Hopp:MP3文件上的时间漂移可能是由于这些MP3文件是VBR。我开发卡拉OK应用已经有一段时间了,几乎所有的工具包——从Qt Phonon到ffmpeg——都在报告可变MP3文件的正确音频位置时遇到问题。我认为这是因为他们都试图通过使用解码帧数来计算当前音频位置,这使得VBR MP3不可靠。我以一种用户友好的方式在


不幸的是,我找到的唯一解决办法是将MP3重新编码到CBR。另一种方法是完全放弃当前位置,只依赖系统时钟。这实际上为VBR MP3生成了更好的结果,但仍然不如将它们重新编码到CBR中。

不,不是电影播放器。我想将卡拉OK效果应用于文本视图或画布绘制,但希望只是文本视图。我用歌词同步mp3没有问题,但我就是不能应用卡拉OK效果(比如突出显示字母的一半或一半)。目前我正在使用setSpan,它迫使我一次突出显示一个字母,但这看起来有点笨重。我误解了你的问题所在。我会不假思索地建议:首先,把所有的文字都画成白色;然后在画布中设置一个剪切区域,以仅覆盖表示当前播放时间的部分文本,并再次绘制所有文本,但这次是彩色的。事倍功半,乐趣倍增。:)