Commit Graph

749 Commits

Author SHA1 Message Date
Fred Dixon
cd491c67b6 Moved the recording systemd scripts into the core directory 2017-03-23 10:36:10 -05:00
Calvin Walton
dd23536c84 record-and-playback: Split rap-worker into separate workers per step.
The purpose of this is to ensure that the recording processing with make
visible forwards progress, by ensuring that different steps in the
recording pipeline don't block each-other.

This fixes:
- recordings being processed prevent archiving new recordings from running
- recordings can't be published until all pending recording processing
  completes

It does allow recording archive, sanity, process, publish steps to run in
parallel with each other, but at most one recording will be in each step at
a time. (I.e. while one recording is being processed, a different recording
can be published). This may potentially increase CPU usage for some users.
If you expect this to be a problem, you can set resource controls (see
`man systemd.resource-control`) on the bbb_record_core.slice systemd unit.
2017-03-22 17:20:29 -04:00
Richard Alam
3c397d8d71 - fix copying of meeting element into metadata.xml 2017-03-15 09:45:58 -07:00
Richard Alam
72c42f9d70 - build get recordings api response 2017-03-13 21:43:39 +00:00
Richard Alam
4e59521268 - store breakout metadata and breakout rooms in events.xml only if they are present. 2017-03-10 19:39:20 +00:00
Richard Alam
71bcd779b7 - process breakout rooms in events.xml and metadata.xml 2017-03-09 23:01:15 +00:00
Fred Dixon
5eea825e7f Merge pull request #3695 from kepstin/presentation-question-mark
Correctly use jquery to modify links in chat messages.
2017-03-01 14:39:57 -05:00
Calvin Walton
e782709913 Correctly use jquery to modify links in chat messages.
The code was previously passing the message string provided by the user
directly to jQuery - which works okish if the first character is '<' since
it'll parse it as HTML, but the chat messages don't. As a result, it was
sometimes being parsed as a selector, failing, and raising an exception.

The fix is to put the chat message into a DOM node (have the browser parse
the HTML) before doing the jQuery operation to modify the link targets.

Fixes #3670
2017-03-01 10:38:39 -05:00
alexandre
f39874ac9b Returning number of users that participated in each meeting in getRecordings call
Resolves #3623
2017-02-10 16:19:32 -02:00
Richard Alam
d26c6d5305 Merge pull request #3581 from kepstin/sanity-deskshare-fixup
recording: Run the 'ser' fixup tool on deskshare videos, too
2017-02-02 11:45:36 -05:00
alexandre
b19ce7f714 In recording playback, chat links open in a new tab
Fixes #3590
2017-01-25 18:21:49 -02:00
Calvin Walton
c885fc3ec4 recording: also archive .flv.ser files from deskshare directory 2017-01-20 13:34:16 -05:00
Calvin Walton
f7f3b79ae4 recording: Run the 'ser' fixup tool on deskshare videos, too
Since the deskshare videos are saved in flv files by red5, they can
have the same partially written file issue as seen on webcams.
2017-01-20 13:23:36 -05:00
alexandre
ac094aa89a Restoring annotations when swapping presentation with video
Fixes #3561
2017-01-13 17:03:05 -02:00
alexandre
dde5f23188 Fixing misalignment when swapping presentation with video
To swap presentation with video we need to retrieve what was the current viewbox size and set it again.

Fixes #3545
2017-01-11 18:05:30 -02:00
Calvin Walton
b077d48644 Drop chrome frame support
Chrome frame has been discontinued for quite a while. The playback code actually
does work in IE if you install an extra codec pack or switch the video format used.
2017-01-06 10:31:29 -05:00
Calvin Walton
dadeb40fa0 Add a callback to sync popcorn initialization after video element is ready.
Due to the extra delays added by setting up the closed captions, it happens more
often that the writing.js code will attempt to initialize popcorn on the video
element before the video element actually exists on the page.

