Содержательные альтернативы видеоуроку
Видеодемонстрация может показать изменение программы во времени, но полезный смысл не должен зависеть только от изображения или звука. Читатель может не слышать объяснение, не видеть выделенную строку или предпочитать найти нужное действие в тексте. Поэтому подготовка альтернатив начинается с содержания будущей записи.
В этом уроке вы составите комплект для условного видео a11y-lab: сценарий, субтитры, текстовое представление и описание существенных действий. Видеофайл ещё не создан. Это необязательный учебный прототип и не функция, уже добавленная в ProfessorWeb.
Сценарий до записи
Возьмём знакомый пример: документ Employees содержит двух сотрудников, Alex и Elena. Сначала метод Descendants выбирает Employee, затем условие по FirstName оставляет Elena. Эти данные сохраняются из основного стенда. Запись должна показать изменение условия и его смысл, а не просто движение курсора по редактору.
Условный сценарий разделим на три эпизода. В первом показывается структура документа. Во втором — выражение выбора и оба имени. В третьем — условие и оставшийся результат. Это план будущей демонстрации, не отчёт выполненного кода. В реальной записи соответствие каждого эпизода нужно будет сверить с примером.
Сразу определите, что находится только на экране. Если преподаватель говорит «теперь нажмём здесь», действие непонятно без изображения. Лучше произнести название управления и результат. Если выделение определяет изменённую строку, её назначение также нужно назвать словами, а точный код дать в статье.
Не описывайте все декоративные детали. Цвет рамки редактора и форма курсора обычно не относятся к учебному результату. Существенны выбранный узел, условие отбора, данные и изменение вывода. Такое разделение делает описание содержательным, не превращая его в длинный перечень пикселей.
Субтитры передают звук
Субтитры синхронизируют речь и необходимые звуковые сведения с записью. Они отличаются от короткого пересказа темы. Если звук сообщает условие, которое влияет на результат, оно должно присутствовать. Когда важен другой звук, его тоже называют, а не передают только реплики.
Критерий Captions (Prerecorded) уровня A относится к предварительно записанному звуку в синхронизированном медиа, с предусмотренным исключением для ясно обозначенной медиаальтернативы тексту. Документ W3C. Для нашего будущего обычного видео планируем полноценные субтитры, не объявляя исключение автоматически.
Ниже учебный файл media/linq-demo-ru.vtt. Время является условным планом, а не синхронизацией уже существующего видео:
WEBVTT
00:00.000 --> 00:04.000
В документе Employees два сотрудника: Alex и Elena.
00:04.000 --> 00:08.000
Descendants выбирает оба элемента Employee.
00:08.000 --> 00:13.000
Условие по FirstName оставляет сотрудника Elena.
Такой файл показывает устройство трёх запланированных реплик. После создания записи времена и текст нужно согласовать с действительным звуком. Нельзя назвать его готовой альтернативой произвольному ролику лишь потому, что он имеет расширение VTT.
Автоматические субтитры тоже требуют содержательной сверки. Технические имена, скобки и слово Descendants могут быть распознаны неверно. Ошибка в названии метода не является небольшой стилистической особенностью: она меняет учебную информацию. Редактор должен читать результат рядом с самой записью.
Реплика «оставляем только Elena» ещё не объясняет, по какому полю принято решение. В учебном материале такая потеря особенно заметна: изображение может показывать проверку FirstName, а субтитры передавать только итог. Читатель, который не различает мелкий код в записи, получит ответ без способа его воспроизведения. Поэтому условие входит в объяснение, а статья содержит точную запись отдельно от временной шкалы.
Временные интервалы нашего плана не задают скорость будущего преподавателя. Если на фразу о потомках понадобится больше времени, меняются границы реплики и длительность эпизода. Не ускоряйте показ ради сохранения условных секунд из примера. Назначение подготовки — сохранить соответствие смысла и момента, а не заставить запись подчиниться предварительной таблице.
Расшифровка и визуальное описание
Текстовая расшифровка позволяет обратиться к материалу без временной шкалы. Для нашей демонстрации она содержит не только реплики, но и существенные действия: показ дерева, ввод выражения, изменение условия и представленный результат. Человек может найти нужный этап и прочитать его обычными частями документа.
Например, в media/linq-demo-transcript.html можно разместить следующий содержательный фрагмент:
<section aria-labelledby="demo-transcript-title">
<h2 id="demo-transcript-title">Текст условной демонстрации LINQ</h2>
<p>План записи: Employees содержит два Employee. Значения FirstName —
Alex и Elena. Это исходные данные учебного примера.</p>
<h3>Выбор потомков</h3>
<p>На экране показано xDoc.Descendants("Employee"). В объяснении
сообщается, что выбор относится к потомкам исходного узла.</p>
<h3>Добавление условия</h3>
<p>В условном сценарии добавляется проверка FirstName на Elena.
Пояснение связывает условие с одним оставшимся сотрудником.</p>
</section>
Слова «план» и «условный» сохраняют происхождение. После реальной записи нужно заменить их описанием фактического содержания только при его сверке. Расшифровка также должна включать существенные действия, которых нет в звуке, если она служит текстовым представлением всего процесса. WAI о расшифровках.
Но расшифровка не всегда заменяет аудиоописание для выбранного уровня соответствия. Критерий 1.2.3 уровня A рассматривает аудиоописание либо медиаальтернативу, а 1.2.5 уровня AA отдельно требует аудиоописание существенного визуального содержания предварительно записанного синхронизированного медиа. 1.2.3, 1.2.5.
Поэтому нужно заранее включать существенную визуальную информацию в объясняющий звук либо подготовить подходящее описание. Если исходный звук уже сообщает всё необходимое, дополнительная дорожка может не добавлять информации. Это определяется содержанием, а не формальным наличием файла «описание». WAI разбирает визуальную информацию.
Плеер не создаёт альтернативу
После предоставления собственного видео подключение может выглядеть так. Этот ресурсный вариант добавляется после раздела filter, не заменяя его текст:
<figure>
<video controls preload="metadata">
<source src="media/linq-demo.mp4" type="video/mp4">
<track kind="captions" src="media/linq-demo-ru.vtt" srclang="ru"
label="Русские субтитры" default>
</video>
<figcaption>Собственная демонстрация выбора Employee и условия по FirstName.</figcaption>
</figure>
<p><a href="media/linq-demo-transcript.html">Читать текст демонстрации</a></p>
Файл linq-demo.mp4 должен существовать и соответствовать подготовленному комплекту. В сохранённых материалах этой главы есть план и текстовые файлы, а не фиктивный видеоресурс. Не вставляйте пустой файл ради исчезновения ошибки пути.
Текстовая ссылка расположена рядом с будущим плеером, поскольку это понятная точка выбора способа чтения. Она сообщает назначение ресурса до перехода. Если текст вынести в конец длинного каталога под названием «Дополнительно», читатель может не понять, что там находится последовательное описание именно этой демонстрации. Обычная расшифровка с заголовками также удобна человеку, который уже посмотрел ролик и теперь ищет конкретное условие.
Управление плеером требует отдельного маршрута: начать, остановить, изменить положение, выбрать субтитры. Сам track не доказывает, что каждая функция удобна в выбранном сочетании средств. В дальнейшем нужно наблюдать настоящий плеер и доступность выбора, сохраняя прямую текстовую возможность.
Комплект с известными границами
Для будущей приёмки сопоставьте звук, изображения, код, субтитры и текст. Ищите потерянные условия, неверные имена и действия, описанные только жестом курсора. Записывайте фактическое различие, а не общий вывод «видео доступно» после одного успешного запуска.
Видео не обязано появляться в каждом уроке. Иногда точный листинг и последовательный разбор лучше передают задачу. Альтернативы не являются приложением для галочки: они помогают сохранить содержательность при разных способах получения материала.
Результат главы — план полного комплекта с условными временами и ясными зависимостями. Смысл знакомого примера остаётся доступен в тексте. Следующее углубление рассмотрит другую особенность технической статьи: русский язык объяснения, английские фразы и программные имена внутри одного документа.