--- title: AudioBufferSourceNode.buffer slug: Web/API/AudioBufferSourceNode/buffer translation_of: Web/API/AudioBufferSourceNode/buffer ---

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

La propriété buffer de l'interface {{ domxref("AudioBufferSourceNode") }} donne la possibilité de lire un son en utilisant un {{domxref("AudioBuffer")}} comme ressource audio.

Si la propriété buffer a la valeur NULL, elle définit un canal unique silencieux (chaque échantillon vaut 0).

Syntaxe

AudioBufferSourceNode.buffer = soundBuffer;

Valeur

Un {{domxref("AudioBuffer")}} qui contient les données représentant le son que le noeud va lire.

Exemple

Note: pour un exemple complet, voir le code interprété, ou le code source.

var myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);

button.onclick = function() {
  // Remplit le buffer avec du bruit blanc;
  // valeurs aléatoires entre -1.0 et 1.0
  for (var channel = 0; channel < channels; channel++) {
   // Crée le ArrayBuffer qui contient effectivement les données
   var nowBuffering = myArrayBuffer.getChannelData(channel);
   for (var i = 0; i < frameCount; i++) {
     // Math.random() is in [0; 1.0]
     // audio doit être compris entre [-1.0; 1.0]
     nowBuffering[i] = Math.random() * 2 - 1;
   }
  }

  // Crée un AudioBufferSourceNode.
  // C'est le AudioNode à utiliser pour jouer un AudioBuffer
  var source = audioCtx.createBufferSource();
  // Définit le buffer dans l'AudioBufferSourceNode
  source.buffer = myArrayBuffer;

Spécifications

Spécification Statut Commentaire
{{SpecName("Web Audio API", "#widl-AudioBufferSourceNode-buffer", "buffer")}} {{Spec2("Web Audio API")}} Définition initiale

Compatibilité navigateurs

{{CompatibilityTable}}
Fonctionnalité Chrome Edge Firefox (Gecko)[2] Internet Explorer Opera Safari (WebKit)
Support basique {{CompatNo}}[1] {{CompatVersionUnknown}} {{CompatGeckoDesktop("23.0")}} {{CompatNo}} 15 {{property_prefix("webkit")}}
22
6 {{property_prefix("webkit")}}
Propriété detune {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatGeckoDesktop("40.0")}} {{CompatNo}} {{CompatUnknown}} {{CompatUnknown}}
Fonctionnalité Android Chrome Edge Firefox Mobile (Gecko)[2] Firefox OS IE Phone Opera Mobile Safari Mobile
Support basique {{CompatNo}} 28 {{property_prefix("webkit")}} {{CompatVersionUnknown}} {{CompatGeckoMobile("25.0")}} 1.2 {{CompatNo}} {{CompatNo}} 6 {{property_prefix("webkit")}}
Propriété detune {{CompatNo}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatNo}} {{CompatNo}} {{CompatUnknown}}

[1] supprimé dans Chrome 44.0. Etait supporté avec un préfixe webkit depuis la version 14.

[2] Firefox ne gère pas correctement la valeur null. Au lieu de produire un noeud avec un seul canal silencieux, le noeud devient inutilisable et est ignoré si on essaie de le connecter à un autre noeud.

Voir aussi

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