Commit Graph

1453 Commits

Author SHA1 Message Date
germanocaumo
835cf4f753 fix(whiteboard): diff shape update + shape permission +
Several improvements to tldraw whiteboard:
 - Only send the shape diff on shape updates (reduce a lot the message traffic)
 - Shape permissions (don't allow others to select/edit unless you are presenter/moderator)
  - This required some changes in akka model
 - Tldraw state patch changes to improve stability with fast updates (fix several crashes)
2022-10-21 14:05:31 +00:00
Ramón Souza
2b0971e2c8 Merge tag 'v2.5.6' into merge-256-26 2022-09-26 09:17:59 -03:00
Calvin Walton
fb43eba355 recording: Fix incorrect seek offsets in video
When converting from using the 'movie' source filter to using separate
ffmpeg command line inputs, it wasn't taken into account that the
'movie' filter passes through timestamps from the source file, while the
ffmpeg input adjusts timestamps so that '0' is the selected seek point.

The easiest fix is to add an option to the ffmpeg command to disable the
timestamp adjustments.

Fixes #15644 (This needs to go into BigBlueButton 2.5 and 2.6)
2022-09-16 12:14:19 -04:00
germanocaumo
d609628047 refactor(recording): remove not used event 2022-08-23 18:39:46 +00:00
germanocaumo
98d431ad92 fix(recording): correctly save tldraw pan/zoom events 2022-08-16 19:11:49 +00:00
germanocaumo
d4b8bdce7e fix(tldraw): sync viewed area between presenter/viewers +
- Return to the ResizeAndMoveSlide event to do pan&zoom, respecting the viewed width and height ratio
- Defaults zoom in toolbar to 100% like before to be more consistent
- Fit to width and Reset Zoom is back (fit tho width still has some sync problems)
- Fix to not change to first page when presenter reloads page
2022-08-16 12:12:43 +00:00
Ramón Souza
ded8493f05 Merge remote-tracking branch 'upstream/v2.5.x-release' into 2526-aug3 2022-08-03 09:53:41 -03:00
germanocaumo
1ae8e5c35d fix(recording): bump bbb_version to 2.6.0 in events.xml
- Update the version to 2.6.0 to ease the detection of old/new whiteboard events
- Fix recording cursor when there is no pan/zoom and annotations in tldraw
- Don't generate slides pngs for 2.6.0, they are not used anymore in playback (svgs instead).
2022-07-29 11:18:30 +00:00
GuiLeme
6f33111ea4 [issue-15439] - fix typo in presentation scripts 2022-07-27 10:24:07 -03:00
Anton Georgiev
cb1543e1fa
Merge pull request #15149 from kepstin/video-resize
fix: Support deskshare videos that resize
2022-07-25 13:36:00 -04:00
Ramon Souza
db5ac1428a Merge tag 'v2.5.3' into merge25-26-jul14 2022-07-15 11:08:02 -03:00
Anton Georgiev
55dbc34984
Merge pull request #14616 from danimo/bbb-target
build: Introduce bigluebutton.target
2022-07-06 14:42:09 -04:00
Daniel Petri Rocha
ef45c9675f Add cropbox parameter to thumbnails and recording processing step 2022-07-06 18:16:08 +02:00
germanocaumo
c2db91b5f9 Merge branch 'v2.6.x-release' of https://github.com/bigbluebutton/bigbluebutton into tldraw-recording 2022-06-30 14:31:08 +00:00
GuiLeme
be62c6d19a [update-rubocop] - ran bundle install and updated rubocop 2022-06-29 17:38:39 -03:00
Anton Georgiev
61b269eca8
Merge pull request #15171 from GuiLeme/issue-15051
refactor: Removed all traces of Red5
2022-06-29 12:09:02 -04:00
Daniel Molkentin
a7f43ba2b8 Merge remote-tracking branch 'origin/v2.6.x-release' into bbb-target 2022-06-27 17:03:01 +02:00
Anton Georgiev
fa5ea33c6c
Merge pull request #15100 from schrd/fix-issue-10989
Fix(build): add service dependency to redis for several services
2022-06-23 15:40:38 -04:00
germanocaumo
853d0dfd9b fix(whiteboard): tldraw recording processing/publishing
Changed the names of tldraw record events to differentiate from before.
Publish tldraw.json file with all shape information during the meeting to be used in playback.
Adapted cursor.xml and panzoom.xml to store tldraw data.
Publish slides svgs to be used by playback's tldraw component (otherwise we have different image sizes in pngs and thus messing the coordinates).
Retro-compatible with old recordings.
2022-06-23 17:04:09 +00:00
GuiLeme
ac2e68842c Merge remote-tracking branch 'upstream/v2.6.x-release' into issue-15051 2022-06-20 16:12:25 -03:00
GuiLeme
7363c36448 [issue-15160] - fixed error logs in recordings 2022-06-16 09:13:31 -03:00
Daniel Schreiber
887b0152fd fix: bbb-rap-starter also needs Redis
... so add it as a dependency for systemd.
2022-06-16 11:49:37 +02:00
GuiLeme
beb0b507e0 [issue-15051] - Refactored all traces from Red5 2022-06-13 08:19:08 -03:00
Calvin Walton
067b4e0c6b Support deskshare videos that resize
Based on work done by Tiago Jacobs and Guilherme Pereira Leme to
investigate the behaviour of ffmpeg on videos with changing input size.

Rather than having the EDL code set fixed sizes for the scale and pad
filters, instead use ffmpeg's built in features to calculate the scale
and pad automatically, dynamically updating if the input video size
changes.

In the version of ffmpeg in Ubuntu 20.04, the 'movie' input filter is
buggy and doesn't correctly handle the video size changing. Instead of
using the movie filter, use separate inputs to the ffmpeg command (the
design used here is based on the code in audio.rb). The filter chain is
now stored into a file (using -filter_complex_script) to reduce problems
with the command line getting too long.

We are using a version of ffmpeg that's new enough to have the tpad
filter now too, so use it to extend the video if needed instead of an
extra concat.
2022-06-08 15:37:47 -04:00
Calvin Walton
9abc934537 Fix rap-enqueue.rb to load gems with bundler
In BBB 2.5, we switched the recording system to use bundled gems
included privately in the recording package, rather than installed
system-wide. The rap-enqueue.rb script needs to be updated to load the
bundler gems.

According to bundler devs, setting the BUNDLE_GEMFILE environement
variable is the supported way to tell bundler where to find it
(otherwise bundler will search starting at the current working directory
- which in the case of rap-enqueue.rb is probably nowhere near the
Gemfile).

Use a relative path from the directory where the script is located so it
can be run both when installed and from a development environment.

Switch the script interpreter to use /usr/bin/env to load ruby from the
path. Doesn't make a difference in the installed package, but it makes
testing on development systems with multiple ruby environments easier.

Fixes #15085
2022-05-31 18:13:33 -04:00
GuiLeme
eb1331502b [update-ruby-gems] - Update of nokogiri and rack-gem 2022-05-30 14:43:58 -03:00
Daniel Schreiber
1a12514b61 Fix(build): add service dependency to redis for several services
* fix unit name: the unit name on Ubuntu is `redis-server.service`
* services which need a working redis require both After= and Wants=

See the description in the `systemd.unit` man page.
2022-05-29 22:31:03 +02:00
GuiLeme
148e1bd355 Updated nokogiri to version 1.13.5 2022-05-20 09:18:32 -03:00
Gustavo Trott
14815184e6
Merge pull request #14911 from GuiLeme/issue-9789 2022-05-10 13:24:11 -03:00
Anton Georgiev
f3080b9ad1
Merge pull request #14930 from GuiLeme/issue-14819
fix(recording): Override configuration `properties` file
2022-05-10 11:30:48 -04:00
Guilherme Pereira Leme
be6184c9e9
Changes in review
Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
2022-05-05 09:53:38 -03:00
Guilherme Leme
d438367e36 [issue-14819] - Changes in review 2022-05-02 16:41:02 -03:00
Guilherme Leme
ab9d4fa9d4 [issue-14819] - implemented features. 2022-05-02 16:04:37 -03:00
Calvin Walton
2d4976cf72 record-and-playback: Don't seek past end of video input
In some cases with incomplete/partially corrupt files, the input video
file can be shorter than the displayed time. If there is a badly timed
cut, this can result in a seek being generated to a point where ffmpeg
is unable to start at.

Add a detection for this situation, and replace with a blank video.
2022-05-02 14:30:32 -04:00
Guilherme Leme
5763595d66 [issue-9789] - Changes in review. 2022-05-02 09:42:00 -03:00
Guilherme Leme
2c3c10115e [issue-9789] - change property showModeratorViewpoint's file 2022-04-29 16:43:24 -03:00
Guilherme Leme
6741232b3f [issue-9789] - Included the option to show the moderator's view. 2022-04-29 16:06:14 -03:00
Guilherme Leme
fe9585a004 [issue-9789] - Refactored webcamsOnlyForModerator to enhance computer processing. 2022-04-29 13:04:43 -03:00
Guilherme Leme
de344dbb81 [issue-9789] - Refactor userInfo List and its logics. 2022-04-29 11:56:26 -03:00
Guilherme Leme
7a513e0f06 [issue-9789] - process EDL differently (recording component) in order to include the webcmasOnlyForModerator property. 2022-04-28 14:58:47 -03:00
Guilherme Leme
a6f9bc6e9a [fix-PR-14628] - Include Return of the props in the read_props method. 2022-04-20 10:00:07 -03:00
Anton Georgiev
dd97ed5b5b
Merge pull request #14628 from GuiLeme/issue-14304
Implementation to read files from `/etc/bigbluebutton/` and override default configs.
2022-04-13 14:20:51 -04:00
Guilherme Leme
0319ecf371 [nokogiri-update] - Update of nokogiri to version 1.13.4+ 2022-04-12 11:07:59 -03:00
Guilherme Leme
021200a800 [Update to nokogiri] - Gemfile.lock 2022-04-05 14:41:03 -03:00
Guilherme Leme
a5601c0c8f [Update to nokogiri] - Change in the Gemfile to run in the new version. 2022-04-05 14:23:17 -03:00
Anton Georgiev
97dbc1aeb6
Merge branch 'v2.5.x-release' into bbb-target 2022-04-01 14:21:15 -04:00
Guilherme Leme
71e1ed8494 [issue-14304] - Resolving merging conflicts 2022-03-31 16:50:34 -03:00
Guilherme Leme
5d6401828c [issue-14304] - Changes in review. 2022-03-31 16:37:46 -03:00
Calvin Walton
97c0f51964 bbb-record-core: Restore systemd unit cwd to 'scripts' dir
The rap scripts might load or run some scripts using relative paths from
the scripts directory, so restore that.

Bundler automatically looks up in parent dirs to find the Gemfile, so
loading gems will work correctly.
2022-03-29 12:57:16 -04:00
Calvin Walton
db2d8efa0d bbb-record-core: Update systemd units to use bundler
Several scripts internally run bundler setup, so no explicit bundler
command is needed. For the others, start up using /usr/bin/bundle
(installed by ruby-bundler) to load the environment.
2022-03-29 12:41:27 -04:00