SpeechSynthesisUtterance: volume プロパティ

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2018.

We'd love to hear more about your role and the company you work for
Please help us by answering a few questions.

volumeSpeechSynthesisUtterance インターフェイスのプロパティで、発話の音量を取得および設定します。

未設定の場合、既定値の 1 が使用されます。

0 (最低)から 1 (最高)の間の浮動小数点数で、音量を表します。

SSML を使用している場合、この値はマークアップの韻律タグによって上書きされます。

js
const synth = window.speechSynthesis;

const inputForm = document.querySelector("form");
const inputTxt = document.querySelector("input");
const voiceSelect = document.querySelector("select");

const voices = synth.getVoices();

// ...

inputForm.onsubmit = (event) => {
  event.preventDefault();

  const utterThis = new SpeechSynthesisUtterance(inputTxt.value);
  const selectedOption =
    voiceSelect.selectedOptions[0].getAttribute("data-name");
  for (let i = 0; i < voices.length; i++) {
    if (voices[i].name === selectedOption) {
      utterThis.voice = voices[i];
    }
  }
  utterThis.volume = 0.5;
  synth.speak(utterThis);
  inputTxt.blur();
};

仕様書

Specification
Web Speech API
# dom-speechsynthesisutterance-volume

ブラウザーの互換性

関連情報