android - 卡拉OK播放同步(Android延迟问题)

标签 android audio low-latency superpowered

我正在尝试实现简单的卡拉OK方案:用户可以同时播放声音来录制他的声音(不带耳机)。然后,他可以应用一些过滤器,添加播放,混合并保存到文件中。我将SuperpoweredRecorder和SuperpoweredAdvancedAudioPlayer一起使用,然后再使用SuperpoweredDecoder / createWAV。
最终录音包含2条音轨:1)具有可听播放和某些过滤器的用户语音2)纯播放。
我的问题是,用用户语音录制的回放与离线处理中混合的回放不同步。这是合理的-必须对其进行生成,通过输出(扬声器),通过输入返回(麦克风)进行处理和记录。它被形容为“Android 10ms延迟问题”。
经过分析,我发现延迟会因设备而异,这没关系,但同一台设备上的每条记录也会有所不同。我附加屏幕和值(我在无声室中使用了Metronom来计算它)

(播放滴答声)[ms]-(记录的播放滴答声)[ms](延迟[ms])

三星S8

Samsung

40 - 112 (62)
52 - 117 (65)
40 - 92 (52)
52 - 107 (55)
40 - 97 (57)

华为

Huawei
40 - 216 (176)
40 - 219 (176)
40 - 226 (186)

这个延迟对我来说不是问题,因为正如我所解释的,我可以在脱机处理期间转移它。但是我不知道如何计算(甚至估计)延迟。
你有什么想法吗?测试所有可能的设备并获得平均值在Android上是不可能的,而且可能也不太准确。

提前感谢!

最佳答案

抱歉,主持人删除了我完全有用的答案,因为他们的想法绝对为零。让我们继续通过电子邮件进行讨论。

关于android - 卡拉OK播放同步(Android延迟问题),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54637728/

相关文章:

java - 如何使用 navasmdc/MaterialDesignLibrary?

python - 除非以 super 用户身份运行,否则Pygame音频将无法正常启动

android - 物联网请求响应协议(protocol)

windows - 具有最小延迟的串行通信

java - 使用 HttpClient 发布 JSONObject 时出错

android - 通过通知向 pendingIntent 发送不同的参数

iphone - 如何在 iPhone 上进行实时声音/信号处理?

c++ - 使用 rdtsc 进行基准测试有什么缺点?

android - 如何在 Android 中以编程方式更改 ConstraintLayout subview 的约束?

javascript - 如何解决 audio.play() 的问题?