Using Jibri for Recording/Livestreaming across Multiple Meetings

Hi we have a requirement where we have to use jibri for livestreaming across multiple meetings at same time. Is it possible to do so. Can someone explain us how to acheive this criteria?
We got this “All recorders/streamers are busy” error while trying to check if it’s possible in second meeting.
Also We are not getting any error in logs while getting error in livestreaming/recording…
I have attached our ffmpeg log below:
[5:28 pm, 15/11/2021] User: 2021-11-15 11:45:10.448 INFO: [136] ffmpeg.log() Metadata:
2021-11-15 11:45:10.448 INFO: [136] ffmpeg.log() encoder : Lavf57.83.100
2021-11-15 11:45:10.448 INFO: [136] ffmpeg.log() Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p(progressive), 1920x1080, q=-1–1, 30 fps, 15360 tbn, 30 tbc
2021-11-15 11:45:10.448 INFO: [136] ffmpeg.log() Metadata:
2021-11-15 11:45:10.448 INFO: [136] ffmpeg.log() encoder : Lavc57.107.100 libx264
2021-11-15 11:45:10.448 INFO: [136] ffmpeg.log() Side data:
2021-11-15 11:45:10.448 INFO: [136] ffmpeg.log() cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
2021-11-15 11:45:10.448 INFO: [136] ffmpeg.log() Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s
2021-11-15 11:45:10.449 INFO: [136] ffmpeg.log() Metadata:
2021-11-15 11:45:10.449 INFO: [136] ffmpeg.log() encoder : Lavc57.107.100 aac
2021-11-15 11:45:10.449 INFO: [136] ffmpeg.log() frame= 14 fps=0.0 q=21.0 size= 0kB time=00:00:00.44 bitrate= 0.9kbits/s speed=0.866x
2021-11-15 11:45:10.449 INFO: [136] ffmpeg.log() frame= 29 fps= 29 q=21.0 size= 0kB time=00:00:00.95 bitrate= 0.4kbits/s speed=0.941x
2021-11-15 11:45:11.449 INFO: [136] ffmpeg.log() frame= 44 fps= 29 q=21.0 size= 0kB time=00:00:01.46 bitrate= 0.3kbits/s speed=0.965x
2021-11-15 11:45:12.449 INFO: [136] ffmpeg.log() frame= 58 fps= 28 q=21.0 size= 0kB time=00:00:01.90 bitrate= 0.2kbits/s speed=0.934x
2021-11-15 11:45:12.449 INFO: [136] ffmpeg.log() frame= 75 fps= 29 q=21.0 size= 0kB time=00:00:02.48 bitrate= 0.2kbits/s speed=0.977x
2021-11-15 11:45:13.449 INFO: [136] ffmpeg.log() frame= 90 fps= 30 q=21.0 size= 0kB time=00:00:02.99 bitrate= 0.1kbits/s speed=0.983x
2021-11-15 11:45:13.450 INFO: [136] ffmpeg.log() frame= 105 fps= 30 q=21.0 size= 0kB time=00:00:03.48 bitrate= 0.1kbits/s speed=0.98x
2021-11-15 11:45:14.452 INFO: [136] ffmpeg.log() frame= 121 fps= 30 q=18.0 size= 0kB time=00:00:04.00 bitrate= 0.1kbits/s speed=0.982x
2021-11-15 11:45:14.452 INFO: [136] ffmpeg.log() frame= 135 fps= 30 q=21.0 size= 0kB time=00:00:04.46 bitrate= 0.1kbits/s speed=0.977x
2021-11-15 11:45:15.453 INFO: [136] ffmpeg.log() frame= 151 fps= 30 q=21.0 size= 0kB time=00:00:05.01 bitrate= 0.1kbits/s speed=0.989x
2021-11-15 11:45:15.453 INFO: [136] ffmpeg.log() frame= 166 fps= 30 q=21.0 size= 0kB time=00:00:05.50 bitrate= 0.1kbits/s speed=0.987x
2021-11-15 11:45:16.453 INFO: [136] ffmpeg.log() frame= 181 fps= 30 q=18.0 size= 0kB time=00:00:06.01 bitrate= 0.1kbits/s speed=0.989x
2021-11-15 11:45:16.453 INFO: [136] ffmpeg.log() frame= 196 fps= 30 q=21.0 size= 0kB time=00:00:06.50 bitrate= 0.1kbits/s speed=0.988x
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() frame= 211 fps= 30 q=21.0 Lsize= 54kB time=00:00:07.05 bitrate= 63.1kbits/s speed=0.992x
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() video:41kB audio:6kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 15.671579%
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] frame I:4 Avg QP: 4.72 size: 5606
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] frame P:207 Avg QP: 6.35 size: 91
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] mb I I16…4: 98.5% 0.0% 1.5%
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] mb P I16…4: 0.0% 0.0% 0.0% P16…4: 0.0% 0.0% 0.0% 0.0% 0.0% skip:100.0%
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] coded y,uvDC,uvAC intra: 1.1% 0.0% 0.0% inter: 0.0% 0.0% 0.0%
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] i16 v,h,dc,p: 94% 4% 3% 0%
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 19% 23% 34% 4% 3% 4% 5% 3% 4%
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] i8c dc,h,v,p: 100% 0% 0% 0%
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] Weighted P-Frames: Y:0.0% UV:0.0%
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [libx264 @ 0x557367b22340] kb/s:46.99
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() [aac @ 0x557367b26600] Qavg: 62971.031
2021-11-15 11:45:16.909 INFO: [136] ffmpeg.log() Exiting normally, received signal 2.
[5:29 pm, 15/11/2021] User: [flv @ 0x5609661e6880] Failed to update header with correct duration.

