В прошлом посте, я рассказал, как мы делали студию для записи массовых открытых онлайн-курсов (MOOC) в офисном помещении. Теперь, по прошествии полугода, я бы хотел рассказать про наше решение, которое используется уже в двух студиях (в Санкт-Петербурге и Москве), а процесс разворачивания новой студии занимает не более суток при наличии всего железа.
Процесс записи курса происходит таким образом, что преподаватель приходит в студию в удобное для него время, и записывает себя сам. Всё автоматизировано, чтобы задействовать наименьшее количество людей. После сеанса записи получаются практически готовые видеофайлы, которые достаточно расставить в нужном порядке, отредактировать и загрузить на Stepic.org.
Для начала (см. прошлогоднюю конфигурацию), мы заменили все провода с SDI на HDMI, потом отказались от использования AJA ROI (она сгорела и до сих пор в ремонте), переписали систему для управления видеозаписью на Django. Код проекта выложен на GitHub, но заранее извиняюсь за плохо оформленный репозиторий.
Таким образом, для студии записи онлайн-курсов необходимо:
Из камеры идут 2 провода:
Сервер (Win) и Клиент (Linux) находятся в одной, закрытой, внутренней сети. На клиенте установлена Ubuntu 14.10, планшет Wacom подключен к нему как монитор. На сервере — Windows 8.1. Такой выбор операционных систем обусловлен тем, что для записи экрана на клиенте используется утилита ffmpeg, которая лучше всего работает под Linux. Но поскольку драйверы Blackmagic под Linux не всегда работают, плюс машина-сервер иногда используется для монтажа видео в Adobe Premiere, то на нём стоит Windows (хотя захват видео там осуществляется тоже с помощью ffmpeg).
Так проходит процесс управления видеозаписью со стороны преподавателя:
Распишем по пунктам, что же именно происходит, когда преподаватель выполняет действия в браузере на клиенте.
Когда он нажимает «Start Recording»:
Когда преподаватель нажимает «Stop Recording»:
После записи, преподаватель может самостоятельно, не выходя из студии, отсмотреть уже почти готовый материал, нажав кнопку «Show» и «Show screen», а если материал ему не нравится — перезаписать его.
Мы считаем, что нам удалось создать удобную систему для записи видео-MOOCов, ведь обычно, у многих преподавателей возникают проблемы не только с видеозаписью, но и с разбиением курса на блоки. Однако, записываясь в нашей студии, преподавателю заранее приходится дробить материал на структурированные части, которые в дальнейшем лягут в основу видеокурса, например, на Stepic.org.
Для примера, хочется привести две истории из записей онлайн-курсов. Оба курса ведут преподаватели из Академического университета РАН – это «Ликбез по дискретной математике» и «Введение в математический анализ».
В первом случае, преподаватель (Александр Владимирович Омельченко) изначально планировал запустить два курса, однако, после разбиения курса на блоки и пересмотра материала, было решено взять части этих курсов, слить их в один более простой и дозаписать недостающее. Так родился курс — который, по нашим планам, станет отправной точкой для изучения более сложных тем комбинаторики и теории графов.
Другим примером может послужить курс по матанализу. После нескольких часов работы с сенсорным экраном, преподаватель (Александр Игоревич Храбров) решил, что классический формат «лектор с доской» ему подходит больше. Поэтому Wacom с Ubuntu стали выступать в качестве пульта управления видеозаписью, а все лекции записывались с маркерной доской. Причём за один раз записывается информация, относящаяся к одной доске, потом преподаватель останавливает запись, стирает, и начинает запись нового фрагмента на чистой доске.
Данный сетап проработал в нашей студии около месяца, после чего мы решили, что данная конфигурация достаточно надежна и удобна, и открыли еще одну студию в Москве, единственное отличие которой от студии в Петербурге – камера Canon XA20 вместо Canon C100.
Как было и как стало в московской студии:
Студия в Санкт-Петербурге выглядит вот так:
В этот пост я решил не включать большое количество деталей и решений, которые попросту не работали или работали, но плохо. Так, например, существует возможность записывать видео удаленно с помощью любого устройства, которое поддерживается программой Adobe Flash Live Encoder, для этого достаточно генерировать ему на вход валидный XML-файл. Однако, это решение работает нестабильно.
По всем вопросам и предложениям прошу писать в комментариях и не стесняться.
Процесс записи курса происходит таким образом, что преподаватель приходит в студию в удобное для него время, и записывает себя сам. Всё автоматизировано, чтобы задействовать наименьшее количество людей. После сеанса записи получаются практически готовые видеофайлы, которые достаточно расставить в нужном порядке, отредактировать и загрузить на Stepic.org.
Оборудование
Для начала (см. прошлогоднюю конфигурацию), мы заменили все провода с SDI на HDMI, потом отказались от использования AJA ROI (она сгорела и до сих пор в ремонте), переписали систему для управления видеозаписью на Django. Код проекта выложен на GitHub, но заранее извиняюсь за плохо оформленный репозиторий.
Таким образом, для студии записи онлайн-курсов необходимо:
- 2 компьютера (клиент Linux + сервер Windows);
- Камера с HDMI выходом (Canon EOS C100);
- HDMI сплиттер (любой);
- Планшет Wacom (Cintiq 24HD Interactive Pen Display DTK-2400);
- 1 карта захвата Blackmagic Design Intensity Pro;
- Свет и фон остались те же.
Схема студии
Из камеры идут 2 провода:
- HDMI в HDMI сплиттер, который позволяет одновременно показывать изображение на мониторе (преподаватель видит себя) и захватывать его на PC (для записи);
- Провод 3.5mm jack в PC для захвата звука (по какой-то причине Intensity Pro не захватывала звук через HDMI).
Сервер (Win) и Клиент (Linux) находятся в одной, закрытой, внутренней сети. На клиенте установлена Ubuntu 14.10, планшет Wacom подключен к нему как монитор. На сервере — Windows 8.1. Такой выбор операционных систем обусловлен тем, что для записи экрана на клиенте используется утилита ffmpeg, которая лучше всего работает под Linux. Но поскольку драйверы Blackmagic под Linux не всегда работают, плюс машина-сервер иногда используется для монтажа видео в Adobe Premiere, то на нём стоит Windows (хотя захват видео там осуществляется тоже с помощью ffmpeg).
Сценарий использования
Так проходит процесс управления видеозаписью со стороны преподавателя:
Распишем по пунктам, что же именно происходит, когда преподаватель выполняет действия в браузере на клиенте.
Когда он нажимает «Start Recording»:
- На сервер отправляется запрос о том, что необходимо начать захват изображения с карточки Blackmagic, к которой подключена камера по HDMI проводу.
- Создается файл видео записи .TS в папке, соответствующей данной видеозаписи.
- На сервер отправляется запрос на клиент с командой записи экрана.
- Создается файл записи экрана .mkv на клиенте.
- Происходит проверка на наличие ошибок при запуске записи.
- Данные отправляются на сервер статистики и создаются соответствующие записи в базе данных.
Когда преподаватель нажимает «Stop Recording»:
- Останавливается видеозапись преподавателя с камеры.
- Останавливается видеозапись экрана.
- Сервер автоматически подключается к удаленной машине и забирает файл скринкаста, сохраняя его рядом с файлом видеозаписи преподавателя.
- Операция завершается и система готова к записи нового видео.
После записи, преподаватель может самостоятельно, не выходя из студии, отсмотреть уже почти готовый материал, нажав кнопку «Show» и «Show screen», а если материал ему не нравится — перезаписать его.
Мы считаем, что нам удалось создать удобную систему для записи видео-MOOCов, ведь обычно, у многих преподавателей возникают проблемы не только с видеозаписью, но и с разбиением курса на блоки. Однако, записываясь в нашей студии, преподавателю заранее приходится дробить материал на структурированные части, которые в дальнейшем лягут в основу видеокурса, например, на Stepic.org.
История двух курсов
Для примера, хочется привести две истории из записей онлайн-курсов. Оба курса ведут преподаватели из Академического университета РАН – это «Ликбез по дискретной математике» и «Введение в математический анализ».
В первом случае, преподаватель (Александр Владимирович Омельченко) изначально планировал запустить два курса, однако, после разбиения курса на блоки и пересмотра материала, было решено взять части этих курсов, слить их в один более простой и дозаписать недостающее. Так родился курс — который, по нашим планам, станет отправной точкой для изучения более сложных тем комбинаторики и теории графов.
Другим примером может послужить курс по матанализу. После нескольких часов работы с сенсорным экраном, преподаватель (Александр Игоревич Храбров) решил, что классический формат «лектор с доской» ему подходит больше. Поэтому Wacom с Ubuntu стали выступать в качестве пульта управления видеозаписью, а все лекции записывались с маркерной доской. Причём за один раз записывается информация, относящаяся к одной доске, потом преподаватель останавливает запись, стирает, и начинает запись нового фрагмента на чистой доске.
Москва
Данный сетап проработал в нашей студии около месяца, после чего мы решили, что данная конфигурация достаточно надежна и удобна, и открыли еще одну студию в Москве, единственное отличие которой от студии в Петербурге – камера Canon XA20 вместо Canon C100.
Как было и как стало в московской студии:
Студия в Санкт-Петербурге выглядит вот так:
Заключение
В этот пост я решил не включать большое количество деталей и решений, которые попросту не работали или работали, но плохо. Так, например, существует возможность записывать видео удаленно с помощью любого устройства, которое поддерживается программой Adobe Flash Live Encoder, для этого достаточно генерировать ему на вход валидный XML-файл. Однако, это решение работает нестабильно.
По всем вопросам и предложениям прошу писать в комментариях и не стесняться.