bbb-playback
bbb-playback copied to clipboard
bbb-playback
Clone this repository, install the dependencies and deploy
git clone https://github.com/bigbluebutton/bbb-playback.git
cd bbb-playback
npm install
./deploy.sh
You will be able to play your recordings using the following URL
https://<domain>/playback/presentation/2.3/<recordId>
URL query strings
-
frequency:
f=<value>: renders per second (e.g., 5)
-
layout:
l=content: focus on contentl=disabled: disabled interactive elementsl=media: focus on medial=swapped: content/media swapped
-
style: custom style
s=<name>
-
time:
t=HhMmSs(e.g., 1h10m5s)t=MmSst=Ss
-
path:
p=path/to/recordings
-
locale:
locale=locale-CODE(e.g., pt-BR)
-
log:
debug
Configuration
-
chat:
scroll: automatic scroll [true|false]align: scroll align [top|middle|bottom]
-
controls:
aboutfullscreensearchsectionswapthumbnails
-
locale:
default: fallback [en]
-
player: primary media configuration
rps: renders per secondrates: speed rates
-
shortcuts: alt + shift
fullscreen:Kplay/pause:Entersection:Lseek:backward:ArrowLeftforward:ArrowRightseconds: 15
skip:next:ArrowUpprevious:ArrowDown
swap:M
-
styles: custom styles
default: default styleurl: styles hostvalid: valid style names
-
thumbnails:
scroll: automatic scroll [true|false]align: scroll align [left|center|right]
Standalone recordings
bbb-playback can be used to create a self-contained recording - a single directory that contains all of the recording media files as well as the playback html and javascript code. To do this, use the following build command:
PUBLIC_URL=. REACT_APP_NO_ROUTER=1 npm run-script build
And then copy all of the files from the bbb-playback build directory and the files from /var/bigbluebutton/published/presentation/<recordid> together into a single directory.
External recordings
bbb-playback can play recordings hosted somewhere other than the default location. To do this, build the bbb-playback with the following options:
REACT_APP_MEDIA_ROOT_URL=/different/relative/path/to/presentation/files npm run-script build
You can also play medias from an external server. Note that you will need to have the Access-Control-Allow-Origin header returned on the medias for that to work.
REACT_APP_MEDIA_ROOT_URL=https://my-media-server.example.com npm run-script build
Playing old recordings
At /etc/bigbluebutton/nginx/presentation.nginx:
- v2.0, v2.1 and v2.2
location /playback/presentation/2.0/playback.html {
return 301 /playback/presentation/2.3/$arg_meetingId?$query_string;
}
- [experimental] v0.9, v1.0 and v1.1
location /playback/presentation/0.9.0/playback.html {
return 301 /playback/presentation/2.3/$arg_meetingId?$query_string;
}
Reload nginx service
sudo systemctl reload nginx