Commit Graph

95 Commits

Author SHA1 Message Date
Calvin Walton
301665a35b Fix off-by-one error in slide clear events
In 0.9.0, the slide clear events changed from using 1-based page numbers to
using 0-based page numbers.

Add 1 to the page number for recordings generated on a 0.9.0+ server to
fix the issue; at this point it's too late in the release to change the value,
and there's too big of a body of existing recordings out there.
2015-04-14 17:33:49 -04:00
Calvin Walton
1078aef49d Add a note to the nginx config to tell 0.9.0 beta users of a possible upgrade path 2014-10-06 17:30:32 -04:00
Calvin Walton
630ef4c72c Move 0.81 files to a subdir, add nginx redirect for them.
Now the 0.81 presentation playback files are in an appropriate versioned
directory. If desired, the recording metadata can be updated to reference
the versioned files directly, but an nginx redirect has been added so
that unmodified recordings will also work.
2014-10-06 17:17:20 -04:00
Calvin Walton
8673d353bb Use the directory presentation/0.9.0 instead of presentation2
This makes it a bit more obvious how the versioning can work going
forwards, and makes it so that we do not need to update the nginx
config each time we have a new version of the playback files.

The 0.81 files remain at the top level of the presentation directory
for compatibility reasons.
2014-10-06 16:46:55 -04:00
Calvin Walton
852ea7b822 Revert 'presentation' dir to 0.81 code, add 'presentation2' for 0.9
This fixes an issue where recordings copied from a 0.81 server might
not play back correctly on a 0.9 server.

This changes the 0.9 recording scripts to use playback support files
from a different subdirectory, 'presentation2', while existing 0.81
recordings continue to use the 'presentation' directory.

If the raw files from an old recording are reprocessed, it will
switch to using the newer playback support files.
2014-10-06 16:15:25 -04:00
Calvin Walton
72fc36caef Actually fix slide indexes.
While the page numbers from BigBlueButton are zero-based, the slide images
are generated as 1-based.
2014-09-09 17:15:57 -04:00
Calvin Walton
c7967810b2 Revert the presentation publish page index altering
This was added because BigBlueButton 0.9 started using 1-based page
numbers in the events.xml file. That change has been reverted, so as
to avoid behaviour changes from 0.81 in places where it's unnecessary.
2014-09-02 15:46:52 -04:00
Calvin Walton
15fe621523 Use the timestamp from the meeting ID to calculate the real start time
With the switch to a different clock source in red5, the timestamps
in the events file are no longer real-time, but are rather in
seconds since computer boot.

The timestamp in the meeting id is still realtime, so use that as
the start time. Calculate the end time by adding the meeting length
to the start time.
2014-08-29 11:19:59 -04:00
Gustavo Salazar
fb013e751f support bbb_version in events.xml 2014-05-06 14:42:03 -05:00
Gustavo Salazar
7d291abcfd delete old raw dir from published recordings 2014-04-14 15:14:14 -07:00
Richard Alam
460dfb52bf - modify scripts so we can run it manually 2014-04-03 20:23:49 +00:00
Gustavo Salazar
8a32c657d5 Handle negative index in slide number.
Related to issue #1710
2014-01-23 16:36:28 -05:00
Gustavo Salazar
614cbdde92 Fix #1711
Support pdf extension in uppercase https://code.google.com/p/bigbluebutton/issues/detail?id=1711
2014-01-23 14:03:09 -05:00
Felipe Cecagno
3440ed0fe3 Merge branch 'v0.81' into record-button
Conflicts:
	bigbluebutton-client/branding/default/style/css/BBBDefault.css
	bigbluebutton-client/src/org/bigbluebutton/main/views/MainToolbar.mxml
2014-01-14 14:05:41 -02:00
Felipe Cecagno
dab7547014 added a check on presentation publish script to avoid the duplication of thumbnails for a given slide 2013-12-02 15:23:02 -02:00
Felipe Cecagno
955f9edc99 fixing the issue of the whiteboard annotations not being shown in the proper slide; cleaning the environment (events.xml, recorded flag) when the session was recorded but the record button wasn't used 2013-12-02 13:57:05 -02:00
Calvin Walton
1d488e3c56 Last-ditch fix for missing presentation images
We can only get here if all of the files for the presentation are
*completely* missing. One thing that can cause this is if the
presentation filename starts with a '.' character - the presentation
files aren't correctly archived then.
2013-10-31 18:56:09 -02:00
Calvin Walton
e6fe43f9b6 Fix a logger method call in presentation script
This shouldn't normally be hit... but if it ever is, the processing will
fail with an error, since the Logger class doesn't have a method named
'warning'.
2013-10-23 10:01:02 -04:00
Gustavo Salazar
38f8ed5741 Support processing of images with extension .jpeg 2013-10-18 17:46:07 -05:00
Guilherme Augusto Dias
129e942d16 Add recording length information to metadata file
Add a tag containing the duration of the recording to metadata file
2013-10-15 14:29:49 +00:00
Guilherme Augusto Dias
dcabfc46fa Cut off unwanted slide events
Ignore slide events that happened after the last stop recording timestamp
2013-10-10 13:53:32 +00:00
Guilherme Augusto Dias
67fee3bff5 Correct clear/undo timestamp translation
Postpone the translation of timestamp for clear/undo events, so the events are applied correctly.
2013-10-09 19:51:46 +00:00
Felipe Cecagno
6e0553ed7c Merge branch 'record-button' of github.com:guilhermedias/bigbluebutton into record-button
Conflicts:
	record-and-playback/presentation/scripts/publish/presentation.rb
2013-10-07 22:36:31 -03:00
Guilherme Augusto Dias
8c89024084 Fix issue in multi-segment recording
Correctly draw shapes in multi-segment recordings.
2013-10-07 20:08:14 +00:00
Felipe Cecagno
d9dfe4a5d0 fixed partially the issue with the shapes timestamp made after the first period of recording, there's still work to do 2013-10-04 16:52:53 -03:00
Calvin Walton
420b0b5573 Make generation of png images for pdf pages more resiliant.
We now use ghostscript to output pngs directly from the original pdf,
rather than using convert on the split pages. This should make corrupt
or strange pdfs less likely to cause issues.

As well, if a pdf page conversion fails (for any reason, including that
the original pdf is missing...) it will be logged, and a blank page
generated, and processing will continue.
2013-10-04 15:25:13 -04:00
Guilherme Augusto Dias
9d1dd1d8d2 Fix shape/image matching test
Fix iteration range when checking if a shape is within an image
2013-10-02 22:32:16 +00:00
Felipe Cecagno
322176ddf3 Merge branch 'record-button' of https://github.com/guilhermedias/bigbluebutton into record-button
Conflicts:
	record-and-playback/presentation/scripts/publish/presentation.rb
2013-09-26 13:06:15 -03:00
Guilherme Augusto Dias
99b17e6f58 Change shape timestamps generation
The timestamps of shapes drawn during a non recording period are being correctly generated.
2013-09-26 13:32:55 +00:00
Felipe Cecagno
aa597fe985 Merge branch 'master' of https://github.com/bigbluebutton/bigbluebutton into record-button-client
Conflicts:
	bigbluebutton-client/branding/default/style/css/BBBDefault.css
	bigbluebutton-client/src/org/bigbluebutton/main/views/MainToolbar.mxml
	record-and-playback/core/lib/recordandplayback.rb
	record-and-playback/core/lib/recordandplayback/generators/audio_processor.rb
	record-and-playback/core/lib/recordandplayback/generators/events.rb
	record-and-playback/core/lib/recordandplayback/generators/video.rb
	record-and-playback/presentation/scripts/publish/presentation.rb
2013-09-24 15:03:44 -03:00
Felipe Cecagno
b5b81c1c4d refactored a little bit the function translateTimestamp; the images that are never displayed aren't included on the svg file anymore; still have to figure out the issue with the shapes made BEFORE start the recording - for now we cannot differentiate shapes made on the current slide and the ones made on a previous slide before start the recording 2013-09-19 15:22:22 -03:00
Felipe Cecagno
237268424f the timestamps of the recording events are normalized now, matching the recording marks; still need more testing when there are multiple start-stop recording events; the whiteboard actions are already working, including the slides, but slides that are outside of the recording period are still being loaded in the svg file (#TODO) 2013-09-18 17:54:51 -03:00
Guilherme Augusto Dias
78c77fb362 Create timestamp attribute
Shape tags have a timestamp attribute (id attribute no longer includes timestamp information).
2013-08-28 17:51:06 +00:00
Calvin Walton
0473682137 Reset the offset to 0; the new scripts seem to have better sync? 2013-08-26 13:23:49 -04:00
Calvin Walton
7c7540a0de Add a video quality bump when deskshare videos are present. 2013-08-26 11:27:53 -04:00
Calvin Walton
42e195bbe8 Rewrite the audio/video encoding components for BigBlueButton.
I've been working on this for a while, and it's adapted from code that
has been fairly well-tested on a wide variety of recordings. I've found
it to do a more accurate job of combining multiple webcam files, and it
should be more accurate in the audio as well.

Another key feature is that it does fewer re-encoding steps during video
processing, which should both speed it up and hopefully improve quality.
The settings on the VP8 encoder have been tuned somewhat as well.
2013-08-26 11:20:33 -04:00
Gustavo Salazar
26e6876136 Fix #1606 2013-08-19 20:17:10 -05:00
Guilherme Augusto Dias
a762a030ec Chat events timestamp
Calculating timestamp of chat events correctly
2013-08-05 20:32:04 +00:00
Guilherme Augusto Dias
963ea8a1f1 Process chat events
Process chat events according to START/STOP record events
2013-08-05 19:13:19 +00:00
Calvin Walton
ecfe8b7db4 RaP: Adjust the 'convert' command to make opaque images
This forces a background colour of white on the generated png images for
slides in the slides and presentation recording formats. Fixes Issue
1588.
2013-07-17 18:08:51 -04:00
Fred Dixon
e08c6802d4 Update configuration to record desktop sharing by default 2013-06-15 08:25:09 -07:00
Felipe Cecagno
b176ef090f fixing the incorrect handling of the last timeline event on video processing 2013-07-01 15:32:25 -03:00
Felipe Cecagno
fea7486ae3 implemented the possibility to include the desktop sharing streams to the presentation playback; it composes the presentation video file just like the other video streams, with the difference that while the screen is being sharing, it appears as the unique video stream in the presentation video - when the presenter stops sharing his screen, the other videos populate the video display;
also, the output video resolution is modified to the highest screen resolution shared during the conference, independently on the output video resolution set by the user; it was done to preserve the quality of the desktop sharing image; if there's no desktop sharing, the output video resolution is respected
2013-06-14 17:50:39 -03:00
Felipe Cecagno
bf554b75a8 enabling audio_offset tested for h264 2013-06-13 17:24:37 -03:00
Felipe Cecagno
ced61d3fba rap-worker now keeps track of the processing time of a recording; a file called processing_time is generated during the process phase, and this information is added to metadata.xml when the recording is published - this information isn't retrieved by getRecordings because no modification was done on bbb-web to include this information, but at least it's there so the sysadmin can check how long does a recording take to get processed 2013-06-13 17:13:20 -03:00
Felipe Cecagno
53c071ddc3 ref #1516
Refactored the code that generates the video file used in the presentation playback. The problem with the sync of video sources was related to problems of precision inside FFmpeg (sometimes the script runs FFmpeg to trim video files, and the output video file trimmed sometimes was 3+ seconds bigger or smaller than the requested).
Also it's a little more modular, so it will be easier to expand functionality. The processing steps are more explicit now, and the logs are better now to understand the final output.
A new parameter on presentation.yml was added to enable the admin to add an offset for the audio stream - this is mainly useful when the session ran with h264, because the video takes longer for the client to encode, and then in the recording we can see the huge gap between audio and video.
2013-06-13 17:10:52 -03:00
Gustavo Salazar
2483f76ee6 create audio.webm to play it in IE 2013-06-11 17:20:34 -05:00
Gustavo Salazar
e89bb22e9f no need to publish events.xml 2013-06-11 17:02:12 -05:00
Gustavo Salazar
f1cd2f071e publish audio files only if video is not available 2013-06-11 17:00:08 -05:00
Calvin Walton
80ceefa5ca presentation: Fix presentations which are images not pdfs
This was broken by my earlier change to fallback the pdf filename for
really old recordings.

Rearrange the code so that the pdf logic is only used in the case when
the presentation is a pdf.
2013-05-17 14:32:14 -04:00