Open fred-lart opened 8 months ago
That's werid. YT is one of the tested sites/scenarios and it's actually one of the easier cases to handle for AudioPick since it just uses a visible video element and not an AudioContext.
Can you enable debug, open the Developer Tools and then copy & paste what the extension writes to console.log (Filter for APV3
) ?
Alright, here is my logs filtered with APV3:
APV3-content.js (top-origin: https://www.youtube.com) | onMessage: getActiveDevice | sendResponse: default
content.js:17 APV3-content.js (top-origin: https://www.youtube.com) | onMessage: setActiveDevice | sendAudioDevice: Out 1-2 (MOTU M Series) (07fd:0008)
content.js:17 APV3-content.js (top-origin: https://www.youtube.com) | setAudioDevice: Out 1-2 (MOTU M Series) (07fd:0008) | micPolicy.state: granted
content.js:17 APV3-content.js (top-origin: https://www.youtube.com) | injectSink: 88164f337c7144aa8d33990cf05c68a1749c614e387919e58c11c396e955282d | micPolicy.state: granted
main.js:27 APV3-main.js (top-origin: https://www.youtube.com) | changeSinkId(try): HTMLVideoElement | targetElement: <video tabindex="-1" class="video-stream html5-main-video" controlslist="nodownload" style="width: 987px; height: 555px; left: 0px; top: 0px;" src="blob:https://www.youtube.com/a55e6372-0cec-459b-be97-743f45a6195e"></video>media | sourceOfAudioContext: undefined | foundViaMethod: addEventListener_focus_hook | oldSinkId: | sinkId: 88164f337c7144aa8d33990cf05c68a1749c614e387919e58c11c396e955282d
main.js:27 APV3-main.js (top-origin: https://www.youtube.com) | changeSinkId(try): HTMLVideoElement | targetElement: <video tabindex="-1" class="video-stream html5-main-video" data-no-fullscreen="true" controlslist="nodownload" style="width: 363px; height: 204px; left: 0px; top: -204px;"></video>media | sourceOfAudioContext: undefined | foundViaMethod: addEventListener_focus_hook | oldSinkId: | sinkId: 88164f337c7144aa8d33990cf05c68a1749c614e387919e58c11c396e955282d
main.js:27 APV3-main.js (top-origin: https://www.youtube.com) | changeSinkId(catch): HTMLVideoElement | targetElement: <video tabindex="-1" class="video-stream html5-main-video" controlslist="nodownload" style="width: 987px; height: 555px; left: 0px; top: 0px;" src="blob:https://www.youtube.com/a55e6372-0cec-459b-be97-743f45a6195e"></video>media | sourceOfAudioContext: undefined | foundViaMethod: addEventListener_focus_hook | oldSinkId: | sinkId: 88164f337c7144aa8d33990cf05c68a1749c614e387919e58c11c396e955282d | error: DOMException: The operation could not be performed and was aborted
main.js:27 APV3-main.js (top-origin: https://www.youtube.com) | setSinkId(try): HTMLVideoElement | targetElement: <video tabindex="-1" class="video-stream html5-main-video" controlslist="nodownload" style="width: 987px; height: 555px; left: 0px; top: 0px;" src="blob:https://www.youtube.com/a55e6372-0cec-459b-be97-743f45a6195e"></video>media | sourceOfAudioContext: undefined | foundViaMethod: play_hook | oldSinkId: | sinkId: 88164f337c7144aa8d33990cf05c68a1749c614e387919e58c11c396e955282d
main.js:27 APV3-main.js (top-origin: https://www.youtube.com) | setSinkId(catch): HTMLVideoElement | targetElement: <video tabindex="-1" class="video-stream html5-main-video" controlslist="nodownload" style="width: 987px; height: 555px; left: 0px; top: 0px;" src="blob:https://www.youtube.com/a55e6372-0cec-459b-be97-743f45a6195e"></video>media | sourceOfAudioContext: undefined | foundViaMethod: addEventListener_focus_hook | oldSinkId: | sinkId: 88164f337c7144aa8d33990cf05c68a1749c614e387919e58c11c396e955282d | error: DOMException: The operation could not be performed and was aborted
Maybe there is duplicate logs since I forgot to disable some breakpoints in your code.
I'm currently suspecting an issue with either the audio hardware or the driver. A quick google search shows that MOTU is rather notorious for causing problems.
I doubt a fresh install would change anything, I will still try with chromium we never know.
Chrome Version 121.0.6167.140 Extension 0.3.10 Windows11
Hi ! Thanks for your work.
I did a quick debug but could not find the exact issue, the only info I get is
DOMException: The operation could not be performed and was aborted
At the same time I did a quick check on chrome and tried to change my sinkId inside the AudioContext class with the method setSinkId but I get an error telling me that the ID does not exist. Also the basic way to list device I found on google return me a set of device with deviceId, sinkId, ... but all of them are empty string...
In the debug, previous SinkID is also empty string.
Could someone give me some help to solve this issue ?