gpt4 book ai didi

android - 在 Android 上使用 SoundPool 进行无缝循环?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:45:53 25 4
gpt4 key购买 nike

我正在尝试使用 SoundPool 类循环短 (20kb)、无缝的 ogg 文件,但在硬件上测试时无法获得一致的结果。它始终使用模拟器完美播放,但当我在 Nexus 1 或 Samsumg Galaxy Tab 10.1 上测试时,在每个循环点都会听到爆裂声或咔哒声。非常奇怪的是,虽然在应用程序启动后保持一致,但每次我重新启动应用程序时点击次数都略有不同,并且在极少数情况下(在平板电脑上更频繁)循环播放正确。

使用 MediaPlayer 结果也好不到哪里去。期望在 android 上无缝播放音频循环是不合理的吗?肯定有人有类似的功能正常工作吗?如果是这样,我很想看看它是如何工作的一个例子。

谢谢!

最佳答案

我使用了一种适用于单个文件的技巧:

HACK_loopTimer = new Timer();
HACK_loopTask = new TimerTask() {
@Override public void run() {
mMediaPlayer.seekTo(0);
}
};
long waitingTime = mMediaPlayer.getDuration()-mHackLoopingPreview;
HACK_loopTimer.schedule(HACK_loopTask, waitingTime, waitingTime);

只需将mHackLoopingPreview设置为合理的数量;我正在使用 100ms,它工作正常。我不得不承认这是一个不太理想且丑陋的解决方案,但至少它完成了它的工作。

关于android - 在 Android 上使用 SoundPool 进行无缝循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8631717/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com