Поиск в Поддержке

Избегайте мошенников, выдающих себя за службу поддержки. Мы никогда не попросим вас позвонить, отправить текстовое сообщение или поделиться личной информацией. Сообщайте о подозрительной активности, используя функцию «Пожаловаться».

Подробнее

HTML5 Audio(), volume control does not work

  • 4 ответа
  • 12 имеют эту проблему
  • 1 просмотр
  • Последний ответ от Juribiyan

more options

Hello,

I'm using firefox 26.0.

I'm making an app using the HTML5 Audio fonctionnality. First thing, I'm not using the <audio> tag from HTML5.

Here is a small part of my code :

var audio = new Audio(); audio.src = 'music/Vivaldi.mp3'; audio.controls = true; audio.autoplay = true; audio.volume = 1;

If I change the volume property, it works.

But, as soon as I use createMediaElementSource(audio) The "volume" property does not work (http://www.w3schools.com/tags/av_prop_volume.asp). If I change the value, nothing happen...


The weird thing is that it works perfectly on Chrome, Safari & even on IE...


Edit : It look like a known bug : https://bugzilla.mozilla.org/show_bug.cgi?id=944924

Hello, I'm using firefox 26.0. I'm making an app using the HTML5 Audio fonctionnality. First thing, I'm not using the <audio> tag from HTML5. Here is a small part of my code : var audio = new Audio(); audio.src = 'music/Vivaldi.mp3'; audio.controls = true; audio.autoplay = true; audio.volume = 1; If I change the volume property, it works. But, as soon as I use createMediaElementSource(audio) The "volume" property does not work (http://www.w3schools.com/tags/av_prop_volume.asp). If I change the value, nothing happen... The weird thing is that it works perfectly on Chrome, Safari & even on IE... Edit : It look like a known bug : https://bugzilla.mozilla.org/show_bug.cgi?id=944924

Изменено TatsuKan

Выбранное решение

Until the bug is fixed, you can control audio volume using GainNode (since you already use Web Audio API) as explained here: http://www.html5rocks.com/en/tutorials/webaudio/intro/#toc-volume Make sure the audio.volume is set to 1 before you create MediaElementSource. Now you can control a value of the gain node instead of audio.volume. However it won't change the representation of the native audio element.

Прочитайте этот ответ в контексте 👍 1

Все ответы (4)

more options

Hi TatsuKan,

Thank you for contacting Mozilla support. From the looks of the code, compared to the "try it yourself" of the w3 schools you are using different elements.

The CreateMediaElementSource(audio) is a problem with the source of the video. Reference: http://stackoverflow.com/questions/20.../createmediaelementsource-method-of-web-audio-api-in-firefox

Do you have an example page where this is happening?

more options

Hi,

There is a link in my first message that describe exactly my problems, with 2 examples.

https://bugzilla.mozilla.org/show_bug.cgi?id=944924

more options

Currently it looks like this bug depends on a P1 bug, which is the highest priority. I have voted on this bug and recommend you check for updates on this issue on this bug and vote as well because it is affecting you. In the meantime we are happy to help find a work around.

Can you also check to see if this is still happening in Nightly on your computer? http://nightly.mozilla.org/

Does the audio load if you press past the 0:01 time on the video player?

We are very sorry for the inconvenience. If there are any other questions in the meantime please do not hesitate.

Изменено guigs

more options

Выбранное решение

Until the bug is fixed, you can control audio volume using GainNode (since you already use Web Audio API) as explained here: http://www.html5rocks.com/en/tutorials/webaudio/intro/#toc-volume Make sure the audio.volume is set to 1 before you create MediaElementSource. Now you can control a value of the gain node instead of audio.volume. However it won't change the representation of the native audio element.