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>
-
layout:
l=media
l=content
l=disabled
-
style: custom style
s=<name>
-
time:
t=HhMmSs
(e.g., 1h10m5s)t=MmSs
t=Ss
-
path:
p=path/to/recordings
-
log:
debug
-
chat:
scroll
: automatic scroll [true
|false
]align
: scroll align [top
|middle
|bottom
]
-
controls:
about
fullscreen
search
section
swap
thumbnails
-
locale:
default
: fallback [ar
|de
|en
|es
|fr
|it
|ja
|pt
|ru
|tr
]
-
shortcuts: alt + shift
fullscreen
:K
section
:L
slides
: skipnext
:ArrowUp
previous
:ArrowDown
swap
:M
thumbnails
:N
video
: seekbackward
:ArrowLeft
forward
:ArrowRight
seconds
: 15
-
styles: custom styles
default
: default styleurl
: styles hostvalid
: valid style names
-
thumbnails:
scroll
: automatic scroll [true
|false
]align
: scroll align [left
|center
|right
]
-
video: primary media configuration
rps
: renders per secondrates
: speed rates
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.
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
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