【问题标题】:OpenSL multiple tracksOpenSL 多轨
【发布时间】:2013-10-16 02:53:37
【问题描述】:

我一直在尝试为 Android 制作循环踏板。我有 1 条轨道运行良好。我想知道实现多个轨道需要什么样的资源/接口。我正在使用 OpenSL ES,并且我已经阅读了规范文档。

到目前为止的一些想法:

如何在输出混音中包含 n 首曲目?他们不会互相复合吗?我将如何标准化输出组合?录制了一首曲目后,如何将两首曲目合二为一?

为什么这些功能支持不足?我是在滥用图书馆还是使用了错误的图书馆?

我对音乐/声音编程非常感兴趣,并希望熟悉最常用的技术。

【问题讨论】:

    标签: android audio opensl


    【解决方案1】:

    只需将曲目加在一起并将总和发送到输出即可自行混合曲目。最简单的归一化可以通过将总和除以轨道数来实现。

    【讨论】:

    • 这是正确的,但请记住整数求和可能会溢出。最好在浮点中执行此操作,或者至少为中间结果使用更广泛的数据类型(例如 int32_t 而不是 int16_t)。
    猜你喜欢
    • 1970-01-01
    • 2014-05-08
    • 2017-09-30
    • 1970-01-01
    • 2015-04-13
    • 2015-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多