audio - 如何在循环外的循环中使用值?

标签 audio loops for-loop

我问了另一个没有回答的问题,这导致了我这个问题。我有一个 for 循环,可以在声音文件中创建一个样本数组。我对两个文件执行此操作,并尝试将它们合并到第三个文件中。但是,值数组仅存在于 for 循环中,因此我不能在第三个文件中使用我需要的值,因为我还需要使用 for 循环访问第三个文件中的样本数组。在这种情况下,嵌套的 for 循环似乎没有意义。

抱歉忘了提到我正在使用python。
这是让我感到困惑的代码块。

for index in getSamples(sound1):
    v1 = getSampleValue(index)

  for index in getSamples(sound2):
    v2 = getSampleValue(index)

  for index in getSamples(sound3):
    setSampleValue(index, v1+v2)

所以代码基本上从sound1中获取所有样本,从sound 2中获取所有样本,并尝试将sound3中的样本(与两种声音的长度相同)设置为每个索引处每个样本的组合。

但是,当这只播放/探索声音 3 的空白声音时。我认为问题在于 v1 和 v2 仅等于单个 for 循环中整个数组的值。

最佳答案

为了使用循环外的变量来引用数组,您需要在循环外初始化该变量。这为您提供了对数组的引用。

var array = new Array();

for (int x=0; x<sample.length(); x++) {
    //do stuff in the loop to 'array' variable
}

//do what you want with 'array' after the loop

关于audio - 如何在循环外的循环中使用值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10868596/

相关文章:

javascript - 带有音频和innerHTML 的点击回调无法按预期工作?

javascript - 立即淡出音频

javascript - 如何循环或枚举 JavaScript 对象?

C++ 创建一个函数来读取 .txt 文件并检查以确保文件存在,但我的循环不工作

C:创建具有唯一数字的二维数组

linux - 如何在 Shell 的循环中定义两个具有一对一关系的变量

visual-c++ - 使用 DirectShow 从麦克风将音频捕获到文件( 'AudioRecorder WAV Dest' 的任何替代方案)

android - 从 ListView 连续播放音频文件,而无需用户单击列表项

php - 使用循环创建 MySQL 查询

mysql - 在每个循环中将 xml 写入 mysql