Commit Graph

34022 Commits

Author SHA1 Message Date
Fred Dixon
b42cafbaf8 Update audio patch for 1.10.8 2022-12-21 15:07:04 +00:00
Anton Georgiev
612abe8660
Merge pull request #16260 from bigbluebutton/antobinary-patch-2
chore: Upgrade FreeSWITCH to v1.10.8
2022-12-21 09:59:38 -05:00
Anton Georgiev
dd79d72b80
chore: Upgrade FreeSWITCH to v1.10.8 2022-12-21 09:57:53 -05:00
Anton Georgiev
b7665cbe0e
Merge pull request #16254 from bigbluebutton/pres-checker-25
chore: Upgrade commons-compress to 1.21
2022-12-21 08:52:55 -05:00
Anton Georgiev
8276397d2d
chore: Upgrade commons-compress to 1.21 2022-12-21 05:47:12 -05:00
Anton Georgiev
0a99271a92
Merge pull request #16248 from antobinary/transifex-25
chore: Meteor 2.9.0, nodejs for bbb-html5 14.21.1 (backport #16099)
2022-12-20 20:13:03 -05:00
Anton Georgiev
3f2ed2773e
Merge pull request #16250 from antobinary/scala25
chore: upgrade scala 2.13.4 -> 2.13.9
2022-12-20 19:20:30 -05:00
Anton Georgiev
e96b018839
Merge pull request #16249 from bigbluebutton/snyk-fix-d3925b0fd8e56c26ac254b5db5d2edca
[Snyk] Security upgrade sanitize-html from 2.3.3 to 2.7.1
2022-12-20 19:18:12 -05:00
Anton Georgiev
657473e0d6 chore: upgrade scala 2.13.4 -> 2.13.9 2022-12-20 21:30:49 +00:00
snyk-bot
8496aa8dd7
fix: bigbluebutton-html5/package.json & bigbluebutton-html5/package-lock.json to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-SANITIZEHTML-2957526
2022-12-20 21:22:47 +00:00
Anton Georgiev
4fcb451299 chore: upgrade nodejs for html5 14.19.1 to 14
.21.1
2022-12-20 21:02:19 +00:00
Anton Georgiev
b2d2bd9650 chore: upgrade Meteor to 2.9.0 2022-12-20 20:51:03 +00:00
Anton Georgiev
bcd5b551ad
Merge pull request #16247 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_fa_IR
Translate '/bigbluebutton-html5/public/locales/en.json' in 'fa_IR'
2022-12-20 15:05:23 -05:00
Anton Georgiev
76045ce7ca
Merge pull request #16246 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_el_GR
Translate '/bigbluebutton-html5/public/locales/en.json' in 'el_GR'
2022-12-20 15:05:00 -05:00
Anton Georgiev
dccc059a97
Merge pull request #16245 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_cs_CZ
Translate '/bigbluebutton-html5/public/locales/en.json' in 'cs_CZ'
2022-12-20 15:04:11 -05:00
Anton Georgiev
1677a9c352
Merge pull request #16244 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_es_ES
Translate '/bigbluebutton-html5/public/locales/en.json' in 'es_ES'
2022-12-20 15:03:58 -05:00
Anton Georgiev
45bd832831
Merge pull request #16241 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_pt_BR
Translate '/bigbluebutton-html5/public/locales/en.json' in 'pt_BR'
2022-12-20 15:03:39 -05:00
Anton Georgiev
248a828a60
Merge pull request #16240 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_pt
Translate '/bigbluebutton-html5/public/locales/en.json' in 'pt'
2022-12-20 15:03:14 -05:00
Anton Georgiev
7757604ab6
Merge pull request #16239 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_ja
Translate '/bigbluebutton-html5/public/locales/en.json' in 'ja'
2022-12-20 15:02:41 -05:00
Anton Georgiev
1a45939a56
Merge pull request #16238 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_gl
Translate '/bigbluebutton-html5/public/locales/en.json' in 'gl'
2022-12-20 15:01:58 -05:00
Anton Georgiev
108423ecf1
Merge pull request #16237 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_es
Translate '/bigbluebutton-html5/public/locales/en.json' in 'es'
2022-12-20 15:01:36 -05:00
Anton Georgiev
f37c99bae1
Merge pull request #16235 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_ar
Translate '/bigbluebutton-html5/public/locales/en.json' in 'ar'
2022-12-20 15:01:08 -05:00
Anton Georgiev
8086bddb9f
Merge pull request #16243 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_tr
Translate '/bigbluebutton-html5/public/locales/en.json' in 'tr'
2022-12-20 15:00:05 -05:00
Anton Georgiev
f88e974697
Merge pull request #16236 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_de
Translate '/bigbluebutton-html5/public/locales/en.json' in 'de'
2022-12-20 14:52:54 -05:00
Anton Georgiev
8bc53f354c
Merge pull request #16242 from bigbluebutton/translations_bigbluebutton-html5-public-locales-en-json--v2-5-x-release_ru
Translate '/bigbluebutton-html5/public/locales/en.json' in 'ru'
2022-12-20 14:52:35 -05:00
transifex-integration[bot]
b40cecdda4
Apply translations in fa_IR
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'fa_IR' language.
2022-12-20 19:52:02 +00:00
transifex-integration[bot]
01ed0f2a0a
Apply translations in el_GR
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'el_GR' language.
2022-12-20 19:51:48 +00:00
transifex-integration[bot]
258c111961
Apply translations in cs_CZ
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'cs_CZ' language.
2022-12-20 19:51:36 +00:00
transifex-integration[bot]
8099ef3faf
Apply translations in es_ES
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'es_ES' language.
2022-12-20 19:51:24 +00:00
transifex-integration[bot]
287b6ee759
Apply translations in tr
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'tr' language.
2022-12-20 19:51:12 +00:00
transifex-integration[bot]
d546f5f68b
Apply translations in ru
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'ru' language.
2022-12-20 19:51:01 +00:00
transifex-integration[bot]
54f9f61281
Apply translations in pt_BR
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'pt_BR' language.
2022-12-20 19:50:49 +00:00
transifex-integration[bot]
d42563a0c5
Apply translations in pt
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'pt' language.
2022-12-20 19:50:37 +00:00
transifex-integration[bot]
c038e58410
Apply translations in ja
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'ja' language.
2022-12-20 19:50:26 +00:00
transifex-integration[bot]
2328bfb25e
Apply translations in gl
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'gl' language.
2022-12-20 19:50:14 +00:00
transifex-integration[bot]
09d5a2201c
Apply translations in es
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'es' language.
2022-12-20 19:50:02 +00:00
transifex-integration[bot]
b140b00d5e
Apply translations in de
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'de' language.
2022-12-20 19:49:50 +00:00
transifex-integration[bot]
4daa3c04b5
Apply translations in ar
translated updated for the source file '/bigbluebutton-html5/public/locales/en.json'
on the 'ar' language.
2022-12-20 19:49:40 +00:00
Anton Georgiev
00e9200730
Merge pull request #16234 from antobinary/transifex-25
chore: add transifex.yml for GitHub<->Transifex integration
2022-12-20 14:40:02 -05:00
Anton Georgiev
159c70ca2b chore: add transifex.yml for GitHub<->Transifex integration 2022-12-20 19:21:32 +00:00
Anton Georgiev
7e710c8fd3
Merge pull request #15552 from GuiLeme/update-gem-tzinfo
chore (recording): Update tzinfo gem
2022-12-15 08:51:51 -05:00
GuiLeme
af49e25c21 Merge remote-tracking branch 'upstream/v2.5.x-release' into update-gem-tzinfo 2022-12-15 09:42:18 -03:00
GuiLeme
1ba26ea3c3 [update-gem-tzinfo] - update of dependencies - nokogiri, loofah, tzinfo, rack 2022-12-15 09:07:16 -03:00
Ramón Souza
1fda877450
Merge pull request #15929 from prlanzarin/u25/fix/cam-reconn-issues
fix: guarantee cleanup of stale data on re-subscriptions
2022-12-13 13:12:41 -03:00
Anton Georgiev
de2712b170
Merge pull request #16108 from zhem0004/tomcatTo9.0.70ON2.5
chore: upgrade tomcat to 9.0.70 on branch 2.5
2022-12-12 13:41:53 -05:00
Bohdan Zhemelinskyi
b5374f5b28 bump up tomcat 2022-12-08 23:18:20 +00:00
Anton Georgiev
9a39751fb2
Merge pull request #16050 from kepstin/recording-speed-fix-25
Recording: Don't use stateful filters in ffmpeg video processing (2.5 backport)
2022-12-08 11:00:04 -05:00
Calvin Walton
06d0e4d454 Recording: Move tpad filter to after fps filter
The tpad filter is problematic on the variable-framerate webcam files,
and the result can end up being hangs (or, at least, very slow
processing) in the compositing.

Move the tpad filter to the compositing process where it can run after
the fps filter has converted the video to constant framerate. It still
needs to run before the start trimming, so switch to using the trim
filter rather than the fps filter's start_pts feature.
2022-12-06 16:00:39 -05:00
Calvin Walton
4127f4ccc7 Recording: Pre-process video files using separate ffmpeg
Even with the filter changes made, there's still some cases where
filter chain hangs can result from filter reconfigurations. To solve the
issue completely, I have split out pre-processing video files to
separate ffmpeg processes, so that the filter chain for compositing will
not ever be reconfigured.

Each input video now has a separate ffmpeg process run for it which
does the scaling, padding, and video extending steps. To avoid issues
with disk space usage and extra cpu usage or quality loss, the output
from these separate processes is sent to the compositing ffmpeg process
as uncompressed video in a pipe. To simplify the setup, named pipes
(special files) are used rather than setting up pipes in the ruby code
programmatically.

The extra ffmpeg processes are configured to log to files, and when
complete their log output is copied to the recording processing log.
Processes are joined to ensure zombie processes are not created, and
the return codes of all the processes are checked so errors can be
detected.

Due to the overhead of transferring video through pipes, this might
be a bit slower than the 2.4 recording processing - but on the other
hand, some of the video decoding and scaling happens in parallel, so it
might balance out.
2022-12-05 11:55:59 -05:00
Calvin Walton
276e592c01 Recording: Don't use stateful filters in ffmpeg video processing
Because the input videos for BigBlueButton recording processing switch
resolution and aspect ratio, the filter chain gets re-initialized, and
any state in the filters is lost. This causes problems with the
following filters:

`color`: Timestamps restart from 0, rather than continuing at the point
where they left off.
`fps=start_time=12.345`: After reset, the fps filter thinks it's at the
start of the file again, so the next frame it sees gets duplicated
output for timestamps from the `start_time` until it catches back up.
`setpts=PTS-STARTPTS`: The 'STARTPTS' is re-read as the first pts the
filter sees after reinitialization, so timestamp of the next frame is
reset to 0. (In practise, this didn't cause any problems because the
duplicate frames created by the fps filter had the original start time.)

The end result of all of these issues is that a lot of duplicate frames
were created with invalid timestamps, which eventually get discarded
by ffmpeg. But a lot of time is wasted, causing recordings to sometimes
take hours to process when they should be ready in minutes.

The fixes are as follows:

* The `color` filters are used to generate the background and
  substitutes for missing videos. Move them out to separate filter
  chains by using the 'lavfi' input format, which lets you use a filter
  as if it was an input file.
* Rather than use the `fps` filter's `start_time` feature, use the
  `trim` filter to remove early frames.
* The actual start pts is already known by the script, so replace
  `setpts=PTS-STARTPTS` with `setpts=PTS-12.345/TB`, substituting in the
  absolute time.
2022-11-22 15:01:45 -05:00