Методы JavaScript для получения продолжительности аудио

Чтобы получить продолжительность аудиофайла в JavaScript, вы можете использовать несколько методов. Вот несколько вариантов:

  1. HTMLAudioElement: вы можете создать элемент Audioв JavaScript и использовать его свойство durationдля получения продолжительности аудиофайла. Вот пример:
var audio = new Audio('audiofile.mp3');
audio.addEventListener('loadedmetadata', function() {
  var duration = audio.duration;
  console.log(duration);
});
  1. MediaElement: Если у вас уже есть элемент в вашем HTML, вы можете напрямую получить доступ к его свойству duration. Вот пример:
var audioElement = document.getElementById('myAudio');
var duration = audioElement.duration;
console.log(duration);
  1. API веб-аудио. Если вам нужен больший контроль над воспроизведением звука, вы можете использовать API веб-аудио. Вы можете загрузить аудиофайл с помощью fetchили XMLHttpRequest, а затем декодировать его с помощью AudioContextдля получения продолжительности. Вот пример:
var audioContext = new AudioContext();
var request = new XMLHttpRequest();
request.open('GET', 'audiofile.mp3', true);
request.responseType = 'arraybuffer';
request.onload = function() {
  audioContext.decodeAudioData(request.response, function(buffer) {
    var duration = buffer.duration;
    console.log(duration);
  });
};
request.send();