Giter Site home page Giter Site logo

danielpetri1 / bbb-presentation-video Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bigbluebutton/bbb-presentation-video

0.0 0.0 0.0 866 KB

Script to render a video of the presentation area from a BBB recording events.xml

License: GNU General Public License v3.0

Shell 0.28% Python 99.72%

bbb-presentation-video's Introduction

BigBlueButton Presentation Area Video Generator

This is a tool that is part of the BigBlueButton recording processing system, used to generate a video file of just the presentation area, with slides and annotations included, from the recording events file and archived presentation pdf files.

The current version is work in process adding support for the tldraw whiteboard introduced in BigBlueButton 2.6.

Development Environment Notes

Several libraries are used via the gobject-introspection based bindings. The corresponding ubuntu packages to get these bindings are:

  • gir1.2-glib-2.0
  • gir1.2-poppler-0.18
  • gir1.2-gtk-3.0
  • gir1.2-gdkpixbuf-2.0
  • gir1.2-pango-1.0

You'll need ffmpeg for the video encoding to operate correctly. The version included with the current BigBlueButton release is sufficient.

You will also need the Microsoft core fonts installed (or something metric-compatible with appropriate aliases enabled like fonts-croscore), since the text annotations require Arial.

For development, I recommend using a python venv. Set this up with a command like:

python3 -m venv .venv
source .venv/bin/activate
python3 -m pip --require-virtualenv --upgrade pip

Any time you open a new terminal, you can re-run the source command to load it again later.

With the venv activated, you can use pip to install the required python modules and development tools:

pip install --require-virtualenv --upgrade -r requirements-dev.txt -c constraints-ubuntu-focal.txt

(You should re-run this occasionally to pull in updates to the development tools.)

Testing

bbb-presentation-video does not currently have any test suite to run, but we do enforce typing correctness using mypy.

To run the type checking, run mypy in the root of the project checkout with no additional options.

Configuration is loaded from pyproject.toml. Type stubs for some third party libraries that do not provide type information is located in the typings directory.

Code Style

Standard code style is enforced using black with default options. You can run black . in the root of the project to correct all files, or run black on a specific file.

Additionally, sorting of import directives is done using isort using the black-compatible profile. You can run isort . in the root of the project to correct all files, or run isort on a specific file.

Note that you may need to run black after running isort to correct minor style issues that isort sometimes introduces.

bbb-presentation-video's People

Contributors

kepstin avatar germanocaumo avatar antobinary avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.