| Summary: | HTMLVideoElement.currentTime keeps zero for audio source if HTMLVideoElement.muted is true | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Takahiro Aoyagi <taoyagi> |
| Component: | Media | Assignee: | Nobody <webkit-unassigned> |
| Status: | NEW --- | ||
| Severity: | Normal | CC: | ahmad.saleem792, eric.carlson, jer.noble, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | Safari 14 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Something like this:
<!DOCTYPE html>
<html>
<body>
<audio controls>
<source src="horse.ogg" type="audio/ogg">
<source src="horse.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>
<video muted controls>
<source src="horse.mp3" type="audio/mpeg">
</video>
<script>
const video = document.createElement('video');
video.src = 'horse.mp3';
video.loop = true;
video.muted = true;
const check = () => {
setTimeout(check, 1000);
console.log(video.currentTime);
};
check();
</script>
</body>
</html>
I tested and I get '0' multiple events in Safari 16.6, STP175 and Chrome Canary 117, or am I testing it wrong?
|
HTMLVideoElement.currentTime keeps zero for audio source if HTMLVideoElement.muted is true. It can't reproducible in Chrome of Firefox. Example code: <script> const video = document.createElement('video'); video.src = 'your_audio_file.mp3'; video.loop = true; video.muted = true; const check = () => { setTimeout(check, 1000); console.log(video.currentTime); }; check(); </script> Another example: You can also confirm the problem in https://www.w3schools.com/html/tryit.asp?filename=tryhtml5_audio_all by replacing the code with the following. <video muted controls> <source src="your_audio_file.mp3" type="audio/mpeg"> </video> You will see zero duration time on the control panel. OS: macOS Big Sur 11.5.2 Browser: Safari 14.1.2