Увеличение (YouTube Flash) громкость звука видео с помощью JavaScript - PullRequest
9 голосов
/ 31 июля 2011

История вопроса : многие пользователи (включая меня) просматривают веб-страницы с ноутбуков, которые не предназначены для качественного звучания. Это означает (помимо прочего), что громкость звука для большинства видео слишком низкая, особенно если само видео записывается с низкой громкостью.

Таким образом ...

Мне было интересно, есть ли какой-нибудь способ увеличить громкость такого видео (особенно Youtube, но может быть расширено на другие типы), потому что я заинтересован в том, чтобы сделать это и даже опубликовать его как Firefox / Chrome / other плагин для браузера.

Или, если вы знаете такой плагин, не стесняйтесь размещать ссылку здесь.

Ответы [ 4 ]

7 голосов
/ 22 мая 2012

Используйте VLC Media Player. Вы можете скопировать и вставить ссылки в него. Увеличение звука до 250%

6 голосов
/ 31 июля 2011

Если вы хотите контролировать громкость системы, тогда JavaScript не имеет прямого доступа к ней, вам нужно написать плагин NPAPI (C ++ dll).

Если вы хотите просто настроить собственную громкость видеоплеера (вы выигралине может быть выше 100%), тогда JavaScript может сделать это, возможно.

Если видеоплеер имеет тег HTML5 <video>, тогда управление громкостью легко.Для YouTube это будет:

document.getElementsByClassName("video-stream")[0].volume = 0.5; //50%

Если это флеш-плеер, сделанный на заказ, тогда вам нужно полагаться на его интерфейс JavaScript, если таковой имеется.Проигрыватель Youtube поддерживает управление громкостью с помощью JavaScript:

document.getElementById("movie_player").setVolume(50);

Для того, чтобы это работало, вам нужно сначала вырваться из песочницы расширения, вставив тег <script> на страницу с этим кодом.

Универсального решения не существует, вам придется работать с каждым сайтом индивидуально.

2 голосов
/ 09 августа 2011

Вы можете использовать js-ctypes , чтобы изменить уровень громкости системы. Вот пример, который устанавливает громкость на 12,5%:

Components.utils.import("resource://gre/modules/ctypes.jsm");
var lib = ctypes.open("winmm.dll");
var waveOutSetVolume = lib.declare("waveOutSetVolume", ctypes.default_abi,
                                   ctypes.uint32_t,
                                   ctypes.int32_t, ctypes.uint32_t);
waveOutSetVolume(-1, 0x20002000);
lib.close();

Однако это только меняет громкость процесса Firefox. Это не окажет никакого влияния на Flash, потому что теперь он работает в другом процессе. Я даже не уверен, есть ли у winmm какой-либо способ изменить глобальный том, вам может понадобиться новый MMDevice API для этого - и тогда это становится сложным, потому что выполнение вызовов COM через js-ctypes ИМХО не возможно. Единственная возможность - создать собственную библиотеку для распространения вместе с вашим расширением. Это должно сделать обмен сообщениями COM и экспортировать простой API, который можно вызвать через js-ctypes.

0 голосов
/ 21 февраля 2016

Вы можете использовать программное обеспечение Sound Booster от Letasoft, но есть некоторые вещи, с которыми вы можете столкнуться, например, сбой, мы используем нетбуки, поэтому встроенная звуковая карта имеет ограничение.Поэтому, прежде чем играть, попробуйте дать лучший результат, который я могу дать.Максимальный объем производства будет 500%.

...