Jibri: Recording failed to start

Hello Jibri expert,
I’m not able satart jibir recording, I got the error below can you please help me solve this issue?

Any hints/suggestions to fix this? Please help. Thanks in advance!


2020-06-03 15:40:28.052 INFO: [270] org.jitsi.jibri.api.xmpp.XmppApi.handleJibriIq() Received JibriIq <iq to='jibri@auth.mydomaine.duckdns.org/LFgrkWaR' from='jibribrewery@internal.auth.mydomaine.duckdns.org/focus' id='amlicmlAYXV0aC56YXJhbWVldC5kdWNrZG5zLm9yZy9MRmdya1dhUgB6Qzg0ay0xODQzAM66gJfXfX+5eBLvNcnuaPk=' type='set'><jibri xmlns='http://jitsi.org/protocol/jibri' action='start' recording_mode='file' room='test@conference.mydomaine.duckdns.org' session_id='fjbzicrpjyzzgimr' app_data='{"file_recording_metadata":{"share":true}}'/></iq> from environment [MucClient id=mydomaine.duckdns.org hostname=mydomaine.duckdns.org]
2020-06-03 15:40:28.052 INFO: [270] org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq() Received start request
2020-06-03 15:40:28.052 INFO: [270] org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq() Sending 'pending' response to start IQ
2020-06-03 15:40:28.053 INFO: [271] org.jitsi.jibri.api.xmpp.XmppApi.run() Starting service
2020-06-03 15:40:28.060 INFO: [271] org.jitsi.jibri.api.xmpp.XmppApi.handleStartService() Parsed call url info: CallUrlInfo(baseUrl=https://mydomaine.duckdns.org, callName=test, urlParams=[])
2020-06-03 15:40:28.060 INFO: [271] org.jitsi.jibri.JibriManager.startFileRecording() Starting a file recording with params: FileRecordingRequestParams(callParams=CallParams(callUrlInfo=CallUrlInfo(baseUrl=https://mydomaine.duckdns.org, callName=test, urlParams=[])), sessionId=fjbzicrpjyzzgimr, callLoginParams=XmppCredentials(domain=recorder.mydomaine.duckdns.org, username=recorder, password=RecordersPass)) finalize script path: /path/to/finalize_recording.sh and recordings directory: /srv/recordings
2020-06-03 15:40:48.064 SEVERE: [271] org.jitsi.jibri.api.xmpp.XmppApi.run() Error starting Jibri service : org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start.
Build info: version: 'unknown', revision: 'unknown', time: 'unknown'
System info: host: 'jibri.mydomaine.duckdns.org', ip: '', os.name: 'Linux', os.arch: 'amd64', os.version: '4.4.0-142-generic', java.version: '1.8.0_252'
Driver info: driver.version: ChromeDriver with stack: 

here the pop up message:


Have you got this resolved… I am having the same problem.

Welcome to the forum.

What problem exactly are you having? Can you share your jibri.conf file?

Hi Freddie, thanks for getting back to me so quickly. We can put this one on hold for the time being, I am in the process of rebuilding, and then will try again…

Thanks again.

Was the issue resolved? I’m getting a similar error msg

No, just done a full rebuild and the error is still there…

Just realised I do not have a jibri conf file… i am on an ubuntu server Not sure if I need to have a jibri file actually.

Check google-chrome and chromedriver versions. They should be on same version or chrome should be latest.

And also jibri.conf, new format is needed.

Hi Prashant… thanks so much for getting back to me… I have the latest drivers I believe. and this is jibri.conf file.
jibri {
// A unique identifier for this Jibri
// TODO: eventually this will be required with no default
id = “”
// Whether or not Jibri should return to idle state after handling
// (successfully or unsuccessfully) a request. A value of ‘true’
// here means that a Jibri will NOT return back to the IDLE state
// and will need to be restarted in order to be used again.
single-use-mode = false
api {
http {
external-api-port = 2222
internal-api-port = 3333
xmpp {
// See example_xmpp_envs.conf for an example of what is expected here
environments = [
name = “prod environment”
xmpp-server-hosts = [“klwvid.com”]
xmpp-domain = “klwvid.com

            control-muc {
                domain = "internal.auth.klwvid.com"
                room-name = "JibriBrewery"
                nickname = "jibri-nickname"

            control-login {
                domain = "auth.klwvid.com"
                username = "jibri"
                password = "JPwd"

            call-login {
                domain = "recorder.klwvid.com"
                username = "recorder"
                password = "RPwd"

            strip-from-room-domain = "conference."
            usage-timeout = 0
            trust-all-xmpp-certs = true

recording {
recordings-directory = “/srv/recordings”
# TODO: make this an optional param and remove the default
finalize-script = “/path/to/finalize_recording.sh”
streaming {
// A list of regex patterns for allowed RTMP URLs. The RTMP URL used
// when starting a stream must match at least one of the patterns in
// this list.
rtmp-allow-list = [
// By default, all services are allowed
chrome {
// The flags which will be passed to chromium when launching
flags = [
stats {
enable-stats-d = true
webhook {
// A list of subscribers interested in receiving webhook events
subscribers =
jwt-info {
// The path to a .pem file which will be used to sign JWT tokens used in webhook
// requests. If not set, no JWT will be added to webhook requests.
# signing-key-path = “/path/to/key.pem”

// The kid to use as part of the JWT
# kid = "key-id"

// The issuer of the JWT
# issuer = "issuer"

// The audience of the JWT
# audience = "audience"

// The TTL of each generated JWT.  Can't be less than 10 minutes.
# ttl = 1 hour

call-status-checks {
// If all clients have their audio and video muted and if Jibri does not
// detect any data stream (audio or video) comming in, it will stop
// recording after NO_MEDIA_TIMEOUT expires.
no-media-timeout = 30 seconds

// If all clients have their audio and video muted, Jibri consideres this
// as an empty call and stops the recording after ALL_MUTED_TIMEOUT expires.
all-muted-timeout = 10 minutes

// When detecting if a call is empty, Jibri takes into consideration for how
// long the call has been empty already. If it has been empty for more than
// DEFAULT_CALL_EMPTY_TIMEOUT, it will consider it empty and stop the recording.
default-call-empty-timeout = 30 seconds


I did not do that one as I do not have a finalize_recording.sh, well I could not find it.

All is on klwvid.com I do not use any subdomains like meeting.klwvid.com etc.

Config seems good, except there should be some name for Id on line 4.

Post versions of chrome and chrome driver.
Are you using self-signef certs?

Hi Prashanth, yes I use self signed certs

Ok. If you are testing, and are willing to reinstall, can you quickly try with this script

It would take only 5 minutes.

Happy to do… give me a sec

jitsi_ubuntu_setup.sh: 93: Syntax error: “(” unexpected (expecting “}”) I am getting this error…

Strange, it worked for me a few hours ago. Let me quickly check.

Happy to give you root access to the server if you want to have a “play”. Just need to be able to send you the root pwd and details outside the forum…

ChromeDriver 88.0.4324.96

Prashanth… i just send you a pm due to posting limitations for a new usr…

No syntax errors. I think some issue copy pasting.

Please recheck once. There should be 1681 lines.

Better to git clone instead of copy paste.


  1. Download from github
    GitHub - pregalla/jitsi: Installer for Jitsi, Jigasi, and Jibri

  2. setup environment variables
    export MY_FQDN=klwvid.com
    export MY_PUBLIC_IP=your public ip
    export MY_PRIVATE_IP=

  3. Run it
    bash /tmp/jitsi_ubuntu_setup.sh

I’m still wondering how you would get this error.
Will have to see how/why this could happen.

I see no errors in the script.

@KRITI_KASHYAP If you can, try reinstalling with script as mentioned in above messages. It is for installing Jitsi, jigasi and Jibri, all on the same server.