问题标签 [pitch-shifting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
30 浏览

pitch-shifting - 您如何使用 SoundTouch 对资产文件夹中的 .mp3 或 .wav 进行实时处理?

我查看了 [https://gitlab.com/soundtouch/soundtouch/-/issues/33#note_291115227][1] ,其中表明“您需要应用合适的 mp3 解码器来获取未压缩的音频以馈送至声触”。有谁知道如何做到这一点?

0 投票
0 回答
28 浏览

java - TarsosDSP pitch shifting artifacts

I'm trying to read a .wav file, shift the pitch, and write it to a new file on android. I'm using TarsosDSP to do this, but kept getting weird artifacts in the new file. I tried on a single sine wave and this is how the first few samples of the files compare: image comparison

Orange being the original file, blue generated by tarsos. As far as I can tell, I have no processing differences compared to the pitch shift example on github. this is my code:

and:

I tried making actual change to the sound (cents != 0) but the results didn't get better. Do I have to hope the artifacts always become unnoticable in real recordings, or is there a way to fix this? I'm very new to audio processing.

0 投票
0 回答
29 浏览

python - 将音频从一个频率范围转移到另一个频率范围

我希望能够在 Python 中将音频从一个任意频率范围转换和缩放到另一个频率范围。我看过像 librosa's 这样的选项pitch_shift(),但它似乎仅限于仅沿八度音阶移动,而我希望它能够控制目标和目标频率。例如,我将使用它的一个应用是将 0-5 kHz 范围内的人声更改为 10-20 kHz 范围,然后再返回。对于这种情况,不需要保持原始速度。

0 投票
0 回答
19 浏览

android - Superpowered SDK:如何在文件上应用音高转换然后将其保存到外部存储?

我正在创建一个需要转换音乐文件的 Android 应用程序。我探索了各种库,但 Superpowered SDK 似乎是最有前途的。我可以使用 SuperpoweredAdvancedAudioPlayer 进行音高转换,但由于它只是一个播放器,我看不到任何方法可以在转换音高的情况下保存文件。我查看了录音机,但这意味着我必须完全播放文件。我想要一个解决方案,其中生成具有应用的音高偏移的文件而无需播放它。有办法吗?也向其他图书馆开放。

0 投票
2 回答
197 浏览

javascript - Tone.PitchShift 和 Howler.js 问题

我喜欢在我的 (Meteor) 应用程序中使用 Howler.js。但是,播放速率功能导致了我不想要的音高偏移(我只想要时间拉伸,并保持音高)。因此,我的解决方案是对其实施音高转换以“纠正”音高。看起来很简单,这就是我选择使用https://tonejs.github.io/的原因

唯一的问题是,我一辈子都无法让它正常工作。在阅读了 Web Audio API 和 Tone.js 文档以及在线讨论/疑难解答论坛数小时后,我得到的最接近潜在解决方案的方法是这样的(在我的应用程序渲染期间调用,以防万一问题不得不解决)过早加载):

当我运行它时,我收到以下错误消息:

Tracker afterFlush 函数的异常:meteor.js?hash=857dafb4b9dff17e29ed8498a22ea5b1a3d6b41d:1059 TypeError:无法在“AudioNode”上执行“connect”:重载解析失败。

我还注意到,这些命令下方的 console.log() 命令甚至没有出现在控制台中,这很奇怪。但是,当我删除最后一行(mastergain.connect 到 pShift)时,它们会这样做。

我尝试了一些其他技术,例如https://github.com/mmckegg/soundbank-pitch-shift/(它有效,但无论我放置什么设置,它都会播放音高变化的声音和非音高变化的声音它在),或者只是使用 AudioBufferSourceNode.detune (我不知道如何让它与 Howler.js 一起工作,因为 Howler 只有可以公开 GainNode 和 AudioContext 的函数,无法弄清楚如何在仍然使用 Howler 的同时从那里读取输出)。

任何帮助/线索将不胜感激!

0 投票
0 回答
74 浏览

react-native - React Native 音频改变音高声音音频

我正在寻找 react-native 中的解决方案来更改 iOS 上的音频文件音高,https://github.com/zmxv/react-native-sound看起来就像使用 AVAudioPlayer 一样,这就是为什么不支持在 iOS 上更改音高的原因。所以我的主要问题是 RN 在这方面是否有任何 iOS 包可用?我尝试使用桥接本机文件一,但这很难做到,需要 Swift 经验。

0 投票
0 回答
12 浏览

python - python中基于时间的音高变换

我有一个 csv 文件,其中包含每 10 毫秒的歌曲频率。

我还有一首类似的歌曲,但音高不同。所以,我需要将第一首歌曲的频率映射到第二首歌曲。例如,t=0.32时刻,第二首歌曲的频率需要为554Hz,以此类推。这可以在python中完成吗?

我找到了一些库,例如pitch-shifter-py,但是相同的音高变化适用于整首歌曲,而不是特定的时间戳。任何帮助将不胜感激。