【问题标题】:WebAudio API: Change pitch of samples (for example mp3)WebAudio API:更改样本的音高(例如 mp3)
【发布时间】:2015-12-30 23:17:25
【问题描述】:

我想我可以使用playbackRate 来拉伸样本,但是如何设置音高?我试图在不使用任何库的情况下实现这一目标。

我在规范中发现了一些关于多普勒音高效应的内容,但除此之外,我找不到任何与我的目标真正相关的内容。只是一个简单的音高转换,这甚至可能吗?如果是那怎么办?

编辑:难道playbackRate 也改变了音高,但浏览器应用了某种修正?我认为可能是这种情况。如果是这样的话,我必须禁用它。

【问题讨论】:

    标签: javascript web-audio-api


    【解决方案1】:

    样本没有“简单”的音调变化。有很多方法可以在不改变播放速率的情况下改变音高——颗粒再合成、相移声码——但这些方法都不是微不足道的,也没有一种方法被嵌入到 Web Audio API 中。 (顺便说一下,Doppler 正在被删除,因为它非常老套。)playbackRate 是样本通过的速率 - 这将影响“速度”和明显的音高(音高样本)。

    我在Input Effects demo 中实现了音高转换(颗粒再合成)效果——使用了jungle.js 库——但这并不是一件容易的事。 HTML 的 <audio> 元素会进行拉伸,但没有指定算法,这让它有很多解释。

    【讨论】:

    • 链接失效建议删除
    • @prasun 链接没有死,只是格式错误。我对其进行了编辑以修复。
    • 糟糕,抱歉。谢谢马克西米利安。
    • @cwilso 一个问题,你愿意在这里看看吗? stackoverflow.com/questions/34482319/…如果你能回答这个问题,我会在2天内奖励你200分
    猜你喜欢
    • 1970-01-01
    • 2013-10-25
    • 2020-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-18
    • 2012-05-15
    • 2022-01-25
    相关资源
    最近更新 更多