(This was always a problem, it's just worse now)

Add a synchronization point which will delay the popcorn initialization until the
video element is ready.
2017-01-06 10:30:31 -05:00
Calvin Walton
2aa3ebb16b "use strict"; should never be used at top level in a JS file
This can create weird conflicts when using other libraries
2017-01-06 10:19:38 -05:00
Jesus Federico
62bd4a587c Merge pull request #3489 from kepstin/gen-webvtt-iterparse
gen_webvtt: Parse entire events file, instead of iterparse
2016-12-07 11:38:14 -05:00
Calvin Walton
b2c1f00356 Merge pull request #3472 from jfederico/fix-recording-preview-alt-error
record-and-playback: Fixed issue with text gathered from slids used o…
2016-12-07 11:30:59 -05:00
Calvin Walton
fb3a913b5b gen_webvtt: Parse entire events file, instead of iterparse
The iterparse mode doesn't correctly handle long multi-byte UTF-8
characters with some versions of lxml library or libxml version.
2016-12-02 14:33:06 -05:00
Calvin Walton
bd8baed660 Fix typo in recording sanity script.
This caused it to think all video files were corrupt.
2016-11-21 15:01:54 -05:00
jfederico
161cab8234 record-and-playback: Fixed issue with text gathered from slids used on preview 2016-11-17 15:59:07 -05:00
Fred Dixon
0b9fc8b143 Merge pull request #3434 from kepstin/recording-cleanup
RnP: Improve error handling in video_info, audio_info functions
2016-11-11 12:14:55 -05:00
Fred Dixon
8b0a3dff50 Update Gemfile.lock for 1.1-dev 2016-11-10 10:03:17 -06:00
jfederico
737697968c record-and-playback: Removed preview extension (thumbnails) from recordings when only has default presentation 2016-11-07 18:50:28 +00:00
jfederico
64a4f4dc08 record-and-playback: Encoded text coming from the slide for being used in thumbnails 2016-10-27 17:35:58 -04:00
Richard Alam
ece6edcb12 - fix check for breakout room
- insert breakout metadata into events.xml
 - delete breakout metadata from redis
2016-10-21 19:05:30 +00:00
jfederico
d2a633a27b record-and-playback: Forced alt to be included as part of the image thumbnail element in preview extension 2016-09-27 16:02:20 -04:00
jfederico
1a4438d459 record-and-playback: Fixed issue with presentations containing less than 3 slides 2016-09-27 15:19:53 -04:00
jfederico
78cb599a5b record-and-playback: removed text element from extension preview 2016-09-22 13:11:01 -04:00
jfederico
e0b6a9ebf8 recording-and-playback: Removed log used for debugging 2016-09-21 17:31:40 -04:00
jfederico
59c67809d0 recording-and-playback: Added alt text to the preview per slide 2016-09-21 16:39:32 -04:00
jfederico
8adf729e0f recording-and-playback: Added general text to the preview 2016-09-20 16:46:45 -04:00
jfederico
45ba7d85c2 record-and-playback: Filtered presentation files to provide only the first thumbnail for default.pdf 2016-09-20 14:10:28 -04:00
Calvin Walton
ef607f0e44 RnP: Improve error handling in video_info, audio_info functions 2016-09-20 13:22:50 -04:00
jfederico
f9d76b4739 recording-and-playpack: Includes thumbnails as an extension of the playbacks 2016-09-19 18:09:31 -04:00
jfederico
90108bf29c record-and-playback: Include default thumbnails into recordings 2016-09-19 14:52:32 -04:00
Calvin Walton
c730681183 Improve detection of corrupt videos via ffprobe 2016-09-06 18:15:31 -04:00
Calvin Walton
f112be7638 Fix errors in recording scripts.
Logger was apparently imported by the matterhorn stuff ?! so move that
to the main library.

Fix a variable reference in sanity.
2016-09-03 16:08:32 -04:00
Calvin Walton
8ede6d06ee Remove a few matterhorn references that were missed. 2016-09-02 17:45:10 -04:00
Calvin Walton
13b9022282 Update the Gemfile.lock file to match gem changes 2016-09-02 16:40:27 -04:00
Calvin Walton
2cd9565d52 Improve wave length guessing
Instead of assuming that wav files have 44 byte headers (they usually
don't - freeswitch adds some metadata tags), add a super-simple wave
file parser that just finds the offset where the audio data actually
starts.
2016-09-02 16:40:27 -04:00
Calvin Walton
f815fd0d70 Remove a bunch of unused/old audio processing code.
The sanity check script was using one of the functions; it's been
changed to use a function from the EDL audio code instead.
2016-09-02 16:40:27 -04:00
Calvin Walton
0f29a6e5f9 Drop streamio-ffmpeg from required gems
It's no longer used anywhere in the recording processing, and the one
remaining use in the sanity script can be replaced with a (less buggy!)
function from the video EDL code.
2016-09-02 16:40:27 -04:00
Calvin Walton
b4d902cd9a Drop old/broken matterhorn script, and old video processing code. 2016-09-02 16:40:27 -04:00
Fred Dixon
8f5173710d Merge pull request #3283 from kepstin/recording-cleanups
Recording cleanups
2016-08-12 16:19:39 -04:00
Calvin Walton
ab0dac1192 Don't appy recording marks twice to audio 2016-08-12 15:53:56 -04:00
Calvin Walton
fc4ae4c6b4 RnP: Use correct directory when loading captions.json 2016-08-12 15:41:41 -04:00
Calvin Walton
d06b3468ac Minor playback.js cleanups
Use a function that handles parameters correctly when updating the
timestamp in the url for links, fix indentation in caption loading code.
Treat exceptions when checking for url existence as errors.
2016-08-12 15:24:55 -04:00