当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Processing AudioSample.write()用法及代码示例


Processing, 类AudioSample中的write()用法介绍。

用法

  • .write(data)
  • .write(startFrame, data, startIndex, numFrames)
  • .write(index, value)

参数

  • data (float[]) 样本数据的数组,直到 sample.frames() * sample.channels() 浮点数,应该被复制
  • startFrame (int) 应该写入的音频样本的第一帧的索引
  • startIndex (int) 第一个要写入的值应取自数组中的位置(通常为 0)
  • numFrames (int) 应该写入的帧数(不能大于 audiosample.channels() * data.length - startIndex)
  • index (int) 应设置为给定值的音频样本单帧的索引
  • value (float) 给定音频帧应设置为的浮点值

返回

  • void

说明

音频样本的基础数据可以通过几种不同的方式读取和(覆盖)写入:采用单个浮点数组 `data` 的方法将样本数据替换为给定数组的内容。该数组必须包含与此示例中的帧一样多的浮点数。也可以使用带有四个参数的方法只写入部分样本数据,它允许您指定要写入的第一帧的索引、从数组中获取数据的位置以及帧数应该复制过来。最后,采用两个参数的方法只是将第一个参数指定的单个音频帧的值设置为给定的浮点值。

例子

import processing.sound.*;
AudioSample sample;

void setup() {
  size(640, 360);
  background(255);

  // Create a new audiosample
  sample = new AudioSample(this, 100000, 22050);

  // A freshly initiated audiosample contains nothing but zeros, so let's
  // write some data to it.
  for (int i = 0; i < sample.frames(); i++) {
    // Random numbers  will make it sound like white noise
    sample.write(i, random(-100, 100));
  }
  sample.play();
}      

void draw() {
}

相关用法


注:本文由纯净天空筛选整理自processing.org大神的英文原创作品 AudioSample.write()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。