Selective HTML5 Media Audio Output for Chrome

jcunews
2019-10-18T11:17:59Z

Allows users to select specific audio output device for HTML5 audio / video in a per site basis.

Audio output selection can be accessed by clicking on the "Select audio output device for this site" menu of this script's entry on the Tampermonkey/Violentmonkey/Greasemonkey browser extension's popup menu.

Alternatively, the audio selection menu can be provided as a bookmarklet and be added onto the browser's bookmark toolbar. The bookmark URL should be specified as:

javascript:shmao_ujs()

Because of the microphone permission issue noted below, this script provides additional layer of privacy protection to guard against access to microphone (and optionally the camera). The microphone permission setting can be accessed from the "Microphone permission for this site" menu of this script's entry on the Tampermonkey/Violentmonkey/Greasemonkey browser extension's popup menu.

Alternatively, the microphone permission menu can be provided as a bookmarklet and be added onto the browser's bookmark toolbar. The bookmark URL should be specified as:

javascript:shmaop_ujs()

Notes:

HTML5 audio output selection is currently supported only on Chrome browser and its clones, and only when the HTML page is accessed using "http://" or "https://" URLs.

Due to either unclear Web API specifications, or incorrect browser implementation, permission to access microphone is required for selecting audio output device. In current browser implementation, the microphone permission covers both the audio input and output devices, regardless of the device type such as microphone or line-in.

This script has not been tested under platforms other than Windows.