Запись видео в BigBlueButton

Запись видео в BigBlueButton

от Oxana V -
Количество ответов: 24

Добрый день!

Возможно ли каким-нибудь плагином или кодом прописать сделать так, чтобы запись видео и звука шла вместе, т.е. одним файлом, а не отдельно звук и отдельно видео?

Спасибоулыбаюсь

В ответ на Oxana V

Re: Запись видео в BigBlueButton

от W AU -

Все гораздо даже лучше и круче, чем Вы хотите. Ну с простого - в плагинах поиск по слову Блюбаттон  (https://moodle.org/plugins/search.php?s=bigbluebutton&search=Search+plugins) сразу и выдаст два результата - сам батон и плагин доступности записей, который -

1. соберет и склеит весь вебинар

2. создаст ему оглавление

3. обеспечит его доступность с заданными правами

В ответ на W AU

Re: Запись видео в BigBlueButton

от Oxana V -

Спасибо!

Почему-то не пошел... Не видит на сервере записей...

В ответ на Oxana V

Re: Запись видео в BigBlueButton

от W AU -

он не увидит те записи, которые были сделаны До него, до его установки и активации для конкретного курса. Т.е. что ушло, то ушло. Сам БББ, по моим наблюдениям, "исходники" записанных вебинаров хранит неделю, после чего затирает. А плагин "записей" сразу после окончания вебинара запускает процесс склейки, оглавления и сжатия, причем весьма эффективного. На хорошем железе сжатие вебинара на 140 минут может занимать 30-40 минут (настроено гуманно, чтобы не "подвешивать" сервер команда сжатия ограничивает сама себя использованием лишь половиной имеющихся процессоров), и это без записей вебкамер. Только звуковая дорожка такого вебинара до сжатия "весит" ок. 1,2-1,4 гб. А после сжатия весь вебинар весит метров 80-120. И в доступных к просмотру записи появляются лишь по окончании сжатия и склейки, т.е. в зависимости от мощности железа. Понять, что процесс склейки идет, можно только "в консоли", зайдя через терминал на сервер и посмотрев загрузку процессора. Иных внешних проявлений нет.

Это я к тому, что не факт, что Ваше "железо" даст Вам ожидаемый результат.

В ответ на W AU

Re: Запись видео в BigBlueButton

от Olga Kim -

Извините, что спрашиваю не в тему. Я вижу вы уже давно работаете с ВВВ. Скажите пожалуйста, почему ВВВ рекомендует устанавливать свой софт на железячный сервер, а не на виртуальную машину? Мы дома установили на виртуальный сервер, тестируем, вроде работает. 

В ответ на Olga Kim

Re: Запись видео в BigBlueButton

от W AU -

про давно - это заблуждение. Я и слово-то такое узнал лишь к началу февраля-2016г.

Да, да вируталке он тоже работает. Будь то виртуалка ВируталБокса, хоть ОпенВз. Думаю, разработчики осторожничают - ведь и Убунту обычно выбирают не от хорошей жизни, а мирясь с низкой квалификацией пользователей. На самом деле у меня на одном железном сервере и БББ работает, и Мудл, и еще пара сайтов, движков.

Но БББ состоит из нескольких компонент, каждая из которых занимает ОЗУ, каждая слушает порты (ждет соединений) и во избежание конфликтов рекомендуют отдельный железный сервер. И опять же, БББ обеспечивает сервис трансляции, а если на одной с ним железяке еще много чего крутится, то "взлет" этого чего иного пагубно отразится на работе БББ. Формируя свою виртуалку Вы, возможно, не готовы к скорости распухания архива записей БББ - не сжатых, а "исходников" (примерно 1,5-2 гб на час), к тяжелой работе модуля по склейке и сжатию (трехчасовая запись может клеиться ок. часа на весьма приличном железе с 64гб ОЗУ, 8 ядер по 3,7ггц)

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

В ответ на Olga Kim

Re: Запись видео в BigBlueButton

от Vadim Dvorovenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода

Основной компонент для работы со звуком в BBB - это freeswitch. Именно его пожелание быть как можно ближе к железу, потому что виртуальная машина не всегда получает такты от процессора и добавляет несколько слоёв обработки до сетевой карты, что приводит к неравномерности в работе и задержкам звукового потока. В результате вы можете получить ситуацию, что во время трансляции у вас звук будет постепенно отставать от реальности и эта разница может набежать такой, что общаться будет некомфортно. Выдержит ваша виртуальная машина или нет, вы сможете узнать только когда нагрузите её вебинаром на несколько десятков человек подключающихся из не самых ближних мест. У нас стоит на виртуалке, для вебинаров на троих работает хорошо

В ответ на W AU

Re: Запись видео в BigBlueButton

от Oxana V -

Вот начался вебинар, нажали на кнопку записи (или поставили галочку на запись в настройках), вебинар прошел, запись остановили. После этого на сервере будет идти "склейка" сразу автоматически? После того, как "склейка" закончилась, где взять запись и как ее добавить в курс?

В ответ на Oxana V

Re: Запись видео в BigBlueButton

от W AU -

Нет, не сразу. Но в течение нескольких минут. Чтобы запись стала видна в Мудле, нужно установить плагин показа записей - в поиске по плагинам по слову БББ всего 2 плагина. Запись будет видна сразу в нескольких местах -

1. элемент курса Вебинар - где был вход в вебинар, там и запись появится

2. если в том же месте будет элемент курса Запись

3. в шапке курса - элемент Записи - там будут все записи этого курса

4. элемент курса Гиперссылка - что вставите, то и будет

В ответ на Oxana V

Re: Запись видео в BigBlueButton

от W AU -

В дополнение и даже изменение моего предыдущего ответа.

Тут разные понятия - сервер БББ и сервер Мудла. Сервер БББ хранит записи неделю, всех, даже на которых не нажимали кнопку Запись. Записи, в которых была нажата кнопка Запись, приежде чем они станут доступны в интерфейсе Мудла, должны быть склеены.

Как выяснилось, задача склейки  выполняется кроном (cron) с той периодичностью, какую ему указали, обычно 5 минут. ОТсюда вывод - если Вы не настроили cron для запуска заданий Мудла, то записи в интерфейсе Мудла и не увидите. Т.е. плагин Записи вебинаров курса можно и не активировать - его назначение сводится лишь к сбору и отображению в одном месте всех сделанных записей одного курса. И без включения этого элемента в Курс сделанные записи будут доступны  в курсе (вместо самих вебинаров).

В ответ на W AU

Re: Запись видео в BigBlueButton

от W AU -

надеюсь, это текущее знание будет правильным ответом -

если еще точнее, то крон Мудла лишь сканирует хранилищие собранных записей и лишь отображает повявишееся там. Алоритм запуска склейки и сжатия запускается самим БББ сразу после окончания записи (все вышли и Ведущий потом нажал кнопку "закончить"). В процессах при склейке вижу процессы ffmpeg (кстати, это заблуждение хаутушек по установке - не обязательно ffmpeg версии 2.3.3, прекрасно работает и текущая, 2.8.х) с длиннющими параметарми запуска. А вот grep -r ffmpeg /var/bigbluebutton/ ничего не выдает. grep -r ffmpeg /var/www/moodle/ выдает упоминание об ffmpeg лишь в плагине poodll.

В логах БББ есть указание, как проводится сборка, находится просто -

grep -r ffmpeg /var/log

В ответ на W AU

Re: Запись видео в BigBlueButton

от Azat Gabdullin -

Столкнулся с проблемой отсутсвия записей в Moodle проведенных в BigBlueButton(0.91)

Moodle 2.7.11 (Build: 20151109)

mod_bigbluebuttonbn 2016051905 2.1.1(это уже после обновления модуля)

cron отрабатывал в ручную в течении часа каждые 10-15 минут, там ничего интересного не было


/var/log/apache2/access.log

[03/Oct/2016:20:57:18 +0500] "GET /mag/theme/image.php/opentech/bigbluebuttonbn/1464158599/icon HTTP/1.0" 200 4287 "http://SITENAME.DEMO/mag/course/view.php?id=2" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36"

[03/Oct/2016:20:57:20 +0500] "GET /mag/mod/bigbluebuttonbn/view.php?id=38 HTTP/1.0" 200 12205 "http://SITENAME.DEMO/mag/course/view.php?id=2" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36"

[03/Oct/2016:20:57:22 +0500] "GET /mag/theme/yui_combo.php?3.15.0/datasource-local/datasource-local-min.js&3.15.0/datasource-get/datasource-get-min.js&3.15.0/dataschema-base/dataschema-base-min.js&3.15.0/dataschema-json/dataschema-json-min.js&3.15.0/datasource-jsonschema/datasource-jsonschema-min.js&3.15.0/datasource-polling/datasource-polling-min.js&3.15.0/json-stringify/json-stringify-min.js HTTP/1.0" 200 3123 "http://SITENAME.DEMO/mag/mod/bigbluebuttonbn/view.php?id=38" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36"

[03/Oct/2016:20:57:22 +0500] "GET /mag/lib/javascript.php/1464158597/mod/bigbluebuttonbn/module.js HTTP/1.0" 200 3179 "http://SITENAME.DEMO/mag/mod/bigbluebuttonbn/view.php?id=38" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36"

[03/Oct/2016:20:57:22 +0500] "GET /mag/mod/bigbluebuttonbn/bbb_broker.php?action=meeting_info&id=602a1078cd303f4fec2fafe4201bb1d8d387b7ab-2-1&bigbluebuttonbn=1&callback=YUI.Env.DataSource.callbacks.yui_3_15_0_3_1475510207010_526 HTTP/1.0" 200 879 "http://SITENAME.DEMO/mag/mod/bigbluebuttonbn/view.php?id=38" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36"

[03/Oct/2016:20:58:24 +0500] "GET /mag/mod/bigbluebuttonbn/bbb_view.php?action=join&id=38&bigbluebuttonbn=1 HTTP/1.0" 302 530 "http://SITENAME.DEMO/mag/mod/bigbluebuttonbn/view.php?id=38" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36"

[03/Oct/2016:20:58:39 +0500] "GET /mag/mod/bigbluebuttonbn/bbb_broker.php?action=meeting_info&id=602a1078cd303f4fec2fafe4201bb1d8d387b7ab-2-1&bigbluebuttonbn=1&callback=YUI.Env.DataSource.callbacks.yui_3_15_0_3_1475510207010_549 HTTP/1.0" 200 2028 "http://SITENAME.DEMO/mag/mod/bigbluebuttonbn/view.php?id=38" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36"

[03/Oct/2016:20:59:23 +0500] "GET /mag/mod/bigbluebuttonbn/bbb_view.php?action=logout&id=38&bn=1 HTTP/1.0" 200 7306 "http://bbb.SITENAME.DEMO/client/BigBlueButton.html" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36"

[03/Oct/2016:20:59:31 +0500] "GET /mag/mod/bigbluebuttonbn/bbb_broker.php?action=meeting_info&id=602a1078cd303f4fec2fafe4201bb1d8d387b7ab-2-1&bigbluebuttonbn=1&callback=YUI.Env.DataSource.callbacks.yui_3_15_0_3_1475510207010_556 HTTP/1.0" 200 2125 "http://SITENAME.DEMO/mag/mod/bigbluebuttonbn/view.php?id=38" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36"



/var/log/apache2/error.log

[Mon Oct 03 20:57:21.551981 2016] [:error] [pid 534] [client 192.168.10.2:37799] http://bbb.SITENAME.DEMO/bigbluebutton/api/getRecordings?meetingID=602a1078cd303f4fec2fafe4201bb1d8d387b7ab-2-1&checksum=ca0fbb5a1cea8e8f8f71fe4078699fb00bcc9ab1, referer: http://SITENAME.DEMO/mag/course/view.php?id=2


bbb сервер говорит что все есть

  • Список всех записей

# bbb-record --list

Internal MeetingID                                               Time                APVD APVDE RAS Slides Processed            Published           External MeetingID

------------------------------------------------------  ---------------------------- ---- ----- --- ------ -------------------- ------------------  -------------------

6986dea687187aa834e057a88a9e9c132448a372-1475510281013  Пн. окт. 3 20:58:01 YEKT 2016 XXX        X        5


  • Презентации

# la -la /var/bigbluebutton/6986dea687187aa834e057a88a9e9c132448a372-1475510281013/6986dea687187aa834e057a88a9e9c132448a372-1475510281013/d2d9a672040fbde2a47a10bf6c37b6a4b5ae187f-1475510281013/

итого 288

drwxr-xr-x 4 tomcat7 tomcat7   4096 окт.   3 20:58 .

drwxr-xr-x 3 tomcat7 tomcat7   4096 окт.   3 20:58 ..

-rw-r--r-- 1 tomcat7 tomcat7 191509 окт.   3 20:58 d2d9a672040fbde2a47a10bf6c37b6a4b5ae187f-1475510281013.pdf

-rwxr-xr-x 1 tomcat7 tomcat7  67837 окт.   3 20:58 slide-1.swf

-rwxr-xr-x 1 tomcat7 tomcat7   1758 окт.   3 20:58 slide-2.swf

-rwxr-xr-x 1 tomcat7 tomcat7   1914 окт.   3 20:58 slide-3.swf

-rwxr-xr-x 1 tomcat7 tomcat7   1914 окт.   3 20:58 slide-4.swf

-rwxr-xr-x 1 tomcat7 tomcat7   1914 окт.   3 20:58 slide-5.swf

drwxr-xr-x 2 tomcat7 tomcat7   4096 окт.   3 20:58 textfiles

drwxr-xr-x 2 tomcat7 tomcat7   4096 окт.   3 20:58 thumbnails


  • Видеопоток с камеры

# ls -la /usr/share/red5/webapps/video/streams/6986dea687187aa834e057a88a9e9c132448a372-1475510281013/

-rw-rw-r--  1 red5 red5 175035 окт.   3 21:00 320x240-pdc0kidb0ips_2-1475510305950.flv


  • Аудиопоток с микрофона

# ls -la /var/freeswitch/meetings/

-rw-r--r-- 1 freeswitch daemon  8993424 окт.   3 21:00 6986dea687187aa834e057a88a9e9c132448a372-1475510281013-428350857.wav


В ответ на Oxana V

Re: Запись видео в BigBlueButton

от Илья Терновой -

Если есть свой BBB сервер, то можно использовать сервис http://createwebinar.com. Поддерживает BBB сервер версии 1.1 и выше. Видеозапись после вебинара можно вобще cкачать одним файлом в формате MP4 или просмотреть по ссылке. И все это бесплатно! Там еще много других функций, тоже полезных для проведения обучений

В ответ на Илья Терновой

Re: Запись видео в BigBlueButton

от Андрей Г. -

Нуждаюсь в помощи. Была конференция около шести часов. После публикации выяснилось что звук полез. А часть звука в конце вообще пропал. Можно както звук скачать отдельно? 

В ответ на Андрей Г.

Re: Запись видео в BigBlueButton

от Андрей Г. -

Или каким образо можна склеть заново.  Или это не поможет.

В ответ на Андрей Г.

Re: Запись видео в BigBlueButton

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle
Там есть раздельно аудио и видео в /var/bigbluebutton/records/raw//audio/ /var/bigbluebutton/records/raw//video/

Есть полезная ссылка на эту тему https://docs.bigbluebutton.org/dev/recording.html
В ответ на Виталий Лавров

Re: Запись видео в BigBlueButton

от Андрей Г. -

Спасибо за ответ. Столкнулся с неприятным фактом. После публикации записи, оказывается что идет розсинхронизация звука с картинкой. Может быть кто-то сталкивался с подобной проблемой. Куда копать?

В ответ на Виталий Лавров

Re: Запись видео в BigBlueButton

от Игорь М -
А одним файлом ,я так понимаю, скачать никак? А то перезаписывать запись конференции программой записи с экрана как то несерьезно...
В ответ на Игорь М

Re: Запись видео в BigBlueButton

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle
С рассинхронизацией не сталкивался. Копать можно в /var/bigbluebutton/recording/raw .
Там есть сырое видео и аудио. Возможно были потери при записи. Но чем анализировать - не знаю.
Воспроизводить на разных компутерах с разными браузерами пробовали? Везде рассинхронизация?

Да, запись целиком в виде одного файла не отдать.
Правда я думаю, что можно отдать набор файлов (вместе с плеером) для локального воспроизведения.
Плеер не использует bbb-сервер, он полностью жабаскриптовый и использует nginx только для получения файлов.
В ответ на Виталий Лавров

Re: Запись видео в BigBlueButton

от Игорь М -
Ну, я отчасти решил программу программой OBS - в Источники ставлю Браузер ,туда ссылку на запись или непосредственно трансляцию - и все это пишется в файл.
В ответ на Виталий Лавров

Re: Запись видео в BigBlueButton

от Игорь М -
Прошу прощения, можно вопрос, чтобы тем не плодить. А можно как то "отсрочить" обработку записи трансляции? Напрмиер, чтобы после завершения онлайн трансляции обработка начиналась не сразу ,а, скажем, через три часа? А то у нас есть одна группа, для них мы делаем записи занятий, и в итоге получается, что одна только обработка одной такой трансляции, совместно с одновременной трансляцией у других преподавателей, "вешает" наш сервер. И в другое время их не поставишь.
В ответ на Игорь М

Re: Запись видео в BigBlueButton

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle
за обработку записей отвечает отдельный скрипт (/usr/local/bigbluebutton/core/scripts/rap-process-worker.rb) из
bbb-rap-process-worker.service . Можно не запускать его в дневное время.

Если обработка 1 видео "вешает" сервак, то вам с BBB не по пути улыбаюсь
В ответ на Виталий Лавров

Re: Запись видео в BigBlueButton

от Игорь М -
Да там сервак старее поповой собаки, что под рукой было, на то и поставил, хорошо на нем хотя бы 4 ядра да оперативки 16 гб есть, сейчас в план закупок внесен новый сервер специально для BBB, но пока это утвердят, пока аукцион и прочая бюрократия...
 
А скрипт этот - он же по расписанию как то запускается? где поправить можно?
В ответ на Игорь М

Re: Запись видео в BigBlueButton

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle
Можно добавить условие
ConditionPathExists=!/tmp/bbb-process
в bbb-rap-process-worker.service и тогда оно будет запускать перекодирование только при отсутствии файла /tmp/bbb-process
Файл создавать по таймеру утром и удалять вечером.