danielpetri1 / bbb-recording-exporter

A client- and server side script to generate BigBlueButton MP4 recordings.
MIT License
102 stars 50 forks source link

Is bbb-recording-exporter compatible with BBB 2.6 and Greenlight 3.02?? #83

Open tecnomaster opened 1 year ago

tecnomaster commented 1 year ago

Hi @danielpetri1,

I hope you are fine.

Is bbb-recording-exporter compatible with BBB 2.6 and Greenlight 3.02??

I ask that because it looks like there are a lot of changes from BBB 2.3 and Greenlight 2.X.

If your answer is yes, excelent and thanks, I will install it.

If your answer is not, Are you planning to update it? When?

Thanks in advance for your very appreciated support on this matter.

Dan

hostbbb commented 1 year ago

No its not, the new included video format in 2.6 does everything but embeded chat in the mp4, and works great in greenlight some are looking to add chat as well in the video, but nothing planned. is chat embeded important to you?

tecnomaster commented 1 year ago

Hi @hostbbb and thanks for your answer.

My problem is that, if you see the BBB 2.6 documentation at: https://docs.bigbluebutton.org/administration/customize/#enable-generating-mp4-h264-video-output

It talks about 3 files located at: /usr/local/bigbluebutton/core/scripts/

The files should be:

