问题标签 [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 投票
1 回答
3195 浏览

python - 如何正确使用 pitch_shift (librosa)?

我尝试使用 librosa 中的 librosa 和 pitch_shift。我录制了一些声音并使用了以下代码:

它工作正常 - 几乎。

我在我的新声音中听到一些噪音(在 pitch_shifting 之后)

有什么我需要使用的吗?

无班次:

https://vocaroo.com/i/s1qEEDvzcUHN

随着班次(n_steps = 4):

https://vocaroo.com/i/s0cOiC0cFJSB

0 投票
1 回答
1868 浏览

javascript - 使用 web-audio-api 的音高移位器?

使用 Node js 的音高变换器

嗨,我是网络开发的初学者!

所以我正在尝试构建一个在线音频播放器,我需要一个音高转换器。

我尝试学习对我来说不太容易理解的网络音频 API...

任何人都可以帮助使用节点 js 构建“Pitch Shifter”...或者建议资源来学习网络音频 API ...

为什么这段代码在节点 js 中不起作用?

var audioCtx = new (window.AudioContext || window.webkitAudioContext)();

0 投票
1 回答
1176 浏览

youtube - YouTube 使用什么算法来改变播放速度而不影响音频音高?

Youtube 有一个选项可以更改视频的播放速度,以加快或减慢视频的音频速度,而不会影响其音调。我知道有许多不同的算法可以做到这一点,但我很好奇Youtube 使用了哪种特定算法,因为它似乎工作得很好。

另外,有没有实现这个算法的开源库?

0 投票
1 回答
604 浏览

c# - 如何控制 LibVLCSharp 中的音频音高偏移?

我目前正在使用 c# 和使用 LibVLCSharp 开发一个卡拉 OK 系统。谁能帮我用它来改变音频变调器?

\libvlc\win-x86\plugins\audio_filter 目录中有 libscaletempo_plugin 和 libscaletempo_pitch_plugin 模块。如何在 LibVLCSharp 中应用音频过滤器模块?

曾尝试跟随,但它不起作用。

并尝试了这个,它不起作用。

并尝试了这个,它也不起作用。

我一直在搜索,但找不到通过音调转换应用音频过滤器的解决方案。我需要的是一个函数,当媒体播放时,可以调用它来传递从-12 到 12 的音频音高偏移值。

提前致谢。

0 投票
0 回答
370 浏览

ios - 实时更改音频的速度和音高 [AudioUnit iOS]

我们正在使用 iOS 上的音频单元作为 VOIP 应用程序的一部分。我们已经成功播放了音频,但现在我们想实时控制音频的播放速度和音高。我们从 UDP 套接字获取实时音频字节。

这是用于播放的音频单元初始化代码:

我们将来自 UDP 的音频数据放入 TPCircular 缓冲区:

这就是我们播放音频的方式。

现在我们要更改播放音频的 SPEED 和 PITCH,请您指导我们如何在当前配置中集成 Varispeed 和 Timepitch,因为我们发现这些属性可能对我们有所帮助。

https://stackoverflow.com/a/59061396/12020007 @hotpaw2 您的回答为我们指明了正确的道路。现在我们正在寻求改变速度和音高。

0 投票
0 回答
279 浏览

python-3.x - 如何使用python将女性声音转换为男性声音

有什么方法可以将女性声音(.wav)转换为男性声音。我尝试过 librosa.effects.pitch_shift函数,但它会降低声音质量并产生过多的回声

可能我错过了处理参数所以这里是我使用的参数

0 投票
2 回答
664 浏览

python - 使用python从头开始实时音高转换

我需要一个由两部分组成的项目的帮助:

  1. python中的实时音高移位器(从头开始)。
  2. 切换来自 2 个不同扬声器的 2 个声音的音高。

我有两个问题:

  1. 我找不到音高转换背后的正确数学来从头开始实现它,因此我们将不胜感激。
  2. 我需要从 2 个声音中提取音高来切换它们还是有更简单的解决方案?如果不是关于如何从声音中正确提取音高并进行切换的解释,我们将不胜感激。

提前致谢。

0 投票
0 回答
80 浏览

ios - Midi 音乐音高转换不适用于 Swift 中的 iOS

我有一个简单的应用程序,带有键盘来播放音符。我的问题是我正在尝试添加一个滑块来弯曲音符音高,但音高没有变化。没有错误或任何东西,音符继续播放,音高没有任何变化。

我知道还有其他类似的问题,我已经阅读了我能找到的所有内容,并且我所实施的内容是基于该研究,但它不起作用。

请帮助我找出我做错了什么,或者为我指出一个更好的方向。

在我的工作代码中,我使用的是 AudioToolbox。我创建并打开一个新的 AUGraph。我在图中添加了一个 kAudioUnitSubType_RemoteIO 和一个 kAudioUnitSubType_MIDISynth 节点。我把它全部连接起来,我可以弹奏音符。

为了添加弯音,我创建了一个 kAudioUnitSubType_NewTimePitch AUNode,并将它连接在合成器和输出节点之间。然后我从效果节点获取音高 AudioUnit,当我的滑块值更改时,我尝试使用带有 kNewTimePitchParam_Pitch 的 AudioUnitSetParameter 更改音高。一切仍然有效,但是当我弹奏一个音符并拖动滑块时,音符的音高没有任何变化。我的滑块值在 -1000 和 +1000 之间变化,我看到打印出来的值,所以我知道正在调用 pitchBend 函数。

这是我的相关代码。这段代码,除了我试图添加的音高效果部分,大量复制了我在这里找到的内容: https ://rollout.io/blog/building-a-midi-music-app-for-ios-in -迅速/

谢谢。任何帮助都会得到帮助。

0 投票
0 回答
352 浏览

pyaudio - 实时音频移调器(Python)

我正在尝试使用 wav 文件制作实时音高变换器

我从https://github.com/waynesun626/Real-Time-Pitch-Shifter/blob/main/shifter.py获得了代码

并修改此代码以在播放时更改 wav 文件的音高。

注释掉的“流”是原始的。

到目前为止,我发现的问题是渠道的差异。

由于 wav 文件的通道是两次,因此 input_bytes(第 94 行)从 1600 字节变为 3200 字节。

因此,这会导致 input_tuple(第 97 行)出现问题,因为 struct.unpack 仅适用于 1600 字节。

我相信应该有更多的问题

请帮忙!

我很绝望。我需要你的帮助!

0 投票
0 回答
37 浏览

python-3.x - 如何在 Librosa 音高转换效果中指定 n_fft

我在心电图上使用librosa 音高变换方法。

ECG 以每段 512 个值进行分段,因此窗口为 512。Librosa 默认为n_fft=2048。怎么能改变呢?该函数不接受n_fft作为参数。检查文档和源代码,它说找到不存在或找不到的**kwargs位置librosa.decompose.stft

请帮忙,谢谢!