Actualmente estoy trabajando en una extensión de Chrome que necesita detectar si se está reproduciendo un audio en el navegador. Encontré esta publicación con muchas soluciones: Detectar si el audio se está reproduciendo en el navegador Javascript
JSFiddle completo: https://jsfiddle.net/Thornton_Fernbacher/mg3uv54j/73/
startBtn.onclick = function() { startBtn.onclick = null; navigator.mediaDevices.getDisplayMedia({ video: true, audio: true }) .then(stream => { if (stream.getAudioTracks().length > 0) { var source = audioCtx.createMediaStreamSource(stream); source.connect(analyser); document.body.classList.add('ready'); } else { console.log('Failed to get audiostream. Audio not shared or browser not supported') } }).catch(err => console.log("Unable to open capture: ", err)); audioCtx.resume(); } function checkAudio() { check.classList.toggle('playing', window.isAudioPlaying()); window.requestAnimationFrame(checkAudio); } checkAudio();Primero probé un JSFiddle que funcionaba perfectamente. Pero, una vez que intenté ingresar números enteros dentro de mi extensión, no funcionó como se esperaba. En primer lugar, el botón de inicio no abre ninguna alerta para solicitar autorización, por lo que el siguiente código es imposible de ejecutar. Así que busqué los permisos de la extensión de Chrome pero no encontré nada que cancelara las alertas.
Así que estoy buscando a alguien que conozca una solución para esta extensión de Chrome que pueda ayudarme. Que tengas un buen día.