We're calling on all EU-based Mozillians with iOS or iPadOS devices to help us monitor Apple’s new browser choice screens. Join the effort to hold Big Tech to account!

Zoeken in Support

Vermijd ondersteuningsscams. We zullen u nooit vragen een telefoonnummer te bellen, er een sms naar te sturen of persoonlijke gegevens te delen. Meld verdachte activiteit met de optie ‘Misbruik melden’.

Meer info

Deze conversatie is gearchiveerd. Stel een nieuwe vraag als u hulp nodig hebt.

HTML5 Audio(), volume control does not work

  • 4 antwoorden
  • 12 hebben dit probleem
  • 1 weergave
  • Laatste antwoord van 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

Bewerkt door TatsuKan op

Gekozen oplossing

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.

Dit antwoord in context lezen 👍 1

Alle antwoorden (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.

Bewerkt door guigs op

more options

Gekozen oplossing

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.