From f8d7993b37c7552d67cc85f84a670a41243bafe6 Mon Sep 17 00:00:00 2001 From: allo Date: Fri, 1 Jul 2022 08:34:58 +0800 Subject: [PATCH] convert to markdown and sync with english version --- .../api/audiobuffersourcenode/buffer/index.md | 50 ++++++++----------- 1 file changed, 21 insertions(+), 29 deletions(-) diff --git a/files/zh-cn/web/api/audiobuffersourcenode/buffer/index.md b/files/zh-cn/web/api/audiobuffersourcenode/buffer/index.md index 47d179a998fbb7..a9cd23931b5a26 100644 --- a/files/zh-cn/web/api/audiobuffersourcenode/buffer/index.md +++ b/files/zh-cn/web/api/audiobuffersourcenode/buffer/index.md @@ -7,36 +7,30 @@ tags: - Web Audio API translation_of: Web/API/AudioBufferSourceNode/buffer --- -

{{ APIRef("Web Audio API") }}

+{{ APIRef("Web Audio API") }} -

{{ domxref("AudioBufferSourceNode") }} 接口的 buffer 属性提供了重复播放音频的能力,该音频使用 {{domxref("AudioBuffer")}} 作为声音文件的来源。

+{{ domxref("AudioBufferSourceNode") }} 接口的 **`buffer`** 属性提供了重复播放音频的能力,该音频使用 {{domxref("AudioBuffer")}} 作为声音文件的来源。 -

如果 buffer 属性的值为 null, 节点会自动生成一个单声道的无声文件(所有采样均为 0)。

+如果 `buffer` 属性的值为 `null`,节点会自动生成一个单声道的无声文件(所有采样均为 0)。 -

语法

+## 值 -
AudioBufferSourceNode.buffer = soundBuffer;
-
+一个 {{domxref("AudioBuffer")}},包含了节点将要播放的声音数据。 -

返回值

+## 示例 -

{{domxref("AudioBuffer")}},包含了节点将要播放的声音数据。

+> **备注:** 完整的示例请查看[演示示例](https://mdn.github.io/webaudio-examples/audio-buffer/),或[查看源代码](https://github.com/mdn/webaudio-examples/blob/master/audio-buffer/index.html)。 -

示例

- -
-

完整的示例请查看  this code running live,或  view the source。

-
- -
var myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
+```js
+const myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
 
 button.onclick = function() {
   // Fill the buffer with white noise;
   //just random values between -1.0 and 1.0
-  for (var channel = 0; channel < channels; channel++) {
+  for (let channel = 0; channel < channels; channel++) {
    // This gives us the actual ArrayBuffer that contains the data
-   var nowBuffering = myArrayBuffer.getChannelData(channel);
-   for (var i = 0; i < frameCount; i++) {
+   const nowBuffering = myArrayBuffer.getChannelData(channel);
+   for (let i = 0; i < frameCount; i++) {
      // Math.random() is in [0; 1.0]
      // audio needs to be in [-1.0; 1.0]
      nowBuffering[i] = Math.random() * 2 - 1;
@@ -45,22 +39,20 @@ button.onclick = function() {
 
   // Get an AudioBufferSourceNode.
   // This is the AudioNode to use when we want to play an AudioBuffer
-  var source = audioCtx.createBufferSource();
+  const source = audioCtx.createBufferSource();
   // set the buffer in the AudioBufferSourceNode
-  source.buffer = myArrayBuffer;
+ source.buffer = myArrayBuffer; +``` -

规范

+## 规范 {{Specifications}} -

浏览器兼容性

- -
- +## 浏览器兼容性 -

{{Compat("api.AudioBufferSourceNode.buffer")}}

-
+{{Compat}} -

相关链接

+## 参见 -

{{page("/en-US/docs/Web/API/AudioBufferSourceNode","See_also")}}

+- [使用 Web Audio API](/zh-CN/docs/Web/API/Web_Audio_API/Using_Web_Audio_API) +- [Web Audio API](/zh-CN/docs/Web/API/Web_Audio_API)