Jibri can only stream or record one meeting at a time. You need to deploy additional Jibris if you need to stream or record multiple meetings.

Please find the jibri.conf file…Have we added three jibri’s correctly?

jibri {
id = “”
single-use-mode = false

recording {
recordings-directory = “/usr/local/eb/recordings”
finalize-script = “/usr/local/bin/finalize_recording.sh”
}

streaming {
rtmp-allow-list = [
“.*”
]
}

chrome {
flags = [
// “–ignore-certificate-errors”,
“–use-fake-ui-for-media-stream”,
“–start-maximized”,
“–kiosk”,
“–enabled”,
“–disable-infobars”,
“–autoplay-policy=no-user-gesture-required”
]
}

ffmpeg {
resolution = “1920x1080”
audio-source = “alsa”
audio-device = “plug:bsnoop”
}

api {
http {
internal-api-port = 2222
external-api-port = 3333
}

xmpp {
  environments = [{
    name = "eb-environment"
    xmpp-server-hosts = ["****"]
    xmpp-domain = "*****"

    control-muc {
      domain = "internal.auth.*****"
      room-name = "JibriBrewery"
      nickname = "jibri-nickname"
    }

    control-muc {
      domain = "internal.auth.*****"
      room-name = "JibriBrewery"
      nickname = "jibri-nickname2"
    }

    control-muc {
      domain = "internal.auth.*****"
      room-name = "JibriBrewery"
      nickname = "jibri-nickname3"
    }

    control-login {
      domain = "auth.****"
      username = "jibri"
      password = "****"
    }

    call-login {
      domain = "recorder.****"
      username = "recorder"
      password = "****"
    }

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

}

stats {
enable-stats-d = true
}

call-status-checks {
no-media-timeout = 30 seconds
all-muted-timeout = 10 minutes
password = “recorderpass”
}

}

You have to actually deploy server instances, not just update the config of one server. You only have one control-muc per Jibri server.

Can you please share any steps/videos to deploy server instances

You have already deployed one Jibri server. Repeat that process to deploy a second one, and you’ll be able to record two meetings at the same time.

I have used this link TUTORIAL - How to Install the NEW JIBRI - Install & Config - Jitsi Community Forum - developers & users to install jibri in ubuntu…should I install in the same server…thank you

You need containers or virtual machines to host multiple jibri instances on the same server. The easy way is to use a new server for each jibri instance.

I created a new server and installed jibri. How do i add this (jibri)server details to the (jitsi-meet)server I installed jitsi? Please help

jibri.conf should be the same expect nickname on the new server. Then restart the server

Gave the same jibri.conf with different nick name and installed successfully.