Pick a preferred audio output device for HTML5 audio and video elements
AudioPick Extension
AudioPick allows to pick a preferred audio output device that is used when a chrome tab is playing HTML5 audio or video over HTTPS.
The extension finds HTML5 audio and video elements within the document tree and manipulates the \"sinkId\"` in order to switch to the preferred audio output device. Since version 0.3.8 it also finds Audio, Video and AudioContext objects that have not been inserted into the document tree, e. g. Spotify and SoundCloud should now work with the extension, too.
Since it's now possible to store/remember a preferred audio output device per domain, the extension's option panel and hence the option to set a global preferred device (for the browser) has been removed.
Note that the \"Media Capture and Streams API\" requires media (microphone) permissions to be granted to every site with audio sinks that need to be manipulated, which - as a result - allows those sites to access your microphone. Hence AudioPick only acquires permission when the user actually picks a non-default device for a site and restores permissions when the user reverts back to using the default. Since version 0.3.10 a \"smartMicAccess\" mode can be activated in the UI which further reduces the number of microphone permissions granted by the extension.
Read more
The extension finds HTML5 audio and video elements within the document tree and manipulates the \"sinkId\"` in order to switch to the preferred audio output device. Since version 0.3.8 it also finds Audio, Video and AudioContext objects that have not been inserted into the document tree, e. g. Spotify and SoundCloud should now work with the extension, too.
Since it's now possible to store/remember a preferred audio output device per domain, the extension's option panel and hence the option to set a global preferred device (for the browser) has been removed.
Note that the \"Media Capture and Streams API\" requires media (microphone) permissions to be granted to every site with audio sinks that need to be manipulated, which - as a result - allows those sites to access your microphone. Hence AudioPick only acquires permission when the user actually picks a non-default device for a site and restores permissions when the user reverts back to using the default. Since version 0.3.10 a \"smartMicAccess\" mode can be activated in the UI which further reduces the number of microphone permissions granted by the extension.
Source Manifest.json
{"update_url": "https://clients2.google.com/service/update2/crx",\t"manifest_version": 3,\t"name": "AudioPick",\t"short_name": "AudioPick",\t"description": "Pick a preferred audio output device for HTML5 audio and video elements",\t"author": "[email protected]",\t"homepage_url": "https://rain-fighters.github.io/AudioPick/",\t"version": "0.3.10",\t"version_name": "0.3.10",\t"action": {\t\t"default_icon": {\t\t\t"16": "APV3_Icon_2d_2c_16.png",\t\t\t"32": "APV3_Icon_2d_2c_32.png",\t\t\t"48": "APV3_Icon_2d_2c_48.png",\t\t\t"128": "APV3_Icon_2d_2c_128.png"\t\t},\t\t"default_title": "AudioPick",\t\t"default_popup": "popup.html"\t},\t"icons": {\t\t"16": "APV3_Icon_2d_2c_16.png",\t\t"32": "APV3_Icon_2d_2c_32.png",\t\t"48": "APV3_Icon_2d_2c_48.png",\t\t"128": "APV3_Icon_2d_2c_128.png"\t},\t"host_permissions": ["https://*/*"],\t"background": {\t\t"service_worker": "worker.js"\t},\t"content_scripts": [\t\t{\t\t\t"matches": ["https://*/*"],\t\t\t"js": ["main.js"],\t\t\t"world": "MAIN",\t\t\t"all_frames" : false\t\t},\t\t{\t\t\t"matches": ["https://*/*"],\t\t\t"js": ["content.js"],\t\t\t"world": "ISOLATED",\t\t\t"all_frames" : false\t\t}\t],\t"permissions": [\t\t"contentSettings",\t\t"storage",\t\t"scripting",\t\t"activeTab",\t\t"favicon"\t]}
Read more