Commit Graph

1530 Commits

Author SHA1 Message Date
germanocaumo
f7468b6fc2 fix(tldraw): only send diffs updates to server
When a shape is changed, the full shape objcect was being transmitted to the server again.
Do a diff to only send what changed (similarly  as it was in tldraw v1) to save upload bw.

TODO:
Draw segments diffs (array) is still not working, so all the segments are still being sent every time.
2024-09-19 12:38:57 -03:00
Calvin Walton
4a3050eb30
Fix incorrect merge in recording audio processing (#21149)
The merge of 2.7 code into 3.0 dropped a change which was part of a fix
to prevent a recording processing hang when processing deskshare streams
which contain audio. Re-apply that change.
2024-09-11 11:55:59 -04:00
Calvin Walton
2bf55a0207 Recording: Do a test decode to detect video seek problems
I found a failed recording where a deskshare video file could not be
decoded when seeking was used (oddly enough, it could decode without
seeking). Turns out that remuxing the file was enough to make things
work.

In the video processing code, after checking for other known video file
problems that are fixed by remuxing, also try decoding one frame of the
video with a seek time applied.

Since more videos can end up being remuxed now, I moved the output of
the remux to a new subdirectory. Since more file types than just 'flv'
can be remuxed, I switched the output to the 'nut' container instead.
(This is ffmpeg's generic container format, and can hold any audio/video
which ffmpeg can process, so it works well for temporary files.)
2024-09-10 14:56:26 -04:00
Anton Georgiev
9cee20c55e
fix: record-and-playback/core/Gemfile & record-and-playback/core/Gemfile.lock to reduce vulnerabilities (#21021)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-REXML-7814166

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-08-29 16:39:55 -04:00
Jesus Federico
6333cc42ff
fix: record-and-playback/core/Gemfile & record-and-playback/core/Gemfile.lock to reduce vulnerabilities (#20723)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-REXML-7462086

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-07-18 09:39:30 -04:00
Paul Trudel
6a173898a9 Reset gen_webvtt path 2024-06-11 16:47:38 +00:00
Paul Trudel
816b9dbee4 Added participants, raw size, and playback size to video metadata 2024-06-11 16:47:28 +00:00
Anton Georgiev
7d6a7ef73b
Revert "[Snyk] Fix for 1 vulnerabilities" 2024-05-31 15:34:51 -04:00
snyk-bot
efa8980396
fix: record-and-playback/core/Gemfile to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-NOKOGIRI-7164639
2024-05-31 03:15:29 +00:00
snyk-bot
9909d1b7e9
fix: record-and-playback/core/Gemfile & record-and-playback/core/Gemfile.lock to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-REXML-6861566
2024-05-17 16:21:02 +00:00
Anton Georgiev
23ea53e452
recording: work around invalid locale in caption events (#19682)
This is a workaround for #19178 - but it does not fix the issue. The
caption recording events with invalid empty `<locale/>` are simply
dropped with a warning message, to allow the recording and any valid
caption streams present to be processed.

Co-authored-by: Calvin Walton <calvin.walton@blindsidenetworks.com>
2024-02-23 20:59:34 -05:00
Anton Georgiev
e9ec5ea645
Merge pull request #17884 from Ithanil/nicer_ffmpeg
build: Process recordings with Niceness 19
2024-01-22 11:37:45 -05:00
Daniel Petri Rocha
6c766acc9c
Use semantic versioning
Both bbb-playback and the recording processing scripts fail if the version string is not in the format MAJOR.MINOR.PATCH (3.0.0 in this case instead of 3.0)
2023-12-14 23:10:24 +01:00
danielpetri1
84d341cb94 Bump bbb_version to 3.0 in bigbluebutton.yml 2023-12-12 19:41:09 +01:00
danielpetri1
5fff226d55 Remove leftover diff from merge conflict 2023-11-19 18:43:21 +00:00
André
96d9f71030 v27 changes ported to v30 part 2. 2023-11-10 15:09:45 -03:00
Gustavo Trott
9da3543bc3 Resolve conflicts 2023-09-11 11:25:56 -03:00
prlanzarin
40b642969c fix(recording): handle archive remux failures
Recording archive may fail when remuxing invalid files from KMS or the
new recorder - eg when the raw files are 0-byte sized.

This commit handles the exception raised by EDL::encode so archive keeps
going, logs the issue as a warning and archives the problematic file anyways.
EDL::encode now removes the temporary file when the ffmpeg command execution
fails - this should avoid leaving any stale files around in case of failure.

No specific check for the nature of the error is done - the idea is that
subsequent phases will discard or fix the files if necessary according
to the processing scripts' necessities, making the behavior (in this
specific scenario) similar to what it was before the archive remuxing was
introduced.
2023-09-07 11:57:55 -03:00
Gustavo Trott
5eb04aab91 Resolve conflicts 2023-08-30 15:31:32 -03:00
Gustavo Trott
201b6949a3 Resolve conflicts 2023-08-22 15:07:42 -03:00
snyk-bot
8971f3597b
fix: record-and-playback/core/Gemfile & record-and-playback/core/Gemfile.lock to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-RACK-1061917
2023-08-20 20:05:57 +00:00
prlanzarin
bba4658dd3 fix(recording): remux bbb-webrtc-recorder and KMS files during archive
Kurento may *rarely* generate WebM/MKV files with corrupt or absent
SeekHead sectors. bbb-webrtc-recorder also doesn't generate SeekHead or
even the Cues sectors by default.

While those are are *optional* fields by spec, files need to be seekable
for our recording processing scripts to work.

This commit adds a remuxing step for Kurento and bbb-webrtc-recorder raw
files that is executed during the archive phase. It should re-include
any of the missing fields that make files seekable and restore the Cues
sector in WebM files.
2023-08-17 12:38:52 -03:00
Gustavo Trott
21f1ed9f27 Merge 2.7 into Develop 2023-07-14 17:42:13 -03:00
Anton Georgiev
cd9f93be44 Merge remote-tracking branch 'bbb/v2.6.x-release' into merge-july12 2023-07-12 15:59:46 -04:00
snyk-bot
2cd88df310
fix: record-and-playback/core/Gemfile & record-and-playback/core/Gemfile.lock to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-ACTIVESUPPORT-3237242
- https://snyk.io/vuln/SNYK-RUBY-ACTIVESUPPORT-3360028
2023-06-23 22:20:37 +00:00
Anton Georgiev
70b3220f41 Merge branch 'v2.7.x-release' of github.com:bigbluebutton/bigbluebutton into june5-27 2023-06-05 17:09:35 -04:00
Anton Georgiev
748c7a4a0b Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into june227 2023-06-02 09:45:34 -04:00
Gustavo Trott
51bdcededc Merge 2.7 into develop 2023-05-26 10:50:39 -03:00
Anton Georgiev
c9ca78c8df
Merge pull request #18002 from germanocaumo/fix-recording-cursor
fix(recording): missing cursor
2023-05-25 12:18:08 -04:00
germanocaumo
e4c430b01a fix(recording): missing cursor
Missing parentheses in logical expression
2023-05-25 15:31:45 +00:00
snyk-bot
a6fa4b785f
fix: record-and-playback/core/Gemfile & record-and-playback/core/Gemfile.lock to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-RACK-1061917
2023-05-25 15:01:58 +00:00
snyk-bot
e828923ca9
fix: record-and-playback/core/Gemfile & record-and-playback/core/Gemfile.lock to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-RACK-3237233
- https://snyk.io/vuln/SNYK-RUBY-RACK-3237237
- https://snyk.io/vuln/SNYK-RUBY-RACK-3237240
- https://snyk.io/vuln/SNYK-RUBY-RACK-3356639
- https://snyk.io/vuln/SNYK-RUBY-RACK-3360233
2023-05-25 14:21:38 +00:00
Anton Georgiev
25af259d2d Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into merge-may-24 2023-05-24 17:23:00 -04:00
hiroshisuga
71c54860a6
Update gen_webvtt 2023-05-22 12:18:17 +09:00
hiroshisuga
2ae085c5e0
Update README 2023-05-21 21:21:38 +09:00
Jan Kessler
13ddb91398
set bbb-rap-caption-inbox niceness to 19 2023-05-16 07:09:26 +02:00
Jan Kessler
7660171aff
set bbb-rap-resque-worker niceness to 19 2023-05-16 07:06:55 +02:00
Anton Georgiev
4e851a7571 Merge branch 'v2.6.x-release' of github.com:bigbluebutton/bigbluebutton into merge-267-27 2023-05-15 11:51:17 -04:00
Guilherme Pereira Leme
19035b2e3e
[issue-17504] - changes in review
Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
2023-05-11 10:05:37 -03:00
GuiLeme
a8f70d9c4d [issue-17504] - changes in review 2023-05-10 17:04:02 -03:00
GuiLeme
7e7cefe803 [issue-17504] - format indentation 2023-05-10 15:39:25 -03:00
GuiLeme
f5ba02f5f8 [issue-17504] - patch to screenshare format 2023-05-10 14:58:10 -03:00
GuiLeme
469665273c [issue-17504] - fix deploy.sh to embrace other formats 2023-05-10 09:35:29 -03:00
Anton Georgiev
0fccb78ee1 build-conf: Remove Kurento dependency; Run on Ubuntu 22.04 2023-04-25 15:08:36 -04:00
prlanzarin
538954a6ae build: add bbb-webrtc-recorder 2023-04-20 16:24:34 -03:00
Calvin Walton
f57b93b2fb recording-and-playback/presentation: Fix hiding tldraw cursors
The code was skipping the check for cursor x or y position < 0 when the
tldraw whiteboard was in use. That condition is still needed on the
tldraw whiteboard to indicate that the cursor should be hidden.

Only the check for cursor x or y position >100 needs to be skipped when
the tldraw whiteboard is in use (since tldraw cursors are in the slide
coordinate space, they can go up to x=1440 or y=1080)
2023-04-04 11:33:21 -04:00
Calvin Walton
08453469b3 recording: Fix video processing incompatibility with Ruby 2.7
The Fcntl::F_SETPIPE_SZ constant was added in Ruby 3.0, but Ubuntu 20.04
still uses Ruby 2.7. Add some error handling so processing doesn't fail
if the constant is not found.
2023-03-31 11:46:09 -04:00
Anton Georgiev
5887effe7c
Merge pull request #17097 from ramonlsouza/issue-17086
fix(whiteboard): Reduce max canvas size
2023-03-28 11:06:10 -04:00
Calvin Walton
8b8fe76bbb recording: Increase quality of libx264 intermediate files
The encoding settings for intermediate files was using -preset veryfast
-crf 30, which resulted in very poor quality video.

After a bit of experimenting, I decided to change this to -preset
veryfast -crf 23. This results in files which are roughly twice the size
of before, but they look significantly better.

There's improvements possible at the same filesize by switching to a
slower encoding mode. But in the case of -preset medium for example,
when normalized to the same output file size, you end up using about 1.5
times as much cpu time to gain only a very small amount of video
quality.
2023-03-27 18:04:59 -04:00
Ramón Souza
0405030c87 Adds the bbb_version to tldraw.json so Playback can know what version was used and react to the changes 2023-03-24 09:06:29 -03:00