However, the only file that I found there is presentation.yml where I uncommented (deleted the #) the "- mp4" option under video_formats, to have:

video_formats:
  - webm
  - mp4

Then I restarted BBB using:

sudo bbb-conf --restart

However, I don't see any change at the presentation or where is the mp4 file to be downloaded.

Could you tell me:

What I'm doing wrong? Why I my BBB 2.6 doesn't have the video.yml and screenshare.yml files there?

Thanks in advance for your very appreciated support on this matter.

Dan

tecnomaster commented 1 year ago

Hummm it looks like I just missed what is said at: https://docs.bigbluebutton.org/administration/customize/#install-additional-recording-processing-formats

If I understand well, I first need to:

sudo apt-get install bbb-playback-video

and the follow the steps there.

Am I right?

tecnomaster commented 1 year ago

Ok. I got it. I will explain here the procedure so that anyone could do that:

Please read: https://docs.bigbluebutton.org/administration/customize/#install-additional-recording-processing-formats

  1. Install the required packages for new recordings formats:
sudo apt-get install bbb-playback-video
sudo apt-get install bbb-playback-notes
sudo apt-get install bbb-playback-screenshare
sudo apt-get install bbb-playback-podcast

Then, go into the right directory:

cd /usr/local/bigbluebutton/core/scripts/

and chmod 755 the new yml files:

chmod 755 video.yml
chmod 755 notes.yml
chmod 755 screenshare.yml
chmod 755 podcast.yml

Let's start with the videos. Edit the video.yml file:

nano /usr/local/bigbluebutton/core/scripts/video.yml Uncomment at the end this:

  - mimetype: 'video/mp4'
    extension: m4v
    parameters:
      - [ '-c:v', 'copy', # Use working format codec defined in core/lib/recordandplayback/edl/video.rb
          '-c:a', 'aac', '-b:a', '128K',
          '-f', 'mp4', '-movflags', 'faststart' ]
    postprocess: []
  - mimetype: 'video/webm;codecs="vp09.00.41.08,opus"'
    extension: webm
    parameters:
      # Default single-pass encode
      #- [ '-c:v', 'libvpx-vp9', '-level', '4.1', '-b:v', '1800K', '-minrate', '900K', '-maxrate', '2610K',
      #    '-crf', '31', '-quality', 'good', '-speed', '2', '-tile-columns', '2', '-threads', '2',
      #    '-force_key_frames', 'expr:gte(t,n_forced*10)',
      #    '-c:a', 'libopus', '-b:a', '64K',
      #    '-f', 'webm' ]
      # Slower but better quality two-pass encode
      - [ '-c:v', 'libvpx-vp9', '-level', '4.1', '-b:v', '1800K', '-minrate', '900K', '-maxrate', '2610K',
          '-crf', '31', '-quality', 'good', '-pass', '1', '-speed', '4', '-tile-columns', '2', '-threads', '2',
          '-force_key_frames', 'expr:gte(t,n_forced*10)',
          '-an',
          '-f', 'webm' ]
      - [ '-c:v', 'libvpx-vp9', '-level', '4.1', '-b:v', '1800K', '-minrate', '900K', '-maxrate', '2610K',
          '-crf', '31', '-quality', 'good', '-pass', '2', '-speed', '2', '-tile-columns', '2', '-threads', '2',
          '-force_key_frames', 'expr:gte(t,n_forced*10)',
          '-c:a', 'libopus', '-b:a', '64K',
          '-f', 'webm' ]

Now the screensharing. Edit:

nano /usr/local/bigbluebutton/core/scripts/screenshare.yml Uncomment at the end:

  - :mimetype: 'video/mp4; codecs="avc1.640028, mp4a.40.2"'
    :extension: mp4
    :parameters:
      - [ '-c:v', 'libx264', '-crf', '21', '-preset', 'medium', '-profile:v', 'high', '-level', '40', '-g', '240',
          '-c:a', 'aac', '-b:a', '96K',
          '-threads', '8', '-f', 'mp4', '-movflags', 'faststart' ]

Now, the standard presentation. Edit:

nano /usr/local/bigbluebutton/core/scripts/presentation.yml Uncomment mp4 to be:

    video_formats:
    - webm
    - mp4

There is currently an issue where the recording formats are not automatically enabled when they are installed - see #12241 for details.

In order to enable the recording formats manually, you need to edit the file /usr/local/bigbluebutton/core/scripts/bigbluebutton.yml

cd /usr/local/bigbluebutton/core/scripts/
nano /usr/local/bigbluebutton/core/scripts/bigbluebutton.yml

and complete the following under steps:

steps:
  archive: "sanity"
  sanity: "captions"
  captions:
    - "process:presentation"
    - "process:video"
    - "process:notes"
    - "process:screenshare"
    - "process:podcast"
  "process:presentation": "publish:presentation"
  "process:video": "publish:video"
  "process:notes": "publish:notes"
  "process:screenshare": "publish:screenshare"
  "process:podcast": "publish:podcast"

Then execute:

systemctl restart bbb-rap-resque-worker.service Go into Greelight/BBB and start a new meeting with webcam/audio, screensharing and write some notes.

Once the recording has been processed you should be able to see it like:

imagen

That's it ;-)

hostbbb commented 1 year ago
video_formats:
- webm
- mp4

this takes twice the disk space and is not really needed.. just use -mp4 and will play in IOS and all other browsers, the webm wont be used by players. video_formats:

- webm

- mp4
FabioNov commented 1 year ago

No its not, the new included video format in 2.6 does everything but embeded chat in the mp4, and works great in greenlight some are looking to add chat as well in the video, but nothing planned. is chat embeded important to you?

Hi @hostbbb, Do you know any solution to have chat embedded in video with BBB 2.6?

FSeifer commented 1 year ago

Hello, thank you for the instructions. I only need the "video" format for my recordings, but currently they arent showing the used presentation..

Do I need to setup the other playback-modules as well? e.g. "screenshare" "presentation" etc.?

Regards FSeifer

shurakenas commented 1 year ago

Хорошо. Я понял. Я объясню здесь процедуру, чтобы каждый мог это сделать:

Пожалуйста, прочитайте: https://docs.bigbluebutton.org/administration/customize/#install-additional-recording-processing-formats .

  1. Установите необходимые пакеты для новых форматов записей:
sudo apt-get install bbb-playback-video
sudo apt-get install bbb-playback-notes
sudo apt-get install bbb-playback-screenshare
sudo apt-get install bbb-playback-podcast

Затем перейдите в правильный каталог:

компакт-диск /usr/local/bigbluebutton/core/scripts/

и chmod 755 — новые файлы yml:

chmod 755 video.yml
chmod 755 notes.yml
chmod 755 screenshare.yml
chmod 755 podcast.yml

Начнем с видео. Отредактируйте файл video.yml:

nano /usr/local/bigbluebutton/core/scripts/video.yml Раскомментируйте в конце это:

  - mimetype: 'video/mp4'
    extension: m4v
    parameters:
      - [ '-c:v', 'copy', # Use working format codec defined in core/lib/recordandplayback/edl/video.rb
          '-c:a', 'aac', '-b:a', '128K',
          '-f', 'mp4', '-movflags', 'faststart' ]
    postprocess: []
  - mimetype: 'video/webm;codecs="vp09.00.41.08,opus"'
    extension: webm
    parameters:
      # Default single-pass encode
      #- [ '-c:v', 'libvpx-vp9', '-level', '4.1', '-b:v', '1800K', '-minrate', '900K', '-maxrate', '2610K',
      #    '-crf', '31', '-quality', 'good', '-speed', '2', '-tile-columns', '2', '-threads', '2',
      #    '-force_key_frames', 'expr:gte(t,n_forced*10)',
      #    '-c:a', 'libopus', '-b:a', '64K',
      #    '-f', 'webm' ]
      # Slower but better quality two-pass encode
      - [ '-c:v', 'libvpx-vp9', '-level', '4.1', '-b:v', '1800K', '-minrate', '900K', '-maxrate', '2610K',
          '-crf', '31', '-quality', 'good', '-pass', '1', '-speed', '4', '-tile-columns', '2', '-threads', '2',
          '-force_key_frames', 'expr:gte(t,n_forced*10)',
          '-an',
          '-f', 'webm' ]
      - [ '-c:v', 'libvpx-vp9', '-level', '4.1', '-b:v', '1800K', '-minrate', '900K', '-maxrate', '2610K',
          '-crf', '31', '-quality', 'good', '-pass', '2', '-speed', '2', '-tile-columns', '2', '-threads', '2',
          '-force_key_frames', 'expr:gte(t,n_forced*10)',
          '-c:a', 'libopus', '-b:a', '64K',
          '-f', 'webm' ]

Теперь демонстрация экрана. Редактировать:

nano /usr/local/bigbluebutton/core/scripts/screenshare.yml Раскомментируйте в конце:

  - :mimetype: 'video/mp4; codecs="avc1.640028, mp4a.40.2"'
    :extension: mp4
    :parameters:
      - [ '-c:v', 'libx264', '-crf', '21', '-preset', 'medium', '-profile:v', 'high', '-level', '40', '-g', '240',
          '-c:a', 'aac', '-b:a', '96K',
          '-threads', '8', '-f', 'mp4', '-movflags', 'faststart' ]

Теперь стандартное изложение. Редактировать:

nano /usr/local/bigbluebutton/core/scripts/presentation.yml Раскомментируйте mp4 так:

  video_formats:
  - webm
  - mp4

В настоящее время существует проблема, из-за которой форматы записи не включаются автоматически при их установке — подробности см. в #12241 .

Чтобы включить форматы записи вручную, необходимо отредактировать файл /usr/local/bigbluebutton/core/scripts/bigbluebutton.yml.

cd /usr/local/bigbluebutton/core/scripts/
nano /usr/local/bigbluebutton/core/scripts/bigbluebutton.yml

и выполните следующие шаги:

steps:
  archive: "sanity"
  sanity: "captions"
  captions:
    - "process:presentation"
    - "process:video"
    - "process:notes"
    - "process:screenshare"
    - "process:podcast"
  "process:presentation": "publish:presentation"
  "process:video": "publish:video"
  "process:notes": "publish:notes"
  "process:screenshare": "publish:screenshare"
  "process:podcast": "publish:podcast"

Затем выполните:

systemctl restart bbb-rap-resque-worker.service Зайдите в Greelight/BBB и начните новую встречу с веб-камерой/аудио, демонстрацией экрана и напишите несколько заметок.

После обработки записи вы сможете увидеть ее следующим образом:

изображенный

Вот и все ;-)

The video opens but there is still no "Download" button. Tell me how can I download a video file?