Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

438
Vistas
¿Cómo obtener la duración global del archivo de audio en javascript cuando se usa la API Audiocontext ()?

Utilicé la API de AudioContext para obtener la duración del audio respondido a stackoverflow de la siguiente manera:

 let durationTime; // Step 1: We need AudioContext instance to decode audio files. let context = new AudioContext(); // Step 2: Download a .mp3 file using AJAX let request = new XMLHttpRequest(); request.addEventListener('load', fileLoaded); request.open('GET', '/sounds/2W.mp3'); request.responseType = 'arraybuffer'; request.send(); // Step 3: File downloaded, need to be decoded now. function fileLoaded() { if (request.status < 400) context.decodeAudioData(request.response, fileDecoded); console.log(`durationTime at fileLoaded : ${durationTime}`) } // Step 4: File decoded, we can get the duration. function fileDecoded(audioBuffer) { // This is the duration you want, in seconds: durationTime = audioBuffer.duration; console.log(`durationTime at fileDecoded : ${durationTime}`) } console.log(`durationTime at global = ${durationTime}`)

El resultado de este código de la siguiente manera:

duraciónTiempo en global = 0

duraciónTiempo en el archivo Cargado: 0

duraciónTiempo en archivoDecodificado: 1.1363125

Funciona dentro de la función fileDecoded(audioBuffer) como una variable local, pero la variable de durationTime no funciona globalmente. ¿Por qué y cómo puedo usar esta variable de durationTime de forma global?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda