Fred Dixon
7f0d8db451
Merge pull request #5392 from kepstin/recording-webcam-fix
...
Fix handling webcam videos that end early in recording processing
2018-04-24 17:01:47 -04:00
Calvin Walton
8e0a79014f
Fix handling webcam videos that end early in recording processing
...
In some cases (due to network issues), the webcam video can be shorter
than the time between the start/stop events. Pad the input video with a
blank video to make sure that there's input to the video tiling filters,
to fix a problem where the video won't render correctly with ffmpeg v3.4
and later.
2018-04-24 16:58:14 -04:00
Calvin Walton
ce84c5517b
Include webrtc webcams in recording processing
2018-04-24 15:20:35 -04:00
Calvin Walton
c45fa74da0
Archive the webcam files from kurento webcam sharing
2018-04-24 15:18:02 -04:00
Calvin Walton
cafa9fd822
Rework audio processing to avoid seeking past end of file
...
In some cases when there is a slight mismatch between audio file
duration and event timestamp difference, and we have a record
status or chapter break event in a certain location, it could
trigger a seek past the end of an audio file. Detect this
condition and just render silence instead.
Also adjust the thresholds for the audio length scaling - they
were being triggered on short recordings that should be correct.
2018-02-13 12:45:58 -08:00
Calvin Walton
e30d5e3940
Rework audio processing to avoid seeking past end of file
...
In some cases when there is a slight mismatch between audio file
duration and event timestamp difference, and we have a record
status or chapter break event in a certain location, it could
trigger a seek past the end of an audio file. Detect this
condition and just render silence instead.
Also adjust the thresholds for the audio length scaling - they
were being triggered on short recordings that should be correct.
2018-02-12 16:33:37 -05:00
Richard Alam
bca27c4838
Merge pull request #5136 from kepstin/segmented-recording
...
Archive events.xml file in a concurrency-friendly way.
2018-02-12 14:28:37 -05:00
Calvin Walton
c1258ed387
Archive events.xml file in a concurrency-friendly way.
...
With the current segment processing, we might be processing one segment
while archiving a different segment from the same recording. To avoid
that the processing scripts see an incomplete events.xml file, write to
a temp file then rename.
2018-02-12 14:04:46 -05:00
Calvin Walton
c44d94b498
Workaround video sync issue due to red5 timestamp offset
...
Red5 sometimes writes webcam video files with a large offset in the
video frame offsets, sometimes up to 30 or even 60 seconds. However,
the start event in the events.xml file corresponds to the time at
which red5 received the first keyframe (recorded frame) in the video.
The end result is that the video will sometimes appear to be
delayed (out of sync) in the processed recording.
The correction is simple: We're already reading video metadata,
including the timestamp of the first frame, so we just have to apply
a correction during video processing to undo the frame timestamp
offsets in the video file.
2018-02-12 10:22:36 -08:00
Calvin Walton
0701bf87a8
Workaround video sync issue due to red5 timestamp offset
...
Red5 sometimes writes webcam video files with a large offset in the
video frame offsets, sometimes up to 30 or even 60 seconds. However,
the start event in the events.xml file corresponds to the time at
which red5 received the first keyframe (recorded frame) in the video.
The end result is that the video will sometimes appear to be
delayed (out of sync) in the processed recording.
The correction is simple: We're already reading video metadata,
including the timestamp of the first frame, so we just have to apply
a correction during video processing to undo the frame timestamp
offsets in the video file.
2018-02-12 11:54:18 -05:00
Calvin Walton
d8c0f7a67d
Don't delete video events in the sanity script.
...
When working with the segmented recording format, the events file might
end with a mismatched start video event for an incomplete file. The
sanity script was removing this event, meaning the video didn't show up
in future segments.
Simply drop the code that tries to find invalid video files and removes
them from the events file. The new video processing code is already
robust against missing or corrupt files.
2017-12-14 14:43:31 -05:00
Richard Alam
e13a68377c
Merge branch 'v2.0.x-release' of github.com:bigbluebutton/bigbluebutton into synch-with-v2.0
2017-11-20 08:42:46 -08:00
Calvin Walton
7362eb1eaf
Update gems for security fixes, remove some unused.
2017-11-17 14:36:24 -05:00
Calvin Walton
feee34c144
Fix parsing meeting id for segments in publish step
2017-11-10 13:10:58 -05:00
Calvin Walton
d35dd90530
Applying segment breaks after recording marks doesn't work
...
The timestamps no longer line up after applying one edit, so these
have to be all done at the same time in one step.
2017-11-09 13:48:27 -05:00
Calvin Walton
abdb639e01
Bump bbb version to 2.1 so we can identify the new events
...
BBB 2.1 has multiple presentation pods and multiple chats, so the messages
for those have been altered.
2017-11-08 17:06:00 -05:00
Calvin Walton
eeb171cfc8
Add helper function that applies chapter breaks to record start/stop
...
This allows re-using some existing start/stop supporting processing
scripts to generate chapter recordings.
2017-11-08 13:49:24 -05:00
Calvin Walton
e2b40cc5bd
Rework a bunch of the code to avoid repeatedly reparsing the events.xml
2017-11-08 10:12:25 -05:00
Calvin Walton
ab1019bf14
Set up rap publish/process scripts for segments
2017-11-07 11:50:28 -05:00
Calvin Walton
4e243536c7
Handle the no audio files case a bit better
...
If no audio files were found, it was running rsync with one argument,
which is a bit unexpected. It just printed a file list in this case, but
we can provide a cleaner error message instead.
2017-11-07 10:03:20 -05:00
Calvin Walton
50f2c1b90b
Fix syntax issues in sanity scripts
2017-11-07 09:53:08 -05:00
Calvin Walton
35f7f425e2
Fix break detection in events
2017-11-07 09:52:50 -05:00
Calvin Walton
9add60d81b
Fix a bunch of bugs found when testing the archive code
2017-11-06 15:22:43 -05:00
Calvin Walton
5bb5cbcd0e
Have archive script check whether a particular segment is recorded
...
It previously checked whether any part of the entire meeting was recorded.
Helper functions are added to look up the time of segment start and end
(which handle non-segmented recordings correctly too).
Part of the events handling code was rewritten to reduce the number of times
that the events.xml file gets parsed.
2017-11-03 16:12:05 -04:00
Calvin Walton
f9c4843f28
Cleanups, initial work on checking for segment recorded status.
2017-11-03 15:17:04 -04:00
Calvin Walton
0e2785205a
Update sanity script for recording segments, fix archive done files
2017-11-03 12:02:36 -04:00
Calvin Walton
037014db94
Adjust sanity rap worker to support segment breaks
2017-11-03 11:27:00 -04:00
Calvin Walton
f5cd1628e0
Trim events list after archive, make archive fail block future segments
2017-11-03 11:16:44 -04:00
Calvin Walton
2c4cadf459
Delete event data from redis after archive writes xml
...
Todo: we also need to remove the events from the meeting event list
2017-11-03 10:27:52 -04:00
Calvin Walton
a78997d1a1
Work in progress on segment archiving
2017-11-01 12:31:07 -04:00
Calvin Walton
0affb6a36e
Make progressive archiving of media files work.
...
Switch to using rsync to archive video directories, with the -t option
so it'll only update modified/new files.
2017-10-30 15:04:30 -04:00
Calvin Walton
0acb3b5750
Adapt rap-archive-worker to segmented recording done file format
2017-10-30 13:40:53 -04:00
Calvin Walton
b2f8c80202
Handle out of order inserts at the start of a caption stream.
...
If you're inserting at position 0 (and there was no previous deleted text
from that position), you can't use the timestamp from the previous character
position, since there's no previous character. Use the timestamp of the
following character instead.
2017-10-12 14:16:34 -04:00
Leonardo Crauss Daronco
58fe40dadd
Fix reference to the format name in rap-publish-worker
2017-10-09 19:06:06 -03:00
Leonardo Crauss Daronco
af87bc2d3f
Merge remote-tracking branch 'upstream/master' into v1.1.0-rap-on-resque
2017-10-09 16:37:28 -03:00
Calvin Walton
e37db34eb4
Correctly handle a recording start being the last event in a recording.
...
In some unusual cases, the recording start can be the last event in the
events file, or at least have the same timestamp as such.
Add some code to check the array bounds and break if needed, so we
don't check the timestamp on the (non-existant) event after the last
event.
2017-10-02 12:31:31 -04:00
Calvin Walton
3307fab99c
Don't crash playback if text is not available for a slide.
...
This happens when the slide is a plain image, for example.
Fixes #4425
2017-09-28 14:34:19 -04:00
Calvin Walton
3f1fb1dc31
Handle recordings that have an unmatched DeskshareStartedEvent
...
The previous code looked for stop events and tried to find their
associated start event. This obviously doesn't work if there was
no stop event. But if there was a start event, we need to show the
deskshare… so rework to code to try to find the matching stop to each
start instead, and use the end of the meeting if no matching stop was
found.
2017-09-13 17:17:17 -04:00
Calvin Walton
399b1cb543
RnP: Don't fail processing if an image can't be converted to png
2017-09-05 11:21:16 -04:00
Calvin Walton
b810939643
RnP: Fix parsing poll fields as numbers rather than text
2017-08-30 14:51:52 -04:00
Calvin Walton
e81d77a318
RnP: Fix shape type name for poll shapes
2017-08-30 14:42:29 -04:00
Calvin Walton
2d19cd7b7b
Make the fallback slide images transparent, so the logo is visible
2017-08-25 16:05:46 -04:00
Calvin Walton
195b499e06
RnP: Fix square/circle rendering
...
Different parts of the code were using symbol vs string keys, so
the circle/square code never got applied. Use symbols everywhere for
consistency.
2017-08-25 15:46:03 -04:00
Calvin Walton
a3a530553a
RnP: Force re-encoding text from textfiles into UTF-8
...
Some old recordings might have invalid or legacy encoding stuff
in the text files. To allow processing to continue, just re-encode int
UTF-8 with the invalid option set to replace, to remove the invalid
characters.
2017-08-25 14:02:09 -04:00
Calvin Walton
dba121e6f4
Merge pull request #3998 from kepstin/caption-fixes
...
Update caption track generation based on feedback
2017-08-25 12:04:59 -04:00
Calvin Walton
0d91b9444e
RnP: Some shapes in BBB 2.0 now have sharp corners
2017-08-25 11:39:00 -04:00
Calvin Walton
243afcd90c
RnP: Make 'presentation_props' a global var so it can be accessed in functions
2017-08-23 12:22:46 -04:00
Calvin Walton
ba1e0e09c2
RnP: Add image id to shape ids
...
This ensures that the same shape in two different images will
get different ids for each, so that the drawing code will handle it
correctly.
2017-08-21 16:40:53 -04:00
Calvin Walton
62465d4c47
RnP: Convert BBB 2.0 cursor positions to be relative to viewbox
...
In BBB 2.0, the cursor positions are given relative to the page
size (like annotation positions). Since the recording cursors
aren't actually drawn in the page like annotations, it's more
convenient to have them relative to the visible area (viewbox),
so do that conversion.
While I'm in here - since we switched to new incompatible scripts
for BBB 2.0 anyways - remove an extra factor in the cursor positions
in cursor.xml, and just use a simple ratio of width/height instead.
2017-08-21 14:44:41 -04:00
Calvin Walton
c925a36c7b
RnP: Calculate the cursor position based on pan/zoom info
2017-08-21 12:24:19 -04:00
Calvin Walton
08f00eb35e
RnP: Fix variable name of bbb 2.0 version check
2017-08-18 17:50:34 -04:00
Calvin Walton
919bb1a60f
RnP: Don't unconditionally hide cursor if no updates
2017-08-18 17:45:46 -04:00
Calvin Walton
33a511d800
Move the custom_hash require to publish rap worker where it's used
2017-08-18 17:45:15 -04:00
Calvin Walton
21255cf04a
RnP: Hide the cursor when it goes offscreen
...
Remove the old 'hide cursor on inactivity' code, and just hide the
cursor when the cursor events say it should be hidden.
2017-08-18 17:16:16 -04:00
Calvin Walton
f66d4a2849
RnP: Syntax fixes for presentation text fix...
2017-08-18 17:07:14 -04:00
Calvin Walton
2b51f39c62
RnP: Fix issues in presentation publish
...
- Need to look in the process dir to find the images (and create new ones)
- Don't set the text attributes on slides that do not have text (logo)
2017-08-18 16:56:45 -04:00
Calvin Walton
1390224efc
RnP: Use correct dir to find presentation images
2017-08-18 16:39:18 -04:00
Calvin Walton
dba5cd9196
Various recording script fixes & cleanups
...
This is just a bundle of a few things I've been fixing up in the past
while.
= Workaround for BBB 1.1 beta deskshare timestamp bug
This is unlikely to be used, but I have the code for it, might as
well merge it in.
= Rework video tiling code for ffmpeg
Render video using the 'hstack' and 'vstack' filters rather than the
'overlay' filter. This is somewhat faster, particularly with lots of
videos.
= Etc.
- Remove usage of the streamio-ffmpeg gem.
The video rendering code has some stuff to directly read 'ffprobe'
output, so re-use that instead of this gem (which is kind of old and
has issues with newer ffmpeg versions).
- Don't hardcode the deskshare video area size, pull it from the
properties file
- Remove some code that worked around missing video end events.
In some cases this could cause flickering or strange video issues.
It's no longer strictly needed, the new tiling code doesn't break if
the seekpoint is after the end of the video.
2017-08-18 15:24:54 -04:00
Calvin Walton
321119a79e
Create a new 2.0 recording playback directory, revert 0.9.0 to old shapes code.
...
The new shapes code, required for handling smooth shape updates & multi-user
whiteboard in the 2.0 BigBlueButton, hits a bug in old recordings where
the pencil tool incorrectly used "line" in its shape names, meaning that
there could be both a pencil mark and a line with the same shape name.
The old recording code didn't rely on the shape name to match shapes, since
there was no chance of concurrent shapes. As this is an incompatible playback
change, we need to make a new playback directory for the updated files.
2017-08-18 11:34:15 -04:00
Calvin Walton
d24c8f8af2
RnP: BBB <0.9 also had off-by-one on the undo and clear messages
2017-08-17 15:44:13 -04:00
Calvin Walton
04002f687f
Revert to the pre-2.0 capitalization of 'userid' in presenter event
2017-08-17 14:29:54 -04:00
Calvin Walton
af4217c53e
Set cursor opacity to match BBB flash client
2017-08-17 13:54:42 -04:00
Calvin Walton
50bf20f726
Rewrite recording processing handling of shapes, panzooms, cursor
...
The old code was very difficult to follow, and I couldn't figure out
a good way to retrofit the BigBlueButton 2.0 undo by shape id and clear
by user id into it - so I rewrote the entire thing instead.
It now generates the shapes.svg, panzooms.xml and cursor.xml all at the
same time during a single pass through the event.xml file. The result
is compatible with the existing recording javascript (at least once a few
minor issues in writing.js were fixed by earlier commits).
2017-08-17 13:33:00 -04:00
Calvin Walton
f0304a120a
Handle panzoom at same time as slide change correctly.
...
Because of the >=, a panzoom at the same time as a slide change was matching
the previous slide rather than the expected new slide.
2017-08-17 11:59:06 -04:00
Leonardo Crauss Daronco
0b662c5342
Fix call to resque's "prune_dead_workers" on rap workers
2017-08-15 12:10:34 -03:00
Calvin Walton
0087139f0d
rnp: Fix playback to handle shape updates correctly.
...
The previous code would cause shapes to "blink" during updating if
the updates weren't continuous - in a gap between updates, the shape
would disappear.
Rework the logic for looking up "current" shapes to return the
nearest previous update rather than only exact matching timestamps,
and simplify the logic that decides whether to make a shape visible
or hidden.
2017-08-14 18:18:16 -04:00
Leonardo Crauss Daronco
aa8a7818a9
Remove stale workers when starting a rap worker
...
A simple but effective way of garbage collection.
See:
http://www.rubydoc.info/github/resque/resque/Resque%2FWorker:prune_dead_workers
2017-08-11 17:32:42 -03:00
Calvin Walton
aac50a077e
Fix dot thickness for degenerate pencil shapes
2017-08-09 14:04:17 -04:00
Leonardo Crauss Daronco
2a253cf3bd
Schedule the next rec step in the base worker
2017-08-09 11:52:52 -03:00
Leonardo Crauss Daronco
50e02ad7dc
Specify the sequence of rec steps in the props file
...
Removed from the code, now it can be specified in the properties file.
Makes it easier to include new processing scripts and control dependencies
between them.
2017-08-07 18:08:17 -03:00
Calvin Walton
005965e4b1
Pencil commands are strings
2017-08-03 12:42:38 -04:00
Calvin Walton
8a36ac5469
Fix typo in 'commands' variable name
2017-08-03 12:40:56 -04:00
Calvin Walton
05d6859170
Shape commands is spelt with an s
2017-08-03 12:24:35 -04:00
Calvin Walton
98fad425aa
Add path 'command' handling for BBB 2.0 smooth drawing
2017-08-03 12:17:48 -04:00
Calvin Walton
8f142b9541
Shape thickness is a percentage, not fraction
2017-08-03 11:41:28 -04:00
Calvin Walton
c6f4ca9b56
BBB version is expected to be 3 numbers in recording events
2017-08-03 11:26:36 -04:00
Calvin Walton
f6c49847fb
Use new shape thickness calculation on BBB 2.0
...
Thickness is now fraction of page width, rather than "pixels" on
an unspecified screen size.
2017-08-03 11:21:51 -04:00
Calvin Walton
056d7f2af6
Mark recordings as being from bbb 2.0
...
This will let the recording scripts adapt to some of the more difficult to
handle changes.
2017-08-03 11:02:28 -04:00
Calvin Walton
f176682abb
Move the slide size storage back inside the loop
2017-08-03 10:50:14 -04:00
Calvin Walton
728eb19dc6
Fix name of 'GotoSlideEvent'
2017-08-03 10:47:30 -04:00
Calvin Walton
3f43294dc0
Fix syntax issue in presentation publish script
2017-08-03 10:40:17 -04:00
Calvin Walton
0913534108
Have presentation recording script remember current slide
...
This fixes recording generation on BBB 2.0, where there is no longer
an automatic GotoSlide sent after every SharePresentation
2017-08-02 17:14:29 -04:00
Pedro Beschorner Marin
835f7d5371
Removed unused playbacks included with mconf merge
2017-08-01 15:11:49 +00:00
Leonardo Crauss Daronco
bc926be8d2
Simplify rap-starter a little
2017-07-14 17:35:06 -03:00
Leonardo Crauss Daronco
b01ab0574a
Make sure rap resque workers will run from the correct directory
2017-07-13 17:48:20 -03:00
Leonardo Crauss Daronco
c34f3adff0
Add option to configure a different redis server for rap workers
...
Makes it possible to have a separate redis for workers, which helps when
scaling the processing.
2017-07-13 17:48:02 -03:00
Leonardo Crauss Daronco
076da25a7b
Let exceptions be raised on rap resque workers
...
Let the exceptions be raised so that the job will be put in a "failed"
queue with all information needed.
2017-07-13 14:36:46 -03:00
Leonardo Crauss Daronco
71515d3a0c
Make sure bbb-rap-resque-worker starts after boot
2017-07-13 14:36:45 -03:00
Leonardo Crauss Daronco
0252604b16
Add systemd scripts for rap workers on redis
2017-07-13 14:36:45 -03:00
Leonardo Crauss Daronco
13623e96fa
Use a hash to pass options to rap workers, makes it easier to extend
...
With a hash it's easier for customizations to pass new parameters and
even create new types of workers.
2017-07-13 14:36:45 -03:00
Leonardo Crauss Daronco
5488cba3dd
Run a different worker for each rap processing format available
...
Was running all formats inside a single worker, now there is a worker for
each processing script. Each will trigger its own publish worker when
done.
2017-07-13 14:36:44 -03:00
Leonardo Crauss Daronco
27cadca49a
Use recording status files for info only, not as triggers
...
With resque workers we don't need to use status files to trigger each
step of the recording process. So instead of using status files as triggers
they are not used only for information, so that the workers can know if
a e.g. processing script failed or succeeded.
2017-07-13 14:36:44 -03:00
Leonardo Crauss Daronco
1320fcb900
Move common rap functionality to a base class
...
Moved all workers to a common directory, inheriting from a common base
class that has all common methods used by all workers.
2017-07-13 14:36:44 -03:00
Leonardo Crauss Daronco
72813a908c
Move sanity, process and publish rap workers to run in resque
...
Same as 1bcdc45 but for the other scripts.
2017-07-13 14:36:43 -03:00
Leonardo Crauss Daronco
5aeeee25fd
Move rap archive to resque, first step on moving all steps to resque
...
For now the differences are that the archive worker will run inside
resque (it is a resque worker now) and there is a "rap-trigger" file that
is executed by systemd to detect recordings that need to be archived and
add a job on resque to archive them.
The process os scheduling jobs still needs to be reviewed, but for now will
be done by rap-trigger.
2017-07-13 14:36:43 -03:00
Pedro Beschorner Marin
2097b611ed
Merge remote-tracking branch 'prlanzarin/1.1-transcode-screenshare-merge' into bigbluebutton/bbb-2.x-mconf
...
Conflicts:
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/LiveMeeting.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/MeetingActor.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/MessageSenderActor.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/api/InMessages.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/api/OutMessages.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/api/ValueObjects.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/UsersApp.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/UsersModel.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/endpoint/redis/AppsRedisSubscriberActor.scala
bbb-common-message/src/main/java/org/bigbluebutton/common/messages/RegisterUserMessage.java
bigbluebutton-client/src/org/bigbluebutton/modules/layout/managers/LayoutManager.as
bigbluebutton-client/src/org/bigbluebutton/modules/phone/PhoneOptions.as
bigbluebutton-client/src/org/bigbluebutton/modules/phone/views/components/ToolbarButton.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/present/ui/views/PresentationWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/managers/WebRTCDeskshareManager.as
bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/model/ScreenshareOptions.as
bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/view/components/ScreensharePublishWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/view/components/ScreenshareViewWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMap.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserGraphicHolder.mxml
record-and-playback/core/scripts/rap-process-worker.rb
2017-07-11 20:41:38 +00:00
Calvin Walton
a28efe68d0
Don't crash on IME-inserted captions
...
Current BBB client is generating invalid indexes when characters are
inserted with an IME - the edit indexes are as if the preedit text was
being removed, but the preedit text was never sent in the first place.
For now, just don't crash if there's an edit that would remove text
which is past the end of known text. The result might be broken, but
it won't prevent the rest of the recording from working.
2017-06-13 16:02:03 -04:00
Pedro Beschorner Marin
15c6420e97
Merge tag 'v1.1.0' into 1.1-transcode
...
tagging v1.1.0 release
Conflicts:
bbb-common-message/src/main/java/org/bigbluebutton/common/messages/RegisterUserMessage.java
bbb-web-api/src/main/java/org/bigbluebutton/api/messaging/RedisMessagingService.java
bigbluebutton-client/resources/config.xml.template
bigbluebutton-client/src/org/bigbluebutton/modules/layout/managers/LayoutManager.as
bigbluebutton-client/src/org/bigbluebutton/modules/phone/PhoneOptions.as
bigbluebutton-client/src/org/bigbluebutton/modules/phone/views/components/ToolbarButton.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/view/components/ScreensharePublishWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/view/components/ScreenshareViewWindow.mxml
record-and-playback/core/scripts/rap-process-worker.rb
2017-06-13 17:44:12 +00:00
Pedro Beschorner Marin
719ef1377a
Merge remote-tracking branch 'mconf' into merging-into-bbb-1.1
...
Conflicts:
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/MeetingActor.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/api/ValueObjects.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/UsersApp.scala
bbb-video/src/main/java/org/bigbluebutton/app/video/VideoApplication.java
bbb-video/src/main/java/org/bigbluebutton/app/video/converter/VideoRotator.java
bigbluebutton-client/locale/en_US/bbbResources.properties
bigbluebutton-client/locale/pt_BR/bbbResources.properties
bigbluebutton-client/resources/prod/MconfLive.html
bigbluebutton-client/src/org/bigbluebutton/common/Images.as
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/utils/BrowserCheck.as
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/utils/JavaCheck.as
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/view/components/DesktopPublishWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/present/ui/views/PresentationWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/users/views/UsersWindow.mxml
bigbluebutton-config/bin/bbb-conf
record-and-playback/core/lib/recordandplayback/generators/audio_processor.rb
record-and-playback/core/lib/recordandplayback/generators/video.rb
record-and-playback/core/scripts/rap-worker.rb
record-and-playback/presentation/playback/presentation/0.9.0/lib/writing.js
record-and-playback/presentation/scripts/process/presentation.rb
record-and-playback/presentation/scripts/publish/presentation.rb
2017-06-07 19:31:15 +00:00
Calvin Walton
11da0b61e0
Update caption track generation based on feedback
...
I've had a chance to see how this script behaves with actual live
caption tracks now, and there's room for improvement. In particular,
it often generates cues that overlap - the next one appears before the
previous one disappears. The browser player position handles this
really poorly, and it's nearly unreadable.
The solution is to, if two cues would overlap, merge them into a
single multiline cue that displays for the full time. This is a lot
easier to read.
Some extra code is added to de-overlap any remaining cues (e.g. if
there's a third cue that would also overlap). This will reduce the
time that the earlier cue gets shown below my preferred minimum, but
not really much we can do about that if people are talking/typing
quickly.
The code can easily be tweaked to set a different number of maximum
lines per cue if desired.
2017-06-06 09:24:14 -04:00
alexandre
cbd01875b9
Storing meeting duration
...
We were getting the duration with a Popcorn temporary instance. This was causing a slowly increase on the cpu usage, which could compromise the performance of long recordings.
2017-06-02 15:45:09 -03:00
Felipe Cecagno
6dd0641de2
disable padding on body to handle the case when the playback is embedded in a third party app with a header
2017-05-31 20:37:57 -03:00
alexandre
fc3c6134a7
Reverting shapes drawing refactoring
...
There are some cases in which annotations does not appear. It needs more testing.
2017-05-30 14:51:20 -03:00
alexandre
d7b38ced81
Removing deskshare intervals in the slide aspect calculations
...
Deskshare has it own functions to set its aspect. We were causing wrong annotations positioning as well as wrong slide resizing.
2017-05-30 14:39:55 -03:00
Felipe Cecagno
e45fd8794a
Merge branch 'mconf' of github.com:alexandrekreis/bigbluebutton into mconf
2017-05-24 16:54:36 -03:00
alexandre
c75a19d990
function is_video_valid returns true if video is valid
2017-05-23 17:02:26 -03:00
Ghazi Triki
7d283cd154
Merge remote-tracking branch 'bigbluebutton/master' into merge-master-into-2x
...
# Conflicts:
# bigbluebutton-client/resources/config.xml.template
# bigbluebutton-client/src/org/bigbluebutton/modules/phone/PhoneOptions.as
# bigbluebutton-client/src/org/bigbluebutton/modules/phone/views/components/ToolbarButton.mxml
# record-and-playback/core/scripts/rap-process-worker.rb
2017-05-22 17:35:24 +01:00
alexandre
155cc4edad
Video sync mechanism refactoring
...
- Created function "seySync( )" which sets the sync logic. Basically, we sync all medias when pausing the master video. We pause the master video when any video receives a waiting event, or when the master video is seeked. If necessary, we resume playing after the sync.
- Refactored when 'media-ready' event is fired. We fire this event only when the medias receive a 'canplayall' event.
2017-05-18 18:05:49 -03:00
alexandre
81b2242055
Improving playback performance and video sync
...
- Popcorn "onFrame" method runs around 6 times per second. That was unnecessary , causing the CPU work to significantly increase, and preventing the two videos (deskshare and webcam) to run together smoothly
- We only synchronize the medias if one of them fires a "waiting" event. If the user pauses the playback, we synchronize them as well.
2017-05-16 18:34:10 -03:00
alexandrekreis
6a497c27f8
Merge pull request #4 from pedrobmarin/shapes-drawing
...
Refactored shapes drawing
2017-05-16 17:31:05 -03:00
Felipe Cecagno
654fd8c553
fix issue introduced by last commit, in which the full path of the deskshare video file was not provided in order to check if it was a valid video or not
2017-05-16 13:55:48 -03:00
Pedro Beschorner Marin
8ec81f84d4
Refactored shapes drawing
2017-05-15 21:07:42 +00:00
Calvin Walton
da79d1e3b3
rap-process-worker: Write processing_time file only if processing succeeded
...
If processing didn't succeed, the directory where it is trying to write
the file might not exist, causing an exception in the worker which leads
to it getting stuck in a retry loop.
2017-05-08 16:10:59 -04:00
Felipe Cecagno
9f6ef49847
check if the deskshare video file is valid before processing it
2017-05-07 19:12:34 -03:00
Richard Alam
c733f4eafc
Merge branch 'master' of https://github.com/bigbluebutton/bigbluebutton into bbb-2.x-dev-mconf
2017-04-27 14:52:47 -07:00
Pedro Beschorner Marin
000d0a038e
Fixed multiline text annotations in playback
2017-04-27 17:43:35 +00:00
Pedro Beschorner Marin
b52bf09a45
Fixed wrong font sizes and placement in playback so now they match the annotated text from the presentation
2017-04-27 17:31:48 +00:00
Pedro Beschorner Marin
d55f0dddf5
Fixed multiline text annotations in playback
2017-04-26 18:59:55 +00:00
Calvin Walton
da79ecdada
Handle BBB 0.81 slide/pageNumber base mismatch
...
In BBB 0.81, the slide number was base 0, while the shape page number was
base 1. We already have a conditional for checking 0.9+; use that to
add a workaround for old BBB recordings.
2017-04-26 14:02:52 -04:00
Calvin Walton
a5adebd3e0
Use the presentation name/page number to match shapes to pages, not time.
...
The previous code assumed that if a shape event's timestamp was during the
time when a particular slide was visible, then the shape belonged to that
slide. This isn't always true with the text shapes, since a final close
event can be sent after the slide has switched.
For a more future-proof matching, use the presentation name and page number
fields on the shape events when available to match them with the appropriate
slide image.
2017-04-26 14:02:52 -04:00
Pedro Beschorner Marin
660574fcfa
Fixed wrong font sizes and placement in playback so now they match the annotated text from the presentation
2017-04-26 14:18:08 +00:00
Pedro Beschorner Marin
cab466e926
Merge pull request #399 from fcecagno/fix-deskshare-ser
...
recording: Run the 'ser' fixup tool on deskshare videos, too
2017-04-17 13:59:11 -03:00
Richard Alam
262c7250c8
Merge branch 'master' with bbb-mconf
2017-04-17 15:57:31 +00:00
Calvin Walton
d00024d569
recording: also archive .flv.ser files from deskshare directory
2017-04-16 17:28:37 -03:00
Calvin Walton
f5731b74c5
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-04-16 17:20:43 -03:00
alexandre
f8c976fd54
Certifying that we process the audio before getting it in AudioProcessor
2017-04-13 17:23:13 -03:00
alexandre
cf176a6990
Saving processed audio and using it to process webcam videos
...
Webcam videos processing was processing the audio again.
2017-04-13 15:58:17 -03:00
Pedro Beschorner Marin
c45e14e185
Alexandre's fit-to-width height scaling fix
2017-04-11 20:50:53 +00:00
Pedro Beschorner Marin
086ea510c4
Avoid keeping unwanted annotations when seeking over the playback. This fixes a major bug but loses some of the smoothness that I could't avoid
2017-04-11 20:47:30 +00:00
Felipe Cecagno
0253fd5a38
improve readability; fix indentation
2017-04-07 22:16:36 -03:00
Felipe Cecagno
287395454a
Merge remote-tracking branch 'alexandre/mconf' into mconf
2017-04-07 22:11:38 -03:00
alexandre
2dd61df1c6
Handling fit-to-width events in recording playback
...
The playback had no handling for this type of event. The aspect ratio used to calculate the max-width of the slide div has to be the vbox aspect ratio.
2017-04-07 17:09:54 -03:00
Calvin Walton
e77b50d2c6
recording presentation: Reduce the top/bottom margin so bars fit better
...
gnuplot's auto-margins don't work well on this graph, so manually specify
the top/bottom (actually left/right - the graph is rotated 90°) to make
the bars fit better, particularly when using wide aspect ratio slides.
2017-04-06 18:04:10 -04:00
Calvin Walton
0a1667f293
recording presentation: Correctly calculate width of bar in poll results
...
The code was previously dividing by the total number of votes rather than
the max number of votes, which meant it was underestimating the width of
the bars. In some cases, this meant that the label for number of votes would
overlap the percentages.
Fixes #3725
2017-04-06 14:35:31 -04:00
Pedro Beschorner Marin
f59e42bb02
Merge remote-tracking branch 'bigbluebutton/master' into merging-into-bbb-1.1
2017-04-04 20:42:15 +00:00
Pedro Beschorner Marin
84fd8d4101
Branding back to BigBlueButton and adding back some of the client images we removed. This need to be reviewed to avoid having all this unused images!
2017-04-03 17:06:16 +00:00
Felipe Cecagno
2b9dcc37de
process recordings in chronological order
2017-04-01 20:00:37 -03:00
Chad Pilkey
1e4baeaffa
fix the recording play button to work with devices that have touch and a mouse
2017-03-23 15:38:28 -04:00
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
Pedro Beschorner Marin
38aef723d7
Updating presentation_export with closed caption feature
2017-03-22 19:20:20 +00:00
Pedro Beschorner Marin
0592568ac8
Adding back some methods that were excluded from master but we were using for screenshare's playback annotations
2017-03-22 17:31:35 +00:00
Pedro Beschorner Marin
0ab207c997
Merge remote-tracking branch 'mconf/mconf'
2017-03-21 19:47:11 +00:00
Pedro Beschorner Marin
c74cc682c4
Merge remote-tracking branch 'mconf/mconf'
2017-03-20 19:45:59 +00: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
Pedro Beschorner Marin
d7a0493da4
Updated presentation_export
2017-02-24 20:03:47 +00:00
Felipe Cecagno
c8a91bc6d4
avoid breaking if there's no deskshare.xml in the published presentation recording
...
Conflicts:
record-and-playback/presentation/playback/presentation/0.9.0/lib/writing.js
2017-02-24 19:54:40 +00:00
Pedro Beschorner Marin
490ecd2157
Reverting some modifications made in presentation publish script for deskshare video
2017-02-24 13:46:32 +00:00
Pedro Beschorner Marin
3e43602b33
Changed deskshare start/stop matching method
2017-02-23 20:17:16 +00:00
Pedro Beschorner Marin
6787915e0e
Refactored deskshare video recording
2017-02-23 18:21:10 +00:00
alexandre
ccd4bc4268
Removing timeline attribute for deskshare video
...
We don't need it. This causes duplicate chat messages in recording playback.
2017-02-16 17:24:33 -02:00
Pedro Beschorner Marin
7a4cd67fc3
Adjusting playback to work with old recordings
2017-02-14 13:52:44 +00: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
dfa5a305cc
Handling deskshare when closing meeting or stop recording
...
Closing the room or stopping recording with an active deskshare was producing an incorrect recording
2017-02-01 16:38:39 +00:00
Pedro Beschorner Marin
efb9082b9d
Hiding deskshare cursor
2017-02-01 14:15:55 +00:00
Pedro Beschorner Marin
b91535741b
Refactored canvas handling
2017-01-31 14:06:38 +00:00
Pedro Beschorner Marin
0647cdf3b1
Fixed NPE and did some cursor drawing refactoring at playback
2017-01-31 13:45:43 +00:00
Pedro Beschorner Marin
91092e066a
Fixed playback when there is no deskshare canvas
2017-01-27 17:01:59 +00:00
Pedro Beschorner Marin
b89a31bb9a
Merge remote-tracking branch 'playback-speedup' into mconf
...
Conflicts:
record-and-playback/presentation/playback/presentation/0.9.0/lib/writing.js
record-and-playback/presentation/scripts/process/presentation.rb
record-and-playback/presentation/scripts/publish/presentation.rb
record-and-playback/presentation_export/playback/presentation_export/lib/writing.js
2017-01-26 18:10:20 +00: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
Pedro Beschorner Marin
e5f6ce8185
Make sure to create video element before running Popcorn
2017-01-03 13:13:36 +00:00
Pedro Beschorner Marin
adbb81e1c5
Cleanup
2016-12-21 18:35:21 +00:00
Pedro Beschorner Marin
85fdf9c79f
Updated presentation_export with new deskshare features
2016-12-21 17:26:11 +00:00
Pedro Beschorner Marin
9646bd4cef
Fixed annotations to work with Chrome
2016-12-21 16:47:42 +00:00
kreismann
4e2dc4077a
Fixing deskshare video positioning
...
This also fixes deskshare video/user video swap on playback.
2016-12-20 13:36:02 -02:00
kreismann
f93114e207
Fixing deskshare panzooms
...
- Getting slide dimensions to properly set the panzoom event when deskshare stops.
- Sometimes there's a panzoom event with the deskshare image dimension at time=stop_timestamp+0.1. We remove it.
- Little refactoring
2016-12-19 15:11:32 -02:00
Pedro Beschorner Marin
0223faec5a
Positioning cursor over deskshare whiteboard on the playback
2016-12-16 12:49:46 +00:00
Pedro Beschorner Marin
8ca6ecacee
Merge remote-tracking branch 'alexandrekreis/mconf' into deskshare-whiteboard
2016-12-15 17:20:08 +00:00
Pedro Beschorner Marin
ac9504fdd2
Annotations over deskshare whiteboard at playback
2016-12-15 17:19:10 +00:00
kreismann
6a29fd832e
Handling deskshare on processClearEvents
2016-12-14 14:50:34 -02:00
kreismann
37660e4e13
Fixing some bugs
...
- Properly inserting deskshare panzoom events. We insert a panzoom event with the deskshare video dimensions and the deskshare start timestamp. Immediately, we insert another panzoom event with the previous slide dimensions and the deskshare stop timestamp, deleting any other panzoom event inside this interval of time.
- Handling when deskshare events occur in timestamp = 0.0
- For now, we are limiting the max dimensions to 1280x720
2016-12-12 16:29:06 -02: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
kreismann
be87eeddbd
Creating only one image for deskshare
...
So we can retrieve deskshare history. Still need to adapt the size of annotations on different deskshare resolutions.
2016-12-02 17:40:50 -02: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
kreismann
6aeabb9293
Correctly handling multiple deskshare events inside a slide interval of time
2016-12-02 15:34:49 -02:00
Pedro Beschorner Marin
5563e607fc
Changed loading bar theme
2016-12-02 13:50:00 +00:00
Pedro Beschorner Marin
0248d42179
Updated presentation_export with new deskshare features, loading bar and JSON slides text file
2016-12-01 20:04:06 +00:00
Pedro Beschorner Marin
e5c48cb7be
Replaced the playback spinner for a loading bar and included a not-found meeting fallback page
2016-12-01 18:13:26 +00:00
kreismann
fe9fde2330
Getting flv resolution to set deskshare image and pan/zoom dimensions
2016-11-30 16:31:19 -02:00
Pedro Beschorner Marin
b762795cc9
Cleanup
2016-11-29 17:33:05 +00:00
kreismann
e27c291ee0
Recording playback shows whiteboard annotations on deskshare video as well
...
Pending issues:
- Image and ViewBox sizes are hardcoded (1280x720 - a full screen deskshare video). In order to work with region deskshare videos, we must get the flvs resolutions and set shapes.svg and panzooms accordingly.
- We're not considering the deskshare annotations history yet
2016-11-29 15:08:28 -02:00
Pedro Beschorner Marin
c8acfbf65a
Getting slides associated text from a single JSON file
2016-11-29 14:00:19 +00: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
kreismann
c3b0bd46b2
Deskshare video positioning
...
Applying slide resizing algorithm to deskshare video as well. Also, removing deskshare-video-area.
2016-11-01 17:39:06 -02: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
kreismann
73603d5d68
Presentation area of the recording playback also shows deskshare video
...
This is a demo. Some issues:
- When sharing desktop, cursor is still relative to slides, and not to deskshare video;
- Need to show whiteboard canvas on top of deskshare video as well;
- Need more testing (audio/video sync, playback perfomance, multiple presenters and multiple deskshare events).
2016-10-20 17:39:35 -02:00
Felipe Cecagno
ab8eb279a0
Merge pull request #342 from pedrobmarin/recording-events-improvments
...
Recording events improvments
2016-09-29 15:19:50 -03: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
Pedro Beschorner Marin
694c9564a5
Added record_id to redis recording events
2016-09-21 20:12:57 +00:00
Pedro Beschorner Marin
49d5f9c41c
Refactored redis recording events
2016-09-21 16:32:11 +00: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
Felipe Cecagno
79c3c12256
Merge branch 'merge-presentation-deskshare' into mconf
...
Conflicts:
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/view/components/DesktopPublishWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/view/components/DesktopViewWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/present/ui/views/PresentationWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/whiteboard/views/WhiteboardToolbar.mxml
record-and-playback/presentation/playback/presentation/0.9.0/lib/writing.js
2016-09-14 14:49:48 -03:00
kreismann
b961e197c5
Not showing annotation canvas while sharing desktop in recording
...
1. We create a deskshare.xml with start and stop timestamps of each deskshare event
2. We read it in playback e use its information to hide the annotation canvas and cursor accordingly
2016-09-09 18:31:27 -03: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
Felipe Cecagno
4aa2a732e2
Merge branch 'mconf-live0.7.5' of github.com:mconf/bigbluebutton into mconf
...
Conflicts:
record-and-playback/presentation/playback/presentation/0.9.0/lib/writing.js
2016-09-01 18:00:43 -03:00
Felipe Cecagno
c2a2b7c87a
enable mconf-decrypter to fetch the recordings even if mconf-live is using a self-signed certificate
2016-09-01 17:56:55 -03:00
Felipe Cecagno
c5917f6a92
update presentation_export playback to be responsive as the playback format
2016-09-01 14:07:33 -03:00
Felipe Cecagno
d884264852
update Gemfile and Gemfile.lock, will start to deploy Gemfile.lock and execute ruby using bundler
2016-08-18 16:23:33 -03:00
Felipe Cecagno
714aba46ef
set to debug some of the new log messages on mconf-decrypter
2016-08-18 16:22:40 -03:00
Leonardo Crauss Daronco
d860d166df
Make mconf-decrypter work with HTTPS and redirects
...
It now works with HTTPS URLs and will follow one redirect. The redirect is
useful for when the server being requested redirects HTTP to HTTPS.
2016-08-16 13:09:19 -03: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
Calvin Walton
e4735a12b3
Various updates to the rnp edl handling
...
Main change is to rewrite the start/stop event handling to do fewer
passes and use simpler logic (it no longer has to track durations).
The temporary work audio codec is switched to flac; slightly lower hard
drive use and it avoids the 4-hour length limit of wav.
Some improvements to the video seeking when processing deskshare and
webcam videos, to avoid video dropouts.
Tweaks to the audio encoding quality settings.
Remove an unused function.
2016-08-12 14:17:51 -04:00
Calvin Walton
bfb987dc01
Make shape rendering in presentation recordings closer to live BBB
2016-08-12 11:53:01 -04:00
Calvin Walton
c4d4e1a08a
RnP: Generate blank video when the recording has captions
...
Right now the captions are only rendered if there's a video present. If
the meeting doesn't have a video (webcam or desktop sharing), we'll need
to just make up a blank one.
2016-08-04 13:23:15 -04:00
Calvin Walton
a280a0d0ef
RnP: Hack acornmediaplayer to use browser captions
2016-08-02 16:32:11 -04:00
Calvin Walton
dfce828e93
RnP: Add <track> elements for available captions
2016-08-02 15:31:46 -04:00
Calvin Walton
d4380ce012
RnP: Check if the captions.json is available
2016-08-02 15:15:09 -04:00
Calvin Walton
b589c25831
Fix reference to deleted 'webrtc_deskshare_archiver'
2016-08-02 14:31:20 -04:00
Calvin Walton
d4e7605f42
RnP: Fix use of deprecated IO#lines in logging functions
2016-08-02 10:58:42 -04:00
Calvin Walton
2b8d7a9858
Merge remote-tracking branch 'origin/master' into recording-captions
2016-08-02 10:49:05 -04:00
Felipe Cecagno
f44c25f3f6
do not use hardcoded http to load resources in the playback
2016-08-01 23:53:49 -03:00
Pedro Beschorner Marin
abebee010f
Merge branch 'daronco/responsive-playback' into mconf
...
Conflicts:
record-and-playback/presentation/playback/presentation/0.9.0/logo.png
record-and-playback/presentation/playback/presentation/0.9.0/playback.html
2016-07-12 16:26:47 +00:00
Pedro Beschorner Marin
fac305f8f6
Merge commit '427a288dfe61cfdb28cc1c20a11a36c84f3a33d9' from daronco/responsive-playback into bigbluebutton/v1.0.x-release
...
Conflicts:
record-and-playback/presentation/playback/presentation/0.9.0/playback.html
2016-07-12 14:21:04 +00:00
Fred Dixon
4628fd3a7a
Update bbb-0.9-beta-recording-update
2016-06-26 11:52:09 -04:00
Pedro Beschorner Marin
4c432ee5bd
Merge branch 'feature-1931' into rafafp-branches-merged-1.0
...
Conflicts:
bigbluebutton-client/branding/default/style/css/BBBDefault.css
bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatBox.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatToolbar.mxml
record-and-playback/presentation/scripts/publish/presentation.rb
2016-06-22 13:06:51 +00:00
Richard Alam
58c239bc43
Merge branch 'master' into merge-bbb-1.1-dev-java8-with-master
...
Conflicts:
akka-bbb-apps/build.sbt
akka-bbb-apps/src/main/java/org/bigbluebutton/core/api/IBigBlueButtonInGW.java
akka-bbb-apps/src/main/resources/application.conf
akka-bbb-apps/src/main/scala/org/bigbluebutton/Boot.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/BigBlueButtonActor.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/BigBlueButtonInGW.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/MeetingActor.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/MeetingModel.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/MessageSenderActor.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/RecorderActor.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/api/InMessages.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/api/OutMessages.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/api/ValueObjects.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/WhiteboardApp.scala
akka-bbb-fsesl/build.sbt
akka-bbb-fsesl/src/main/java/org/bigbluebutton/freeswitch/pubsub/receivers/RedisMessageReceiver.java
akka-bbb-fsesl/src/main/java/org/bigbluebutton/freeswitch/voice/freeswitch/ConnectionManager.java
akka-bbb-fsesl/src/main/java/org/bigbluebutton/freeswitch/voice/freeswitch/FreeswitchApplication.java
bbb-common-message/build.sbt
bbb-common-message/src/main/java/org/bigbluebutton/common/messages/Constants.java
bbb-common-message/src/main/java/org/bigbluebutton/common/messages/MessagingConstants.java
bbb-common-message/src/main/java/org/bigbluebutton/common/messages/Util.java
bigbluebutton-apps/build.gradle
bigbluebutton-apps/src/main/java/org/bigbluebutton/red5/pubsub/redis/RedisPubSubMessageHandler.java
bigbluebutton-apps/src/main/webapp/WEB-INF/red5-web.xml
bigbluebutton-client/build.xml
bigbluebutton-client/resources/config.xml.template
bigbluebutton-client/resources/prod/BigBlueButton.html
bigbluebutton-client/src/org/bigbluebutton/common/Images.as
bigbluebutton-client/src/org/bigbluebutton/main/maps/ApplicationEventMap.mxml
bigbluebutton-client/src/org/bigbluebutton/main/model/users/Conference.as
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/utils/JavaCheck.as
bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as
bigbluebutton-web/build.gradle
bigbluebutton-web/grails-app/conf/spring/resources.xml
bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy
bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java
bigbluebutton-web/src/java/org/bigbluebutton/api/domain/Meeting.java
bigbluebutton-web/src/java/org/bigbluebutton/api/messaging/MeetingMessageHandler.java
bigbluebutton-web/src/java/org/bigbluebutton/api/messaging/RedisMessagingService.java
record-and-playback/core/scripts/bigbluebutton.yml
2016-05-16 11:35:36 -04:00
Richard Alam
7ae9b7b204
Merge branch 'merge-webrtc-ds' of https://github.com/antobinary/bigbluebutton into antobinary-merge-webrtc-ds
...
Conflicts:
akka-bbb-apps/build.sbt
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/UsersApp.scala
akka-bbb-fsesl/build.sbt
akka-bbb-fsesl/src/main/java/org/bigbluebutton/freeswitch/voice/freeswitch/ESLEventListener.java
akka-bbb-fsesl/src/main/scala/org/bigbluebutton/freeswitch/VoiceConferenceService.scala
bbb-common-message/build.sbt
bbb-common-message/src/main/java/org/bigbluebutton/common/messages/Constants.java
bbb-common-message/src/main/java/org/bigbluebutton/common/messages/Util.java
bigbluebutton-apps/build.gradle
bigbluebutton-web/grails-app/conf/spring/resources.xml
bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java
2016-05-20 20:27:52 +00:00
Leonardo Crauss Daronco
da07d4513f
Merge remote-tracking branch 'upstream/master' into responsive-playback
2016-05-18 17:19:44 -03:00
Anton Georgiev
c2e6fb9a72
undo some of the webrtc ds record changes
2016-05-18 17:34:30 +00:00
Anton Georgiev
92d6351c55
undo some of the webrtc ds record changes
2016-05-18 17:21:15 +00:00
Anton Georgiev
228dfb4061
Merge branch 'mod-verto-1' of github.com:antobinary/bigbluebutton into merge-webrtc-ds
...
Conflicts:
akka-bbb-apps/build.sbt
akka-bbb-apps/src/main/resources/application.conf
akka-bbb-apps/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/MessageSenderActor.scala
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/UsersApp.scala
akka-bbb-fsesl/build.sbt
bbb-common-message/build.sbt
bbb-fsesl-client/build.sbt
bbb-fsesl-client/src/main/java/org/freeswitch/esl/client/inbound/Client.java
bigbluebutton-apps/build.gradle
bigbluebutton-client/build.xml
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/utils/BrowserCheck.as
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/utils/JavaCheck.as
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/view/components/DesktopPublishWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as
bigbluebutton-html5/app/client/NotificationControl.coffee
bigbluebutton-html5/app/client/globals.coffee
bigbluebutton-html5/app/client/lib/bbb_api_bridge.coffee
bigbluebutton-html5/app/client/main.coffee
bigbluebutton-html5/app/client/main.html
bigbluebutton-html5/app/client/stylesheets/whiteboard.less
bigbluebutton-html5/app/client/views/chat/chat_bar.coffee
bigbluebutton-html5/app/client/views/modals/settings.coffee
bigbluebutton-html5/app/client/views/modals/settings.html
bigbluebutton-html5/app/client/views/users/user_item.coffee
bigbluebutton-html5/app/client/views/whiteboard/whiteboard.coffee
bigbluebutton-html5/app/client/views/whiteboard/whiteboard.html
bigbluebutton-html5/app/collections/collections.coffee
bigbluebutton-html5/app/config.coffee
bigbluebutton-html5/app/lib/router.coffee
bigbluebutton-html5/app/server/collection_methods/meetings.coffee
bigbluebutton-html5/app/server/collection_methods/users.coffee
bigbluebutton-html5/app/server/publish.coffee
bigbluebutton-html5/app/server/server.coffee
bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java
record-and-playback/presentation/scripts/process/presentation.rb
record-and-playback/presentation/scripts/publish/presentation.rb
2016-05-18 15:14:04 +00:00
Leonardo Crauss Daronco
427a288dfe
Fix clicks on the thumbnails in the playback page
...
Wasn't binding to events in the proper order, causing cliks in a thumbnail
not to behave properly.
2016-04-29 16:11:48 -04:00
Leonardo Crauss Daronco
0d5bda9d73
Improve playback buttons and update colors in the playback page
...
Bigger and more well spaced buttons, specially in small screens.
Also updated the colors to match the latest design definitions.
2016-04-29 15:59:45 -04:00
Leonardo Crauss Daronco
af27a69ef8
Fix playback of recordings not loading on firefox mobile
...
The event "loadeddata" is only triggered on firefox mobile once the
video/audio is played, so it requires the user to click on the play button
for it to be triggered.
The playback page was waiting for the event to be triggered before
removing the "loading" page, and that would never happen on firefox mobile.
Now we don't wait anymore for the video to be loaded, we just wait for
the slides and the initial setup.
2016-04-28 18:55:09 -04:00
Leonardo Crauss Daronco
6094c8ceee
Stack recording playback components when in portrait mode
2016-04-28 14:35:47 -04:00
Leonardo Crauss Daronco
2b20824b99
Small fix/protection in the js of the playback page
2016-04-28 10:36:39 -04:00
Leonardo Crauss Daronco
f35c010864
Fix the slide size on video/presentation swap in a paused playback
...
Resize the slides after swapping presentation and video, so that it fits
the new region properly.
2016-04-27 16:20:31 -04:00
Leonardo Crauss Daronco
488734abc1
Add protections to the js and improve the swap in the playback page
...
When swapping video and presentation now the presentation is updated
properly, before it would not show any slide until there was a slide
change.
Also added a few protections to prevent js code from breaking.
2016-04-27 15:53:39 -04:00
Leonardo Crauss Daronco
b55a7c4ad5
Show BigBlueButton's logo in the playback page as bg when loaded
2016-04-27 11:13:36 -04:00
Leonardo Crauss Daronco
1a3b5381d4
Fix pan and zoom in the responsive playback page
...
When pan/zoom was done, the image would zoom and move inside the svg, that
occupied a larger area than the viewbox we wanted to show.
Had to control the size of the container that has the svg via javascript,
to make it exactly the size we want to display the presentations and with
this crop all parts of the presentation that lie outside the container.
2016-04-27 10:46:29 -04:00
Leonardo Crauss Daronco
a3afed36fe
Better visual for copyright and chat in the playback page
...
Small changes in text formatting and positioning.
2016-04-26 19:04:27 -04:00
Leonardo Crauss Daronco
2778768521
Fix cursor position in the playback page when the sidebar is open
...
The cursor was being moved to the right more than it should when the
sidebar was opened.
2016-04-26 17:58:54 -04:00
Leonardo Crauss Daronco
7fb5b134db
Fix recording playback layout when there's no video
2016-04-26 17:53:11 -04:00
Leonardo Crauss Daronco
eb1940d4e3
Set the meeting name as title in the recording playback page
2016-04-26 17:14:41 -04:00
Leonardo Crauss Daronco
327a63bd9f
Move the copyright msg to the bottom in the rec playback page
...
And some small improvements in the thumbnails.
2016-04-26 16:36:37 -04:00
Leonardo Crauss Daronco
59842c7134
Add thumbnails to the responsive recording playback page
2016-04-26 16:18:42 -04:00
Leonardo Crauss Daronco
f0b511baf5
Fix cursor positioning in the recording playback page
...
Wasn't being shown after the page was made responsive. Now it shows up
in the correct place and disappears when not necessary.
2016-04-26 14:03:24 -04:00
Leonardo Crauss Daronco
af5e9fc2d5
Better and more consistent rec playback layout for small/large screens
2016-04-25 18:24:56 -04:00
Calvin Walton
b50a3020b1
Caption: Handle forced line break directly after wrap correctly.
...
When the next line break after a wrap induced due to line length was a
hard line break, the hard line break would override the soft line break,
resulting in over-long lines, and the last word would be repeated on the
last line.
Move the hard break code into an else branch so it's only applied if we
haven't already done a word wrap on this line.
2016-04-04 16:11:48 -04:00
Calvin Walton
4ebe2e7773
presentation format: Generate vtt caption files
2016-04-04 16:11:48 -04:00
Calvin Walton
0babcc195b
Update gen_webvtt to list correct deps for ubuntu 14.04
2016-04-04 16:08:10 -04:00
Calvin Walton
b559b4d9d6
Add a tool to generate webvtt files from caption events
2016-04-04 16:08:10 -04:00
Richard Alam
7d5c9d63e4
Upgrade to Java 8
...
Upgrade to Java 8 and merge screenshare feature.
Conflicts:
bigbluebutton-client/.actionScriptProperties
2016-03-21 20:19:48 +00:00
Felipe Cecagno
c818cd154b
Merge remote-tracking branch 'bigbluebutton/master' into mconf
2016-03-09 12:05:32 -03:00
Calvin Walton
0f9b36bc11
recording: Escape custom poll answers in gnuplot file
...
Custom poll answers were previously printed into the gnuplot control
file directly, between double-quotes. As a result, if a poll answer
contains a double-quote, it could cause a syntax error in the gnuplot
script, or worse.
Gnuplot accepts standard C-style double-quoted string escapes, so I can
just use ruby's "inspect" method to generate a safetly escaped string.
Note that within the string, % still has to be escaped separately
(doubled) to avoid issues with the string formatting. As well, I have
disabled "enhanced" mode which allows using special characters for
formatting commands.
Fixes #3039
2016-03-07 11:26:17 -05:00
Anton Georgiev
a0aebf3cdc
Merge branch 'screenshare-with-cursor-capture' of github.com:ritzalam/bigbluebutton
2016-03-05 16:50:13 +00:00
Felipe Cecagno
bbcfe1f34a
Merge remote-tracking branch 'bigbluebutton/master' into mconf
...
Conflicts:
bigbluebutton-html5/app/client/globals.js
bigbluebutton-html5/app/client/main.html
bigbluebutton-html5/app/client/views/whiteboard/whiteboard.html
2016-03-04 20:19:55 -03:00
RafaFP
89ac2fd60a
Improved the code to meet the peer review results.
...
refs #1931
2016-03-04 17:40:48 +00:00
Calvin Walton
3a3d349553
recording: Restore the $meeting_start/end global variables
...
These were commented out, apparently by accident, when the metadata code
was being refactored. The effect was that the $meeting_end variable was
treated as if it had a value of zero, meaning that the last slide had a
start time of some positive number and an end time of zero. As a result,
it was never shown (and didn't get any shapes either).
Fixes #3021
2016-03-03 11:27:28 -05:00
RafaFP
932de9c07f
Updated class and method names to better correspond to the implemented function.
...
Improved the recording code.
refs #1931
2016-03-02 16:02:30 +00:00
Felipe Cecagno
e4da408c08
Merge branch 'mconf' into bigbluebutton/bigbluebutton@master
...
Conflicts:
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/UsersApp.scala
bigbluebutton-apps/src/main/java/org/bigbluebutton/red5/service/PresentationService.java
bigbluebutton-client/locale/en_US/bbbResources.properties
bigbluebutton-client/resources/prod/bbb-deskshare-applet-0.9.0.jar
bigbluebutton-client/resources/prod/bbb-deskshare-applet-unsigned-0.9.0.jar
bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/layout/services/MessageReceiver.as
bigbluebutton-client/src/org/bigbluebutton/modules/users/views/StatusItemRenderer.mxml
bigbluebutton-config/web/index.html
bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy
bigbluebutton-web/src/groovy/org/bigbluebutton/api/RecordingServiceHelperImp.groovy
bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java
bigbluebutton-web/src/java/org/bigbluebutton/api/ParamsProcessorUtil.java
bigbluebutton-web/src/java/org/bigbluebutton/api/RecordingService.java
bigbluebutton-web/src/java/org/bigbluebutton/api/RecordingServiceHelper.java
bigbluebutton-web/src/java/org/bigbluebutton/api/domain/Recording.java
bigbluebutton-web/web-app/WEB-INF/freemarker/get-recordings.ftl
record-and-playback/presentation/playback/presentation/0.9.0/playback.html
record-and-playback/presentation/scripts/publish/presentation.rb
2016-03-02 01:19:09 -03:00
RafaFP
32f937def8
Implemented the clearing of text in the recordings player.
...
Recordings will now clear the chat box for every clear command received during the recording.
refs #1931
2016-02-26 21:18:14 +00:00
Richard Alam
95c043860b
- add archiving of new screenshare
2016-02-25 17:59:29 +00:00
jfederico
503b748b22
record-and-playback: Placed code for producing the initial metadata.xml file at the top
2016-02-12 12:08:33 -05:00
jfederico
0c2eaf5f11
record-and-playback: Fixed bug in original state of recordings.
2016-02-09 17:26:29 -05:00
Richard Alam
c31857b9da
Merge pull request #3001 from bigbluebutton/getRecordings-merged-enhancements
...
Get recordings merged enhancements
2016-02-04 17:01:03 -05:00
Fred Dixon
b9c6c62810
Added <meta charset=utf-8 /> to playback.html Fixes #2975
2016-01-30 19:46:58 -05:00
jfederico
c9abb24a06
record-and-playback: Formatted xml produced for metadata.xml after adding playback
2016-01-28 10:13:45 -05:00
jfederico
983e58922e
record-and-playback: metadata.xml is generated by process script instead of publish
2016-01-26 17:16:28 -05:00
jfederico
1204ae9f2a
recording-and-playback: Added initial metadata.xml as part of the processing
2016-01-26 14:25:02 -05:00
jfederico
371557ecb4
recording-and-playback: Added directory to be cleaned up for deleted status
2016-01-19 14:57:30 -05:00
jfederico
8e3c0ea983
recording-and-playback: Changed initial state on recording metadata.xml to published
2016-01-19 14:53:33 -05:00
jfederico
8bc75ab2f6
recording-and-playback: Converted tabs to spaces on presentation/scripts/* and core/scripts/*
...
Signed-off-by: jfederico <jesus@123it.ca>
2016-01-19 14:52:28 -05:00
Felipe Cecagno
019cfa6cfb
Merge remote-tracking branch 'mconf/mconf-live0.7.3' into mconf
...
Conflicts:
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/BigBlueButtonActor.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/CollectorActor.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/MeetingActor.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/freeswitch/FreeswitchConferenceActor.scala
bigbluebutton-client/branding/default/style/css/BBBDefault.css
bigbluebutton-client/resources/prod/bbb-deskshare-applet-0.9.0.jar
bigbluebutton-client/resources/prod/lib/bbb_webrtc_bridge_sip.js
bigbluebutton-client/src/org/bigbluebutton/main/views/RecordButton.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/sharednotes/views/components/CustomRichTextEditor.as
2016-01-04 15:14:27 -02:00
Felipe Cecagno
8f08e13dcc
Merge remote-tracking branch 'bigbluebutton/master' into mconf
...
Conflicts:
bigbluebutton-apps/src/main/java/org/bigbluebutton/red5/client/messaging/ConnectionInvokerService.java
bigbluebutton-client/locale/pt_BR/bbbResources.properties
bigbluebutton-client/resources/prod/lib/bbb_webrtc_bridge_sip.js
2015-12-30 18:35:13 -02:00
Felipe Cecagno
de75b79eab
changed the method of pack and unpack the encrypted format, from zip to tar, and making it by an external command instead of doing it in ruby (more efficient)
2015-12-15 16:45:22 -02:00
Anton Georgiev
7bf1d4ce8c
Merge branch 'master' of github.com:bigbluebutton/bigbluebutton into webrtc-desktop-temp-3
...
Conflicts:
record-and-playback/core/scripts/bigbluebutton.yml
2015-11-30 21:44:04 +00:00
Felipe Cecagno
555e037d79
fix merge and refactor a few pieces to fit better on BigBlueButton 1.0.0
2015-11-30 01:06:38 -02:00
Pedro Beschorner Marin
36bbcc06d6
Merge remote-tracking branch 'mconf/mconf-live0.7.3' into mconf-live0.7.3-merge
...
Conflicts:
akka-bbb-apps/src/main/java/org/bigbluebutton/core/api/IBigBlueButtonInGW.java
akka-bbb-apps/src/main/java/org/bigbluebutton/core/pubsub/receivers/ConversionUpdatesProcessor.java
akka-bbb-apps/src/main/java/org/bigbluebutton/core/pubsub/receivers/MeetingMessageReceiver.java
akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/PesentationMessageToJsonConverter.scala
bbb-common-message/src/main/java/org/bigbluebutton/common/messages/Constants.java
bbb-video/.classpath
bbb-video/build.gradle
bbb-video/src/main/java/org/bigbluebutton/app/video/VideoApplication.java
bbb-video/src/main/webapp/WEB-INF/red5-web.xml
bigbluebutton-apps/src/main/java/org/bigbluebutton/conference/meeting/messaging/red5/ConnectionInvokerService.java
bigbluebutton-apps/src/main/java/org/bigbluebutton/conference/service/participants/ParticipantsApplication.java
bigbluebutton-apps/src/main/java/org/bigbluebutton/conference/service/participants/ParticipantsListener.java
bigbluebutton-apps/src/main/java/org/bigbluebutton/conference/service/presentation/PresentationMessageListener.java
bigbluebutton-apps/src/main/java/org/bigbluebutton/red5/BigBlueButtonApplication.java
bigbluebutton-apps/src/main/java/org/bigbluebutton/red5/service/ParticipantsService.java
bigbluebutton-apps/src/main/java/org/bigbluebutton/red5/service/PresentationApplication.java
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/BigBlueButtonInGW.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/CollectorActor.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/MeetingActor.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/api/Constants.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/api/InMessages.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/api/MessageNames.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/api/OutMessages.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/api/ValueObjects.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/layout/LayoutApp.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/PresentationModel.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/red5/PresentationClientMessageSender.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersModel.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/red5/UsersClientMessageSender.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/redis/UsersEventRedisPublisher.scala
bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/redis/UsersMessageToJsonConverter.scala
bigbluebutton-apps/src/main/webapp/WEB-INF/red5-web.xml
bigbluebutton-client/branding/default/style/css/BBBDefault.css
bigbluebutton-client/locale/en_US/bbbResources.properties
bigbluebutton-client/locale/es_LA/bbbResources.properties
bigbluebutton-client/resources/config.xml.template
bigbluebutton-client/resources/prod/MconfLive.html
bigbluebutton-client/resources/prod/bbb-deskshare-applet-0.9.0.jar
bigbluebutton-client/resources/prod/bbb-deskshare-applet-unsigned-0.9.0.jar
bigbluebutton-client/src/BigBlueButton.mxml
bigbluebutton-client/src/SharedNotesModule.mxml
bigbluebutton-client/src/org/bigbluebutton/common/Images.as
bigbluebutton-client/src/org/bigbluebutton/core/managers/ReconnectionManager.as
bigbluebutton-client/src/org/bigbluebutton/core/model/Config.as
bigbluebutton-client/src/org/bigbluebutton/core/services/BandwidthMonitor.as
bigbluebutton-client/src/org/bigbluebutton/core/services/StreamMonitor.as
bigbluebutton-client/src/org/bigbluebutton/main/api/ExternalApiCallbacks.as
bigbluebutton-client/src/org/bigbluebutton/main/model/NetworkStatsData.as
bigbluebutton-client/src/org/bigbluebutton/main/model/modules/ModulesDispatcher.as
bigbluebutton-client/src/org/bigbluebutton/main/model/users/BBBUser.as
bigbluebutton-client/src/org/bigbluebutton/main/model/users/Conference.as
bigbluebutton-client/src/org/bigbluebutton/main/model/users/NetConnectionDelegate.as
bigbluebutton-client/src/org/bigbluebutton/main/model/users/UserService.as
bigbluebutton-client/src/org/bigbluebutton/main/model/users/events/ChangeMyRole.as
bigbluebutton-client/src/org/bigbluebutton/main/model/users/events/ChangeRoleEvent.as
bigbluebutton-client/src/org/bigbluebutton/main/model/users/events/LowerHandEvent.as
bigbluebutton-client/src/org/bigbluebutton/main/model/users/events/StreamStoppedEvent.as
bigbluebutton-client/src/org/bigbluebutton/main/views/CameraDisplaySettings.mxml
bigbluebutton-client/src/org/bigbluebutton/main/views/LanguageSelector.mxml
bigbluebutton-client/src/org/bigbluebutton/main/views/LoggedOutWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml
bigbluebutton-client/src/org/bigbluebutton/main/views/MainToolbar.mxml
bigbluebutton-client/src/org/bigbluebutton/main/views/MuteMeButton.mxml
bigbluebutton-client/src/org/bigbluebutton/main/views/NetworkStatsWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/main/views/RecordButton.mxml
bigbluebutton-client/src/org/bigbluebutton/main/views/WebRTCEchoTest.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/AddChatTabBox.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatBox.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatView.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/services/red5/Connection.as
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/view/components/DesktopPublishWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/deskshare/view/components/DesktopViewWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/layout/managers/LayoutManager.as
bigbluebutton-client/src/org/bigbluebutton/modules/layout/maps/LayoutEventMapDelegate.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/layout/model/LayoutDefinition.as
bigbluebutton-client/src/org/bigbluebutton/modules/layout/model/WindowLayout.as
bigbluebutton-client/src/org/bigbluebutton/modules/layout/views/AddButton.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/layout/views/LayoutsCombo.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/layout/views/ToolbarComponent.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/phone/managers/ConnectionManager.as
bigbluebutton-client/src/org/bigbluebutton/modules/phone/managers/FlashCallManager.as
bigbluebutton-client/src/org/bigbluebutton/modules/phone/managers/WebRTCCallManager.as
bigbluebutton-client/src/org/bigbluebutton/modules/phone/views/components/ToolbarButton.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/present/managers/PresentManager.as
bigbluebutton-client/src/org/bigbluebutton/modules/present/ui/views/PresentationWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/present/ui/views/UploadedPresentationRenderer.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/sharednotes/infrastructure/Client.as
bigbluebutton-client/src/org/bigbluebutton/modules/sharednotes/infrastructure/HTTPServerConnection.as
bigbluebutton-client/src/org/bigbluebutton/modules/sharednotes/infrastructure/ServerConnection.as
bigbluebutton-client/src/org/bigbluebutton/modules/sharednotes/infrastructure/XMLServerConnection.as
bigbluebutton-client/src/org/bigbluebutton/modules/users/maps/UsersMainEventMap.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as
bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageSender.as
bigbluebutton-client/src/org/bigbluebutton/modules/users/views/StatusItemRenderer.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/users/views/UsersWindow.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/business/VideoProxy.as
bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMap.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMapDelegate.as
bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/GraphicsWrapper.as
bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/ToolbarPopupButton.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/VideoDock.mxml
bigbluebutton-client/src/org/bigbluebutton/modules/whiteboard/views/WhiteboardToolbar.mxml
bigbluebutton-client/src/org/bigbluebutton/util/i18n/ResourceUtil.as
bigbluebutton-config/bigbluebutton-release
bigbluebutton-config/bin/bbb-conf
bigbluebutton-config/web/index.html
bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy
bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/PresentationController.groovy
bigbluebutton-web/src/groovy/org/bigbluebutton/api/RecordingServiceHelperImp.groovy
bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java
bigbluebutton-web/src/java/org/bigbluebutton/api/messaging/MeetingMessageHandler.java
bigbluebutton-web/src/java/org/bigbluebutton/api/messaging/MessagingService.java
bigbluebutton-web/src/java/org/bigbluebutton/api/messaging/RedisStorageService.java
bigbluebutton-web/src/java/org/bigbluebutton/presentation/imp/Pdf2SwfPageConverter.java
2015-11-25 15:58:36 +00:00
Leonardo Crauss Daronco
234843b422
Better volume slider in the media player in the playback page
2015-11-20 15:00:23 -02:00
Leonardo Crauss Daronco
a640426de3
Better swap of presentation/video and spinner in the playback page
...
Now it keeps playing if it was playing before and shows the current slide
properly.
2015-11-20 14:22:08 -02:00
Leonardo Crauss Daronco
3bc61690c3
Better style for the video player in the playback page, cleanup css
2015-11-19 10:54:43 -02:00
Leonardo Crauss Daronco
c2de1cab07
Finished thhe new presentation/video swap in the playback page
...
Now it's done in the application and positioning is not hard-coded
inside acorn player, so it works in a responsive page.
Still not 100%, the playback jumps back and pauses on swap. Have to
make the transition seamless.
2015-11-19 10:18:23 -02:00
Leonardo Crauss Daronco
8bbaf8a13f
Move css/bbb-playback2.css to playback.css
2015-11-18 17:42:47 -02:00
Leonardo Crauss Daronco
32986bc6f9
First version of a responsive playback page for recordings
...
Includes a custom theme for acorn media player.
Uses the Foundation framework, version 5.5.3
2015-11-18 17:28:52 -02:00
Calvin Walton
fc299487e4
recording: Allow configuring recording metadata to use https
...
This allows configuring a server to use https without having to edit
any ruby files directly.
(Ideally, the metadata files wouldn't include the server name/protocol
at all; that should be set dynamically by bbb-web, but this is what we
have for now.)
2015-11-06 11:49:36 -05:00
Calvin Walton
39cc6a80a6
recording: Use relative url for loading presentation data
...
This fixes loading the shapes svg, and the events and cursor xml files
on servers configured with https support. (Otherwise they'll be loaded
off http:// and trigger mixed-content errors).
2015-11-06 11:49:31 -05:00
Felipe Cecagno
7a182e67b6
Merge branch 'feature-1734' into mconf-live0.7.3 (refs #1734 )
2015-10-23 12:47:08 -02:00
Felipe Cecagno
c3c4a9c64c
extracted the custom hash class to a different file, loaded by recordandplayback.rb; removed the hardcoded path to /var/bigbluebutton/published/presentation because it can change, and it's always different depending on the playback format (refs #1734 )
2015-10-23 12:46:26 -02:00
Anton Georgiev
8e407df405
Merge branch 'master' of github.com:bigbluebutton/bigbluebutton into webrtc-desktop-temp-1
...
Conflicts:
akka-bbb-apps/build.sbt
akka-bbb-fsesl/build.sbt
bbb-common-message/build.sbt
bigbluebutton-apps/build.gradle
2015-10-22 20:46:30 +00:00
Felipe Cecagno
f9eaa32a12
publish recording immediately after the process phase, before processing other recordings; fix step_succeeded vs. phase_succeeded
2015-10-19 17:40:30 -02:00
Felipe Cecagno
c4ff37e292
fixed recording size inclusion when processing presentation_export
2015-10-19 17:39:26 -02:00
Felipe Cecagno
83ae244485
Merge branch 'mconf-live0.7.1-ssl' into mconf-live0.7.3
2015-10-19 11:49:36 -02:00
Felipe Cecagno
7069a4a6d7
Recording: Also tell ffmpeg to ignore the length of the intermediate wav file
2015-10-16 14:09:32 -04:00
Felipe Cecagno
762d1e9a56
another patch to fix the long wav files problem
2015-10-16 14:53:20 -03:00
Calvin Walton
fe8cf13b11
Convert audio_size to a number before subtracting header size
2015-10-15 15:11:45 -03:00
Calvin Walton
43e943d61d
Need to convert bit_rate to an integer
2015-10-15 15:11:44 -03:00
Calvin Walton
30e6a98a8b
Fix some reference errors in wav detection
2015-10-15 15:11:44 -03:00
Calvin Walton
8332daf093
record-and-playback: Handle FreeSWITCH wav files >4GB
...
FreeSWITCH writes wav files >4GB long with incorrect values in the length
field in the header. Recalculate the length based on file size, and ensure
that ffmpeg reads the complete audio file rather than stopping.
2015-10-15 15:11:44 -03:00
Anton Georgiev
f08cd5262e
temp changes
2015-10-13 19:00:50 +00:00
Anton Georgiev
6b8626d40f
cleaning up and reverting unnecessary config
2015-09-29 16:03:40 +00:00
Anton Georgiev
1d1c8a421b
deskshare edl for webrtc
2015-09-28 20:49:24 +00:00
Calvin Walton
a6d6001040
Convert audio_size to a number before subtracting header size
2015-09-25 14:11:25 -04:00
Calvin Walton
d44b458b49
Need to convert bit_rate to an integer
2015-09-25 14:08:17 -04:00
Anton Georgiev
366b01fff7
webrtc deskshare work on recording scripts
2015-09-25 18:05:54 +00:00
Calvin Walton
530799776d
Fix some reference errors in wav detection
2015-09-25 14:01:30 -04:00
Calvin Walton
1dcd49e180
record-and-playback: Handle FreeSWITCH wav files >4GB
...
FreeSWITCH writes wav files >4GB long with incorrect values in the length
field in the header. Recalculate the length based on file size, and ensure
that ffmpeg reads the complete audio file rather than stopping.
2015-09-24 15:54:20 -04:00
RafaFP
0284ee0048
Latest version of the implementation of the feature #1734 .
...
Data on Playback, Metadata and Download are now present on the publish_ended event.
If the related content is absent it will be returned empty, if otherwise present all child tags and data will be presented.
refs 1734
2015-09-14 15:55:06 +00:00
RafaFP
4325e98bf2
Implemented the code to add the "playback", "meta" and "download" tags from the XML to the publish_ended.
...
Added code to guarantee that a hash is passed even when the tags do not exist in the XML.
#feature 1734
2015-09-11 21:12:09 +00:00
RafaFP
2a85811d40
Implemented hash data gathering dinamically, still have to use TRY to catch the nil exception.
...
If the hash is nil the publish_ended post is skipped.
Must validate the tag values and add the download tag.
2015-09-11 18:20:47 +00:00
Felipe Cecagno
ed366e6b21
Merge branch '090-recordings-size' into mconf-live0.7.3
...
Conflicts:
bigbluebutton-web/src/java/org/bigbluebutton/api/MeetingService.java
bigbluebutton-web/src/java/org/bigbluebutton/api/domain/Recording.java
2015-09-08 17:43:20 -03:00
Felipe Cecagno
32957898f6
refactored part of the bbb-0.9-recording-size code in order to include the size on the download size for mconf_encrypted and the playback size for the others; included raw_size for all available formats
2015-09-08 17:18:02 -03:00
RafaFP
eb1b5aee49
Included playback data to the event of "publish_ended"
...
#refs 1734
2015-09-01 16:13:10 +00:00
RafaFP
8602d3c263
Added the link and duration info to the publish_ended event.
...
#refs 1734
2015-08-31 20:29:00 +00:00
Calvin Walton
cc23f30c2b
Fix poll in recording when there are 0 responders
...
There were a couple of problems:
* A division by 0 when calculating the percentages
* Positioning of the number of results counter was incorrect
Fixes #2739
2015-08-24 14:42:31 -04:00
Fred Dixon
c99da48041
Removed uneeded script
2015-08-13 17:32:03 -04:00
Calvin Walton
e3e0f0ef61
Add poll result display to the 'presentation' recording format
...
Note that this requires a new dependency be added to the
"bbb-playback-presentation" format; the "gnuplot" package is now
required (it's used to actually generate the chart images)
2015-08-11 14:55:59 -04:00
Felipe Cecagno
3e567f4493
Merge branch '090-encrypted-recording' into mconf-live0.7.0
2015-07-18 10:47:59 -03:00
Felipe Cecagno
31a67490d2
changed permissions over mconf-recording-decrypter, so we can run it
2015-07-18 10:37:10 -03:00
Felipe Cecagno
eef0398885
changing permissions over bbb-0.9-recording-size, which is now executable
2015-07-15 17:16:04 -03:00
Felipe Cecagno
5e326b7528
do not create a copy of the raw data to create the mconf_encrypted format, just use the data from the raw dir directly
2015-07-04 17:02:50 -03:00
Felipe Cecagno
6929b4817e
fix the condition for mconf-decrypter job to process an encrypted recording
...
because of the wrong condition, mconf-decrypter was reprocessing all the recordings available
2015-07-04 17:02:03 -03:00
Pedro Beschorner Marin
60a1ae6436
Cleanup
2015-06-10 17:14:14 +00:00