Midi устройства в браузере что это
Для одного проекта мне понадобилось воспроизводить midi-файлы на странице. Естественно работать это должно на большинстве браузеров (ну ие6 я уже не учитываю). Но, насколько я понял, либо нужен плагин QuickTime, который есть далеко не на каждой машине, либо Flash, который судя по тому, что рассказал мне гугл, с midi работать не умеет, либо тег audio, который далеко не везде реализован и в FF, например, с midi тоже не дружит.
В общем я удивлён. Формат старый, активно используется (в кругах музыкантов), а с поддержкой туго. Есть у кого-нибудь варианты, как воткнуть воспроизведение midi на страницу?
с помощью тега embed
проверил работает в Chrome,FF,Safari
Да, я это пробовал (FF и Opera под Linux). Не завелось. Мне скромно предложили скачать QuickTime. Или это только в линуксе такая беда, а в винде всё встроено?
В хроме не завелось, в файрфоксе требуется quicktime, в опере работает. Хотя, скорее всего, в опере он уже стоял.
Win, синтезатор микрософтовский.
MIDI это не формат, это интерфейс для передачи данных. MIDI есть далеко не во всех звуковых картах. И если только MIDI контент не будет формироваться как-то рандомно, либо онлайн, то как минимум нужно отрендерить эти, ваши, мидишные мелодии в WAV. Это можно сделать любым миди-редактором, либо секвенсором. Например, тем же FL Studio.
На счёт воспроизведения МИДИ ничего не скажу 100%, но повторюсь, что например у меня стоит внешняя проф.карта БЕЗ миди. И соотв. мой ПК не умеет воспроизводить МИДИ аппаратно.
Ок, поправлюсь. Формат файла SMF, расширение .mid, .midi.
Так понятно?
Программный midi-синтезатор, который воспроизводит эти файлы, в винде, например, стоит по дефолту, в линуксе ставится в два клика. Про аппаратное произведение никто ничего не говорил.
Не суть! Это не формат. Это интерфейс. Это в понятии файловой системы формат. И я на 99.9% уверен, что не получится воспроизвести миди.
«В отличие от других форматов это не оцифрованный звук, а наборы команд (проигрываемые ноты, ссылки на проигрываемые инструменты, значения изменяемых параметров звука), которые могут воспроизводиться по-разному в зависимости от устройства воспроизведения.» — Как бы минусовать можно вусмерть, но факт есть факт. Потому и популярен этот формат у музыкантов, потому что это просто команды, а в 99% это просто ноты.
«Файлы MIDI являются набором команд для синтезатора (секвенсора), установленного на компьютере, но не несут в себе готовых для воспроизведения аудиоданных.» — чтобы совсем стало ясно.
ФЛ Студио это сексвенсор, он много чего умеет софтово :) я сказал, что браузер 100% не может такое воспроизвести, т.к. софтового способа, я уверен, нет (тем более кроссбраузерного), а аппаратно нужен МИДИ-синт у звуковой.
Вообще вы так лихо минусуете не разобравшись в сути. А по большому счёту зачем вам МИДИ. Он генерируется он-лайн или тупо лень конвертить?
Ну я как бы в курсе, что такое MIDI. Более того, я изучал спецификации формата, т.к. нужно было партитуры генерировать на основе файла. Но выше я уже писал, что синтезаторы на 99% компьютеров стоят. Соответственно и воспроизводиться это будет на 99% компьютеров. Профит?
Чорт, я забыл про директХ. Там есть софтовый синт. Но опять-таки, например, на моей карте в dxdiag.exe нет теста миди-интерфейса. Просто вы начали писать, мол КТ не катит, Флеш тоже, хтмл5 тем более, я и подумал, что ищите нативный способ. А вы в минусы сразу. Странный народ.
Минусую потому как есть миди-файлы — это факт, они воспроизводятся на 99% компьютеров — это факт, а вы мне начинаете рассказывать про их строение.
Да, генерация происходит онлайн. И нагружать сервер конвертированием midi -> mp3 совсем не хочется, когда у клиента можно и midi воспроизвести.
С браузерами вся проблема в том, что с воспроизведением аудио у них в принципе проблемы, используются плагины, QuickTime, например. Если в системе плагина нет, то браузер аудио не прочитает. До введения тега audio в браузерах не было встроенных плееров. Но при всём при этом целятся, естественно на mp3, ogg, wav. Было желание использовать flash, но он как раз ни сам синтезатора не имеет, ни системным пользоваться не может, поэтому отпадает. Вот и получается, что единого кроссбраузерного решения я пока не нашёл.
К слову сказать, в опере при помощи тега audio я midi-файл воспроизвести смог.
встроенный кодек: виден программный Microsoft GW Wavetable Synthesizer.
Creative Audigy: видны ещё и аппаратные синтезаторы звуковой карты
Звуковая карта за 150 рублей Genius Soundmaker PCI: виден программный от Microsoft и примитивный, но встроенный на звуковую карту Genius FM Synthesizer
В винде не помню, вроде без директ икса всё работало. Насколько я понял, через «Программный звуковой синтезатор». По крайней мере windows media player воспроизводит .midi файлы.
В линуксе Timidity поставил и тоже звук появился.
Тесты не смотрел. Сейчас под линуксом сижу, там dx отсутствует.
Понятно. Ну у меня на проф.карте не видно вообще этого теста. До этого, конечно, была Креатив Лайв — там всё было. На кодеках встроенных не сидел. Отстал от жизни, но в любом случае ТС изначально не устраивал QT, а теперь это «правильный ответ». Как-то не логично. Ну рад, что он нашёл своё решение.
Логика в том, что под виндой и маками, как оказалось, всё работает. В маках QT — по дефолту, винду я ещё посмотрю на днях, возможно там другой плагин, но тоже встроенный. В линуксе проблемы, но 1% компьютеров в общем, а музыкантов среди них и того меньше. Моя ситуация позволяет ими пожертвовать, тем более, что сейчас займусь исследованиями на тему подходящего плагина, у самого линукс.
Из двух зол, как говорится…
Минус за комментарий компенсировал плюсом в карму. Хотя всё же коммент был не по теме ;)
Коммент был по теме как раз, т.к. я думал, что нужно нативное решение. В итоге я плохой, играется софтово, играет квиктайм и проблема решена. Позже, конечно, я подошёл с грубой музыкальной точки зрения, да и забыл про софтовые синты в DX ну и аналогах, наверное, в других ОС.
Есть midi как протокол, а есть general midi — соглашение о стандартных инструментах, которое поддерживают большинство синтезаторов от встроенных звуковух до рабочих станций за пару тысяч долларов. Звуковушки, или софтовый синтезатор microsoft кушают *.mid файлы с подобной информацией.
Нет. Это не то, что вы думаете. Для тех, кто помнит интернет 90х, одной фразы “MIDI в вебе” достаточно, чтобы вспомнить унылое лофайное проигрывание “The Final Countdown” при посещении гостевых книг особо одаренных веб-мастеров. Однако в 2016 году MIDI в вебе, а точнее Web MIDI API имеет большой потенциал.
Web MIDI API использует этот протокол и позволяет вам взять инструмент с MIDI, например, MIDI-клавиатуру, подсоединить к компьютеру и пересылать информацию с нее в браузер.
Но зачем подключать MIDI-клавиатуру к браузеру? Начнем с того, что для большинства музыкантов QWERTY-клавиатура не является полноценной заменой. А в реальности спектр музыкального оборудования, поддерживающего MIDI очень широк. Подключая MIDI-инструменты к браузеру и используя Web Audio API, мы можем создавать музыкальные инструменты прямо в вебе.
Хотите пианино? Просто подсоедините MIDI-клавиатуру и перейдите на страницу, использующую эти технологии для воспроизведения звука пианино. Нужен другой звук? Просто перейдите на другой сайт.
Итак, мы поняли, зачем нужен этот API, теперь будем разбираться, как он работает.
Доступ к MIDI-устройству
Сначала нам надо проверить наличие поддержки Web MIDI API в браузере. Это делается проверкой наличия метода navigator.requestMIDIAccess , он реализован только в браузерах с поддержкой Web MIDI API.
Теперь, когда мы убедились, что метод существует, вызовем его для доступа к любому MIDI-входу в браузере.
navigator.requestMIDIAccess() возвращает промис, это означает, что мы можем вызвать нужную функцию как в случае успешного соединения, так и в случае неудачи. Пока мы напишем две простые функции, просто выводящие в консоль результат подключения.
Как видите, функция для успешного подключения принимает MIDI-параметр в виде объекта MIDIAccess . Этот объект является ключом к получению MIDI-данных. Сам по себе он предоставляет интерфейс для доступа к любым подключенным MIDI-устройствам. У меня подключена только MIDI-клавиатура, поэтому если я выведу в консоль midi.inputs.size , значение будет “1”.
Чтобы получать MIDI-данные с нашего устройства, нам надо создать переменную и задать ей значение midi.inputs.values() , примерно так:
Важно понимать, что значение, присвоенное inputs является итератором. Итератор это объект, который умеет обращаться к своим свойствам по одному и при этом отслеживает текущую позицию в последовательности итерации. Он предоставляет метод next() , позволяющий вам получить следующий элемент в последовательности. Также в нем есть свойство done , позволяющее нам узнать, когда мы прошли итерацией через все свойства объекта. Это значит, что мы можем писать циклы, типа этого:
Краткое содержание цикла:
- Создана переменная input , ей присвоен следующий MIDI-вход. Так как мы не проводили итерацию по входам, это будет первый из доступных MIDI-входов.
- Если у нас есть MIDI-вход и значение done не равно true , мы запускаем цикл.
- Присваиваем input следующий MIDI-вход в нашем объекте-итераторе.
Вы также заметите, что внутри этого цикла мы присваиваем функцию обработчику событий MIDI-входа onmidimessage . Эта функция будет вызываться при каждом приеме MIDI-данных устройства, занимающего этот вход. Создадим эту функцию:
Декодирование MIDI-данных
Если вы подключите MIDI-клавиатуру и проверите выложенный в статье код, вы увидите, что при нажатии клавиши браузер вывод в консоль лог, примерно такой — [144, 61, 95] . После того как вы отпустите клавишу, также выведется лог — [128, 61, 0] .
Третий и последний элемент это скорость нажатия клавиш (velocity). Он может использоваться, например, для имитации пианино, клавиши которого могут нажиматься мягко или с силой.
Теперь, когда мы знаем, какая клавиша нажата или отпущена, попробуем эти сведения конвертировать во что-то полезное. Привяжем Web MIDI API к Web Audio API. Если вы не знакомы с Web Audio API, вам стоит прочитать несколько статей о нем.
Создание инструмента в браузере
Сделаем из нашего браузера небольшой синтезатор. Мы создадим осциллятор, генерирующий частоту нажатой клавиши, для этого нам надо конвертировать номер ноты в частоту. Алгоритм для этого нашелся в Википедии, вот как выглядит его реализация в JavaScript;
Просто отдаем ноту и получаем частоту. Используем это в функции onMIDIMessage :
Теперь нам надо написать функции startNote и stopNote . Здесь уже работает Web Audio API, рассмотрение которого находится за пределами этой статьи, но если вы знакомы с ним, итоговый код будет вам понятен.
Если нет, еще раз советую прочитать серию статей о Web Audio API, включая статью о создании синтезатора. Код в этой статье похож на то, что получилось у нас сейчас.
Что дальше?
MIDI (Musical Instrument Digital Interface) — это стандарт обмена данными между цифровыми музыкальными инструментам. Он позволяет обмениваться такой информацией, как номер ноты, скорость нажатия, таймкод и др. MIDI поддерживает большинство выпускаемых музыкальных девайсов, исключения составляют многие модули модульных систем (например, Eurorack), а также такие специфичные вещи, как Monome.
1 Предпосылки
Необходимость в таком стандарте возникла примерно к концу 70-х годов. В то время синтезаторы управлялись напряжением с помощью интерфейса CV/Gate. Существовало несколько его видов, однако, наибольшую популярность получил вариант, предложенный фирмой Roland: в нем при увеличении напряжения на 1 В, частота генерируемого тона увеличивалась на одну октаву. Главным недостатком такого интерфейса является то, что с помощью него можно управлять только одним голосом полифонии. Для извлечения дополнительной ноты нужно добавлять еще один интерфейс CV/Gate. Кроме того, таким способом передается только сам факт нажатия клавиши и ее высота, чего однозначно мало для выразительной игры.
Другим недостатком синтезаторов того времени была сложность настройки. Для каждого нового звука музыкантам приходилось настраивать инструмент заново, что было очень не удобно на живых выступлениях. На концертах тех времен часто можно было увидеть целые стеллажи из синтезаторов — так музыканты выходили из ситуации. Со временем в инструменты были встроены мини-компьютеры, с помощью которых можно было сохранять положения ручек в пресеты.
Однако, есть еще один момент, который оказал большое влияние на разработку MIDI.
Несомненно, у каждого синтезатора свой характер звучания, каждый из них был силен в определенных типах звуков. Поэтому многие музыканты того времени практиковали игру сразу на двух инструментах, как бы используя лучшее из разных моделей. Наслоение звуков из различных синтезаторов стало исполнительским приемом, визитной карточкой многих музыкантов. [1]
2 История появления
К началу 80-х большинство производителей осознали необходимость создания единого интерфейса. Задача стояла такая: разработать стандарт передачи действий исполнителя в цифровой форме между всеми типами электромузыкальных инструментов. [1]
- Июнь 1981 — на выставке NAMM произошел первый разговор на тему единого интерфейса между главами Sequential Circuits, Roland и Oberheim.
- Осень 1981 — первая версия интерфейса под названием UMI (Universal Musical Interface).
- Июнь 1982 — на выставке NAMM были представлены плоды международной разработки. Ввиду возможных юридических проблем от названия UMI пришлось отказаться в пользу MIDI.
- Октябрь 1982 — закончена предварительная спецификация MIDI.
- Декабрь 1982 — выпушен первый синтезатор, оборудованный MIDI-интерфейсом — Sequencial Circuits Prophet 600.
- 1983 — сформированы комитет по MIDI-стандартам (JMSC), международная группа пользователей MIDI (IMUG), выпущена спецификация MIDI 1.0.
- 1984 — сформирована ассоциация MIDI-производителей (MMA).
3 Основы
Сам протокол состоит из трех частей [1]: спецификация формата данных, аппаратная спецификация интерфейса и спецификация хранения данных. В данной статье будет идти речь только о первой части.
4 Недостатки
Часть 2. Open Sound Contol
«Open Sound Control — это новый, оптимизированный для современных сетевых технологий протокол для взаимодействия компьютеров, звуковых синтезаторов и других мультимедиа устройств» — так был представлен OSC на международной конференции по компьютерной музыке в 1997 году [3]. OSC не является протоколом в том виде, каким является MIDI, так как он не описывает требований к аппаратному обеспечиванию — спецификации описывают лишь формат передачи данных. В этом плане OSC больше схож с XML или JSON, нежели с MIDI [8].
Пока оставим технические подробности и начнем с самого начала, с истории.
1 История, области применения
Open Sound Control был создан в 1997 году Мэттью Райтом (Matthew Wright) и Эдрианом Фридом (Adrian Freed) в Университете Калифорнии в центре новой музыки и аудио технологий (CNMAT — Center of New Music and Audio Technologies). Разработчики хотели использовать высокоскоростные сетевые технологии в интерактивной компьютерной музыке [4]. OSC не важно, по какому протоколу передаваться, так как он представляет собой всего лишь формат данных (binary message format), хотя большинство реализаций используют TCP/IP или UDP. Другой причиной создания было то, что MIDI с его нотами, каналами и контроллерами логично не подходил к разрабатывающемуся в то время синтезатору CAST (CNMAT Additive Synthesis Tools), оно и понятно, ведь MIDI — это клавишно-ориентированный протокол, который разрабатывался для управления одним синтезатором с другого [1].
- Языки программирования: C/C++, Java, Php, Python, Ruby.
- Среды визуального программирования и синтеза: Bidule, Chuck, Common Music CPS, Intakt, Max/MSP, Open Sound World, Pd, SuperCollider, Reaktor, VVVV.
- Устройства для работы с сенсорами: EtherSense, Gluion, IpSonLab Kroonde, Lemur, Smart, Controller, Teabox, Toaster.
- Другие программы: EyesWeb, Picker, SonART, SpinOSC.
2 Особенности
/synth1/noteoff 54
/synth1/noteon 60
Фактически они могут прийти в обратном порядке:
/synth1/noteoff 60
/synth1/noteon 54
4 Pattern matching
- "?" — соответствует любому одному символу.
- "*" — соответствует последовательности из нуля или любого другого числа символов.
- Символы в квадратных скобках (например, "[string]") — соответствует любому символу в строке. В квадратных скобках дефис (-) и восклицательный знак (!) имеют специальное значение:
дефис между двумя символами означает диапазон чисел в ASCII последовательности (дефис в конце строки не имеет специального значения);
Web MIDI API — интересный зверь. Хоть он и существует уже почти пять лет, его все еще поддерживает только Chromium. Но это не помешает нам создать полноценный синтезатор в Angular. Пора поднять Web Audio API на новый уровень!
Web MIDI API
Dependency Injection
Чтобы подписаться на события, мы сначала должны получить MIDIAccess -объект, чтобы добраться до портов. navigator вернет нам Promise , а RxJs превратит его для нас в Observable . Мы можем создать для этого InjectionToken , используя NAVIGATOR из @ng-web-apis/common. Так мы не обращается к глобальному объекту напрямую:
Теперь мы можем подписаться на все MIDI-события. Можно создать Observable одним из двух способов:
- Создать сервис, который наследуется от Observable , как мы делали в Geolocation API
- Создать токен с фабрикой, который будет транслировать этот Promise в Observable событий
Поскольку в этот раз нам понадобится совсем немного преобразований, токен вполне подойдет. С обработкой отказа код подписки на все события выглядит так:
Кстати, вы знали, что нет необходимости спрэдить массив Provider[] , когда добавляете его в метаданные? Поле providers декоратора @Directive поддерживает многомерные массивы, так что можно писать просто:
Если вам интересны подобные практичные мелочи про Angular — приглашаю почитать нашу серию твитов с полезными советами.
Аналогичным образом можно добывать и входные порты, а также запрашивать их по имени.
Операторы
Для работы с потоком событий нам потребуется создать свои операторы. В конце концов, мы же не хотим каждый раз ковыряться в исходном массиве данных.
Операторы можно условно разделить на две группы:
Вот так мы можем слушать события с определенного канала:
Status byte организован группами по 16: 128—143 отвечают за нажатые клавиши ( noteOn ) на каждом из 16 каналов. 144—159 — за отпускание зажатых клавиш ( noteOff ). Таким образом, если мы возьмем остаток от деления этого байта на 16 — получим номер канала.
Если нас интересуют только сыгранные ноты, поможет такой оператор:
Теперь можно строить цепочки операторов, чтобы получить стрим, который нам нужен:
Пора применить все это на практике!
Создаем синтезатор
С небольшой помощью библиотеки для Web Audio API, которую мы обсуждали ранеесоздадим приятно звучащий синтезатор всего за пару директив. Затем мы скормим ему ноты, которые играем через описанный выше стрим.
В качестве отправной точки используем последний кусок кода. Чтобы синтезатор был полифоническим, нужно отслеживать все сыгранные ноты. Для этого воспользуемся оператором scan:
Чтобы звук не прерывался резко и не звучал всегда на одной громкости, создадим полноценный ADSR-пайп. В прошлой статье была его упрощенная версия. Напомню, идея ADSR — менять громкость звука следующим образом:
Чтобы нота начиналась не резко, удерживалась на определенной громкости, пока клавиша нажата, а потом плавно затухала.
Теперь, когда мы нажимаем клавишу, громкость будет линейно нарастать за время attack. Затем она убавится до уровня sustain за время decay. А когда мы отпустим клавишу, громкость упадет до нуля за время release.
С таким пайпом мы можем набросать синтезатор в шаблоне:
Мы перебираем собранные ноты с помощью встроенного keyvalue пайпа, отслеживая их по номеру сыгранной клавиши. Затем у нас есть два осциллятора, играющих нужные частоты. А в конце — эффект реверберации с помощью ConvolverNode . Довольно нехитрая конструкция и совсем немного кода, но мы получим хорошо звучащий, готовый к использованию инструмент. Попробуйте демо в Chrome:
Если у вас нет MIDI-клавиатуры — можете понажимать на ноты мышкой.
Заключение
В Angular мы привыкли работать с событиями с помощью RxJs. И Web MIDI API не сильно отличается от привычных DOM-событий. С помощью пары токенов и архитектурных решений мы смогли с легкостью добавить поддержку MIDI в наше Angular приложение. Описанное решение доступно в виде open-source библиотеки @ng-web-apis/midi. Она является частью большого проекта, под названием Web APIs for Angular. Наша цель — создание легковесных качественных оберток для использования нативного API в Angular приложениях. Так что если вам нужен, к примеру, Payment Request API или Intersection Observer — посмотрите все наши релизы.
Если вам любопытно, что же такого интересного можно сделать на Angular при помощи Web MIDI API — приглашаю вас научиться играть на клавишах в личном проекте Jamigo.app
Чтобы сделать ваше пребывание в интернете безопасным и комфортным, Яндекс Браузер применяет к элементам сайтов правила обработки. Он блокирует всплывающие окна, предупреждает о запросе сайтом местоположения и т. д. С помощью панели Protect или в настройках вы можете изменить поведение Браузера для всех сайтов или для выбранного. Например, вы можете запретить запускать на всех сайтах JavaScript или разрешить выбранному сайту доступ к видеокамере.
Какие правила обработки вы можете менять
Элементы, которыми можно управлять на панели Protect
Примечание. Значки из таблицы отображаются в Умной строке справа и показывают правила обработки для текущего сайта. Чтобы изменить правило обработки, нажмите на значок.
Спрашивать — при попытке сайта определить местоположение Браузер запросит у вас разрешение на передачу данных.
Разрешить — позволить сайту (например, Яндекс Картам) определять ваше местоположение, не спрашивая каждый раз разрешения.
Спрашивать — если сайт (например, портал для видеоконференций) попытается получить доступ к камере, Браузер предупредит вас об этом.
Спрашивать — если сайт (например, портал для видеоконференций) попытается получить доступ к микрофону, Браузер предупредит вас об этом.
Блокировать — запретить сайту запускать JavaScript. Некоторые скрипты JavaScript воруют пароли или заражают компьютер вирусами. Выбрав эту опцию, вы запретите запуск любых скриптов JavaScript на сайте, что повысит безопасность, но может привести к неправильной работе сайта.
Блокировать — по умолчанию всплывающие окна блокируются, так как загромождают экран и часто используются для баннерной рекламы. Если сайт пытается открыть всплывающие окна, в Умной строке появляется значок .
Спрашивать — если сайт после загрузки первого файла попытается автоматически загрузить второй, Браузер предупредит вас об этом.
Разрешить — позволить сайту автоматически загружать несколько файлов, не спрашивая каждый раз разрешения.
Спрашивать — если сайт запросит доступ к электронным музыкальным инструментам, использующим интерфейс MIDI, Браузер предупредит вас об этом.
Выключено — запретить строгую проверку сертификатов. Режим включается автоматически при открытии страниц оплаты на сайтах банков и платежных систем.
Спрашивать — при попытке сайта определить местоположение Браузер запросит у вас разрешение на передачу данных.
Разрешить — позволить сайту (например, Яндекс Картам) определять ваше местоположение, не спрашивая каждый раз разрешения.
Спрашивать — если сайт (например, портал для видеоконференций) попытается получить доступ к камере, Браузер предупредит вас об этом.
Спрашивать — если сайт (например, портал для видеоконференций) попытается получить доступ к микрофону, Браузер предупредит вас об этом.
Блокировать — запретить сайту запускать JavaScript. Некоторые скрипты JavaScript воруют пароли или заражают компьютер вирусами. Выбрав эту опцию, вы запретите запуск любых скриптов JavaScript на сайте, что повысит безопасность, но может привести к неправильной работе сайта.
Блокировать — по умолчанию всплывающие окна блокируются, так как загромождают экран и часто используются для баннерной рекламы. Если сайт пытается открыть всплывающие окна, в Умной строке появляется значок .
Спрашивать — если сайт после загрузки первого файла попытается автоматически загрузить второй, Браузер предупредит вас об этом.
Разрешить — позволить сайту автоматически загружать несколько файлов, не спрашивая каждый раз разрешения.
Спрашивать — если сайт запросит доступ к электронным музыкальным инструментам, использующим интерфейс MIDI, Браузер предупредит вас об этом.
Выключено — запретить строгую проверку сертификатов. Режим включается автоматически при открытии страниц оплаты на сайтах банков и платежных систем.
Элементы, которыми можно управлять в настройках
Примечание. Значки из таблицы отображаются в Умной строке справа и показывают правила обработки для текущего сайта. Чтобы изменить правило обработки, нажмите на значок.
В настройках вы можете управлять всеми элементами на панели Protect, а также менять правила обработки для следующих элементов:
Запрещены — запретить сайту собирать информацию о вас (логин, пароль или сведения о просматриваемых страницах). После блокировки cookie сайт может работать неправильно.
Блокировать данные и файлы сторонних сайтов — запретить сайту собирать информацию для сторонних сайтов.
Разрешено — по умолчанию разрешена работа обработчиков протоколов (например, webcal или mailto ) при открытии специальных ссылок.
Разрешить воспроизведение защищенного содержимого — по умолчанию защищенные от копирования электронные книги, музыка и т. д. воспроизводятся в Браузере.
Разрешить использование идентификаторов устройств — по умолчанию при воспроизведении защищенного содержимого проверяется идентификатор устройства.
С помощью ссылки Расширенные настройки сайтов вы можете просмотреть и настроить подключенные устройства.
Запрещены — запретить сайту собирать информацию о вас (логин, пароль или сведения о просматриваемых страницах). После блокировки cookie сайт может работать неправильно.
Блокировать данные и файлы сторонних сайтов — запретить сайту собирать информацию для сторонних сайтов.
Разрешено — по умолчанию разрешена работа обработчиков протоколов (например, webcal или mailto ) при открытии специальных ссылок.
Разрешить воспроизведение защищенного содержимого — по умолчанию защищенные от копирования электронные книги, музыка и т. д. воспроизводятся в Браузере.
Разрешить использование идентификаторов устройств — по умолчанию при воспроизведении защищенного содержимого проверяется идентификатор устройства.
С помощью ссылки Расширенные настройки сайтов вы можете просмотреть и настроить подключенные устройства.
Изменение правил обработки для текущего сайта
Изменить правило обработки элемента для текущего сайта можно на панели Protect:
После этого в открывающемся окне панели Protect появится опция для измененного элемента. Вы сможете легко включать и выключать эту опцию, однако настройка будет действовать только для текущего сайта.
Изменение правил обработки для всех сайтов
Изменить правила обработки элементов для всех сайтов можно в настройках Браузера:
Создание и удаление исключений для выбранных сайтов
Если правила Браузера мешают вам работать с сайтом, вы можете задать для него исключение. Например, позволить Яндекс Картам определять ваше местоположение автоматически, в то время как все остальные сайты должны будут спрашивать на это разрешение.
Чтобы задать исключение:
Примечание. Вы всегда сможете переместить сайт из списка разрешенных в запрещенные и наоборот. Для этого наведите указатель мыши на сайт и нажмите справа ссылку Запретить или Разрешить .
Чтобы удалить исключение:
Опция «Не отслеживать»
Некоторые сайты узнают адреса посещенных вами страниц и используют эту информацию, чтобы показывать рекламу, собирать статистику и пр.
Чтобы запретить сайтам получать информацию о вашей работе в интернете:
Внимание. Запрос Не отслеживать понимают не все сайты. Многие из них все равно будут собирать и использовать данные о вашей работе в интернете.
Чтобы сделать ваше пребывание в интернете безопасным и комфортным, Яндекс Браузер применяет к элементам сайтов правила обработки. Он блокирует всплывающие окна, предупреждает о запросе сайтом местоположения и т. д. С помощью панели Protect или в настройках вы можете изменить поведение Браузера для всех сайтов или для выбранного. Например, вы можете запретить запускать на всех сайтах JavaScript или разрешить выбранному сайту доступ к видеокамере.
Какие правила обработки вы можете менять
Элементы, которыми можно управлять на панели Protect
Примечание. Значки из таблицы отображаются в Умной строке справа и показывают правила обработки для текущего сайта. Чтобы изменить правило обработки, нажмите на значок.
Спрашивать — при попытке сайта определить местоположение Браузер запросит у вас разрешение на передачу данных.
Разрешить — позволить сайту (например, Яндекс Картам) определять ваше местоположение, не спрашивая каждый раз разрешения.
Блокировать — запретить сайту запрашивать ваше местоположение.
Спрашивать — если сайт (например, портал для видеоконференций) попытается получить доступ к камере, Браузер предупредит вас об этом.
Блокировать — запретить сайту доступ к камере.
Спрашивать — если сайт (например, портал для видеоконференций) попытается получить доступ к микрофону, Браузер предупредит вас об этом.
Блокировать — запретить сайту доступ к микрофону.
Разрешить — позволить сайту (например, Яндекс Календарю) показывать уведомления.
Блокировать — запретить сайту запускать JavaScript. Некоторые скрипты JavaScript воруют пароли или заражают компьютер вирусами. Выбрав эту опцию, вы запретите запуск любых скриптов JavaScript на сайте, что повысит безопасность, но может привести к неправильной работе сайта.
Блокировать — запретить сайту показывать картинки. Без картинок он будет загружаться быстрее.
Блокировать — по умолчанию всплывающие окна блокируются, так как загромождают экран и часто используются для баннерной рекламы. Если сайт пытается открыть всплывающие окна, в Умной строке появляется значок .
Спрашивать — если сайт после загрузки первого файла попытается автоматически загрузить второй, Браузер предупредит вас об этом.
Разрешить — позволить сайту автоматически загружать несколько файлов, не спрашивая каждый раз разрешения.
Блокировать — запретить сайту загружать файлы, за исключением тех, которые вы выбрали сами.
Спрашивать — если сайт запросит доступ к электронным музыкальным инструментам, использующим интерфейс MIDI, Браузер предупредит вас об этом.
Разрешить — позволить сайту автоматически получать доступ к MIDI-устройствам.
Блокировать — запретить сайту доступ к MIDI-устройствам.
Выключено — запретить строгую проверку сертификатов. Режим включается автоматически при открытии страниц оплаты на сайтах банков и платежных систем.
Включено — разрешить строгую проверку сертификатов, отключить все расширения Браузера.
Читайте также: