Перейти к содержимому

Глоссарий

Перечисление приборов (media devices)

Виды и числа приходят без вопроса, и только имена ждут разрешения. Набор описывает компьютер, а не профиль, поэтому все профили, открытые на одной машине, отдают один и тот же набор.

Перечисление приборов это список микрофонов, динамиков и камер, который браузер отдаёт странице до всякого разрешения.

Что приходит без вопроса

Один вызов возвращает запись на каждый вход и выход машины. Занятно тут не то, что написано в записи, а сколько этих записей всего.

  • Вид каждого прибора

    Микрофон, динамик или камера, по записи на каждый прибор, в том порядке, в каком их держит сама система.

  • Сколько чего

    Именно числа описывают машину, и никакого разрешения на них не нужно вовсе.

  • Пустые имена и пустые опознаватели

    Подписи остаются пустыми, пока странице не позволили записывать, а числа этого не ждут.

Почему набор связывает профили

Ноутбук с одним микрофоном, двумя выходами и одной камерой отвечает одинаково в каждом профиле, который на нём открывали.

Аккаунты, у которых не совпадали ни адрес, ни печенье, ни пароль, оказываются сшиты описью, которая никого опознавать не собиралась.

Проверка эта к тому же дешёвая. Сайт читает набор один раз на первой же странице и хранит потом три маленьких числа.

Что делает наш движок

Числа выводятся из семени профиля, поэтому у одного профиля свой набор, а два профиля между собой расходятся.

Странице достаётся подмножество того, что у машины есть на самом деле, урезанное в тот миг, когда страница спросила.

  1. 1

    Семя называет число по каждому виду

    Оно выведено из номера профиля, поэтому одинаково при каждом его запуске.

  2. 2

    Движок оставляет столько же

    Записи сверх названного числа в ответ не попадают, а все остальные проходят к странице нетронутыми.

  3. 3

    Самопроверка читает итог

    Внутри профиля самопроверка отпечатка запрашивает список и сверяет числа с профилем.

Чего нельзя выдумать

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

Значит набор можно только укоротить и нельзя удлинить, и это написано здесь, а не оставлено вам на самостоятельное открытие.

  • Ни один вид не опустошается

    Браузер, ответивший «камеры нет» на машине с камерой, выдал бы её следующим же вопросом, а два ответа подряд, противоречащих друг другу, громче любого числа.

  • Машина без камеры так и остаётся

    Мы ничего не добавляем, поэтому компьютер без камеры отвечает ноль, как и должен.

Голоса синтеза речи идут рядом

Список голосов синтеза речи это опись того же рода. Читается он одной строкой, разрешения не требует и принадлежит операционной системе, а не браузеру.

Профиль, заявивший одну систему и отдавший голоса другой, противоречит сам себе, поэтому голоса держат в пределах языка, который профиль объявил.

Часто путают с этим

  • Окно с разрешением на камеру

    Просьба записывать это отдельный шаг. Подсчёт идёт до него и от ответа не зависит.

  • Утечка WebRTC

    Там речь про адреса, которые выдаёт соединение. Здесь про опись железа, и меряют их порознь.

  • Память устройства

    Ещё одно показание про машину, выведенное из семени профиля, и у него есть своя страница.

Чего это не делает

  • Это не добавляет прибора, которого нет. Профиль, попросивший больше камер, чем есть у машины, получит число машины, потому что список только режется.
  • Это не опустошает вид целиком. Браузер, отвечающий «микрофона нет» и отдающий микрофон следующим вызовом, сам стал бы приметой.
  • Это не переписывает имена. Подписи приходят от системы после разрешения и описывают настоящее железо.
  • Это не доводит телефонный профиль до конца. На нашем собственном движке такой профиль всё ещё перечисляет звуковые выходы, а браузер на настоящей трубке не перечисляет ни одного.

Проверить

Каждое утверждение выше взято из файла, который можно открыть.

Откуда числа берутся из семени профиля
packages/shared/src/index.js
Правило, которое движок применяет к списку
engine/patches/armanos-fp-0012.diff
Замер приборов в самопроверке
apps/desktop/src/lib/fpAudit.js
Что отдала отгружаемая сборка по приборам и голосам
engine/приёмка-отчёт.json

Вопросы

Нужно ли сайту разрешение, чтобы пересчитать приборы?
Нет. Виды и числа приходят с первого же запроса, а знакомое вам окно относится к записи, а не к подсчёту.
Имена приборов тоже приходят?
До разрешения нет. Пока странице не позволили записывать, подписи и опознаватели приборов это пустые строки.
Меняет ли ответ подключение наушников?
Список машины растёт, а профиль всё равно показывает не больше записей, чем позволяет его собственное число.
Хорошая ли мысль поставить виртуальный микрофон?
Он добавляет запись, которой у большинства машин нет, то есть двигает вас к более редкому набору, а не к более обычному.
Где посмотреть свой набор?
Самопроверка внутри профиля читает список и сверяет числа с профилем. Это один из 29 замеров, которые там идут.

Посмотрите, что перечисляет ваш профиль

Самопроверка отпечатка идёт внутри профиля и показывает все 29 замеров, и зелёные, и красные.