Jibri not work

You’ve been having problems with this for a while now. Honestly, my candid suggestion would be for you to just start over - it’s much easier at this point. Purge Jibri, then follow this guide carefully to get a working Jibri installation. The only thing that has changed from that guide is that you will need to populate jibri.conf with your values (instead of config.json). Save yourself the headache and do this instead.

加个好友一起研究一下?QQ 458225889 :grin:

thank Freddie very much.As the guide I change config,It worked.
but the record file is a mp4 file.the file can not play in VLC or Windows Media Player.

what’s the wrong?

The Java version may be the cause. Use Java8

My jibri can not work

Any suggest?
My jibri log:

2020-11-19 17:48:44.260 INFO: [1] org.jitsi.jibri.webhooks.v1.JwtInfo.Companion.fromConfig() got jwtConfig: {}

2020-11-19 17:48:44.261 INFO: [1] org.jitsi.jibri.webhooks.v1.JwtInfo.Companion.fromConfig() Unable to create JwtInfo: com.typesafe.config.ConfigException$Missing: reference.conf @ jar:file:/opt/jitsi/jibri/jibri.jar!/reference.conf: 52: No configuration setting found for key ‘signing-key-path’
2020-11-19 17:48:44.279 INFO: [1] org.jitsi.jibri.Main.main() Using port 3333 for internal HTTP API

FileRecordingRequestParams(callParams=CallParams(callUrlInfo=CallUrlInfo(baseUrl=https://meet.igocctv.com, callName=siptest, urlParams=)), sessionId=ufkyffgdlpkruzvb, callLoginParams=XmppCredentials(domain=recorder.meet.igocctv.com, username=recorder, password=myrecpass))
2020-11-19 17:49:10.229 INFO: [41] org.openqa.selenium.remote.ProtocolHandshake.createSession() Detected dialect: OSS
2020-11-19 17:49:10.263 FINE: [41] org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.() Detected os as OS: LINUX
2020-11-19 17:49:10.272 INFO: [41] org.jitsi.jibri.service.impl.FileRecordingJibriService.() Writing recording to /srv/recordings/ufkyffgdlpkruzvb, finalize script path
2020-11-19 17:49:10.281 FINE: [41] org.jitsi.jibri.statsd.JibriStatsDClient.incrementCounter() Incrementing statsd counter: start:recording
2020-11-19 17:49:10.284 INFO: [41] org.jitsi.jibri.status.JibriStatusManager.log() Busy status has changed: IDLE -> BUSY
2020-11-19 17:49:10.285 FINE: [41] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status
2020-11-19 17:49:10.287 INFO: [41] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=BUSY, health=OverallHealth(healthStatus=HEALTHY, details={})), publishing presence to connections
2020-11-19 17:49:10.294 INFO: [41] org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq() Sending ‘pending’ response to start IQ
2020-11-19 17:49:11.569 FINE: [52] org.jitsi.jibri.selenium.pageobjects.CallPage.visit() Visiting url https://meet.igocctv.com/siptest#config.iAmRecorder=true&config.externalConnectUrl=null&config.startWithAudioMuted=true&config.startWithVideoMuted=true&interfaceConfig.APP_NAME=“Jibri”&config.analytics.disabled=true&config.p2p.enabled=false&config.prejoinPageEnabled=false&config.requireDisplayName=false
2020-11-19 17:49:12.293 FINE: [52] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property ‘isJoined’ of undefined
2020-11-19 17:49:12.804 FINE: [52] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property ‘isJoined’ of undefined
2020-11-19 17:49:13.914 INFO: [52] org.jitsi.jibri.selenium.pageobjects.CallPage.visit() Waited 1679 milliseconds for call page to load
2020-11-19 17:49:13.915 INFO: [52] org.jitsi.jibri.selenium.JibriSelenium.() Starting empty call check with a timeout of PT30S
2020-11-19 17:49:13.936 INFO: [52] org.jitsi.jibri.selenium.JibriSelenium.onSeleniumStateChange() Transitioning from state Starting up to Running
2020-11-19 17:49:13.937 INFO: [52] org.jitsi.jibri.service.impl.FileRecordingJibriService.invoke() Selenium joined the call, starting the capturer
2020-11-19 17:49:14.019 INFO: [52] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.launch() Starting ffmpeg with command ffmpeg -y -v info -f x11grab -draw_mouse 0 -r 30 -s 1280x720 -thread_queue_size 4096 -i :0.0+0,0 -f alsa -thread_queue_size 4096 -i plug:bsnoop -acodec aac -strict -2 -ar 44100 -b:a 128k -af aresample=async=1 -c:v libx264 -preset veryfast -profile:v main -level 3.1 -pix_fmt yuv420p -r 30 -crf 25 -g 60 -tune zerolatency -f mp4 /srv/recordings/ufkyffgdlpkruzvb/siptest_2020-11-19-17-49-10.mp4 ([ffmpeg, -y, -v, info, -f, x11grab, -draw_mouse, 0, -r, 30, -s, 1280x720, -thread_queue_size, 4096, -i, :0.0+0,0, -f, alsa, -thread_queue_size, 4096, -i, plug:bsnoop, -acodec, aac, -strict, -2, -ar, 44100, -b:a, 128k, -af, aresample=async=1, -c:v, libx264, -preset, veryfast, -profile:v, main, -level, 3.1, -pix_fmt, yuv420p, -r, 30, -crf, 25, -g, 60, -tune, zerolatency, -f, mp4, /srv/recordings/ufkyffgdlpkruzvb/siptest_2020-11-19-17-49-10.mp4])
2020-11-19 17:49:19.035 FINE: [18] org.jitsi.jibri.util.ProcessStatePublisher.ffmpeg.invoke() Process ffmpeg hasn’t written in 2 seconds, publishing periodic update
2020-11-19 17:49:19.036 INFO: [55] org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.onFfmpegProcessUpdate() Ffmpeg quit abruptly. Last output line: plug:bsnoop: Input/output error
2020-11-19 17:49:19.040 INFO: [55] org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.onFfmpegStateMachineStateChange() Ffmpeg capturer transitioning from state Starting up to Error: QuitUnexpectedly SESSION plug:bsnoop: Input/output error
2020-11-19 17:49:19.042 INFO: [55] org.jitsi.jibri.service.impl.FileRecordingJibriService.onServiceStateChange() File recording service transitioning from state Starting up to Error: QuitUnexpectedly SESSION plug:bsnoop: Input/output error
2020-11-19 17:49:19.043 INFO: [55] org.jitsi.jibri.api.xmpp.XmppApi.invoke() Current service had an error Error: QuitUnexpectedly SESSION plug:bsnoop: Input/output error, sending error iq
2020-11-19 17:49:19.045 FINE: [55] org.jitsi.jibri.statsd.JibriStatsDClient.incrementCounter() Incrementing statsd counter: stop:recording
2020-11-19 17:49:19.050 INFO: [55] org.jitsi.jibri.JibriManager.stopService() Stopping the current service
2020-11-19 17:49:19.050 INFO: [55] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Stopping capturer
2020-11-19 17:49:19.051 INFO: [55] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.stop() Stopping ffmpeg process
2020-11-19 17:49:19.066 INFO: [55] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.stop() ffmpeg exited with value 1
2020-11-19 17:49:19.067 INFO: [55] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Quitting selenium
2020-11-19 17:49:19.109 INFO: [55] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Participants in this recording:
2020-11-19 17:49:19.175 INFO: [55] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Leaving call and quitting browser
2020-11-19 17:49:19.176 INFO: [55] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Recurring call status checks cancelled
2020-11-19 17:49:19.201 INFO: [55] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 16 log entries for type browser
2020-11-19 17:49:19.407 INFO: [55] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 707 log entries for type driver
2020-11-19 17:49:19.656 INFO: [55] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 0 log entries for type client
2020-11-19 17:49:19.657 INFO: [55] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Leaving web call
2020-11-19 17:49:19.910 INFO: [55] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Quitting chrome driver
2020-11-19 17:49:19.986 INFO: [55] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Chrome driver quit
2020-11-19 17:49:19.987 INFO: [55] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Finalizing the recording
2020-11-19 17:49:19.988 SEVERE: [55] org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize() Failed to run finalize script: java.io.IOException: Cannot run program “”: error=2, No such file or directory with stack:
java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1128)
java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1071)
org.jitsi.jibri.util.ProcessWrapper.start(ProcessWrapper.kt:87)
org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize(FileRecordingJibriService.kt:212)
org.jitsi.jibri.service.impl.FileRecordingJibriService.stop(FileRecordingJibriService.kt:197)
org.jitsi.jibri.JibriManager.stopService(JibriManager.kt:262)
org.jitsi.jibri.JibriManager$startService$1.invoke(JibriManager.kt:210)
org.jitsi.jibri.JibriManager$startService$1.invoke(JibriManager.kt:86)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.service.impl.StatefulJibriService.onServiceStateChange(StatefulJibriService.kt:40)
org.jitsi.jibri.service.impl.StatefulJibriService.access$onServiceStateChange(StatefulJibriService.kt:26)
org.jitsi.jibri.service.impl.StatefulJibriService$1.invoke(StatefulJibriService.kt:35)
org.jitsi.jibri.service.impl.StatefulJibriService$1.invoke(StatefulJibriService.kt:26)
org.jitsi.jibri.util.NotifyingStateMachine.notify(NotifyingStateMachine.kt:26)
org.jitsi.jibri.service.JibriServiceStateMachine.access$notify(JibriServiceStateMachine.kt:46)
org.jitsi.jibri.service.JibriServiceStateMachine$stateMachine$1$5.invoke(JibriServiceStateMachine.kt:100)
org.jitsi.jibri.service.JibriServiceStateMachine$stateMachine$1$5.invoke(JibriServiceStateMachine.kt:46)
com.tinder.StateMachine.notifyOnTransition(StateMachine.kt:65)
com.tinder.StateMachine.transition(StateMachine.kt:23)
org.jitsi.jibri.service.JibriServiceStateMachine.transition(JibriServiceStateMachine.kt:112)
org.jitsi.jibri.service.impl.StatefulJibriService$registerSubComponent$1.invoke(StatefulJibriService.kt:46)
org.jitsi.jibri.service.impl.StatefulJibriService$registerSubComponent$1.invoke(StatefulJibriService.kt:26)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.onFfmpegStateMachineStateChange(FfmpegCapturer.kt:119)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.access$onFfmpegStateMachineStateChange(FfmpegCapturer.kt:62)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer$4.invoke(FfmpegCapturer.kt:85)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer$4.invoke(FfmpegCapturer.kt:62)
org.jitsi.jibri.util.NotifyingStateMachine.notify(NotifyingStateMachine.kt:26)
org.jitsi.jibri.capture.ffmpeg.FfmpegStatusStateMachine.access$notify(FfmpegStatusStateMachine.kt:69)
org.jitsi.jibri.capture.ffmpeg.FfmpegStatusStateMachine$stateMachine$1$5.invoke(FfmpegStatusStateMachine.kt:130)
org.jitsi.jibri.capture.ffmpeg.FfmpegStatusStateMachine$stateMachine$1$5.invoke(FfmpegStatusStateMachine.kt:69)
com.tinder.StateMachine.notifyOnTransition(StateMachine.kt:65)
com.tinder.StateMachine.transition(StateMachine.kt:23)
org.jitsi.jibri.capture.ffmpeg.FfmpegStatusStateMachine.transition(FfmpegStatusStateMachine.kt:135)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.onFfmpegProcessUpdate(FfmpegCapturer.kt:112)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.access$onFfmpegProcessUpdate(FfmpegCapturer.kt:62)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer$3.invoke(FfmpegCapturer.kt:84)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer$3.invoke(FfmpegCapturer.kt:62)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.util.JibriSubprocess$launch$1$1.invoke(JibriSubprocess.kt:46)
org.jitsi.jibri.util.JibriSubprocess$launch$1$1.invoke(JibriSubprocess.kt:26)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.util.ProcessStatePublisher$startProcessAliveChecks$1$$special$$inlined$also$lambda$1.run(ProcessStatePublisher.kt:91)
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
java.base/java.lang.Thread.run(Thread.java:834)

Any suggest? Thanks

Looks like something’s wrong with your sound. Try these commands:

First

echo “snd-aloop” >> /etc/modules

Then this

modprobe snd-aloop

Now, check to make sure the ALSA loopback module is loaded:

lsmod | grep snd_aloop

Thank Freddie!
lsmod | grep snd_aloop:
snd_aloop 28672 1
snd_pcm 114688 1 snd_aloop
snd 94208 5 snd_timer,snd_aloop,snd_pcm

the log:
2020-11-20 09:49:59.418 INFO: [1] org.jitsi.jibri.Main.handleCommandLineArgs() Jibri run with args [–config, /etc/jitsi/jibri/config.json]
2020-11-20 09:49:59.552 INFO: [1] org.jitsi.jibri.Main.setupLegacyConfig() Checking legacy config file /etc/jitsi/jibri/config.json
2020-11-20 09:50:00.183 INFO: [1] org.jitsi.jibri.Main.loadConfigFromFile() Parsed legacy config:
JibriConfig(jibriId=null, recordingDirectory=/srv/recordings, singleUseMode=null, enabledStatsD=null, finalizeRecordingScriptPath=, xmppEnvironments=[XmppEnvironmentConfig(name=prod environment, xmppServerHosts=[meet.igocctv.com], xmppDomain=meet.igocctv.com, controlLogin=XmppCredentials(domain=auth.meet.igocctv.com, username=jibri, password=myjibri), controlMuc=XmppMuc(domain=internal.auth.meet.igocctv.com, roomName=JibriBrewery, nickname=jibri-nickname), sipControlMuc=null, callLogin=XmppCredentials(domain=recorder.meet.igocctv.com, username=recorder, password=myrecpass), stripFromRoomDomain=conference., usageTimeoutMins=0, trustAllXmppCerts=true)])
2020-11-20 09:50:00.624 INFO: [1] org.jitsi.jibri.webhooks.v1.JwtInfo.Companion.fromConfig() got jwtConfig: {}

2020-11-20 09:50:00.625 INFO: [1] org.jitsi.jibri.webhooks.v1.JwtInfo.Companion.fromConfig() Unable to create JwtInfo: com.typesafe.config.ConfigException$Missing: reference.conf @ jar:file:/opt/jitsi/jibri/jibri.jar!/reference.conf: 52: No configuration setting found for key ‘signing-key-path’
2020-11-20 09:50:00.642 INFO: [1] org.jitsi.jibri.Main.main() Using port 3333 for internal HTTP API
2020-11-20 09:50:00.675 FINE: [18] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status
2020-11-20 09:50:01.013 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=IDLE, health=OverallHealth(healthStatus=HEALTHY, details={})), publishing presence to connections
2020-11-20 09:50:01.022 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.start() Connecting to xmpp environment on meet.igocctv.com with config XmppEnvironmentConfig(name=prod environment, xmppServerHosts=[meet.igocctv.com], xmppDomain=meet.igocctv.com, controlLogin=XmppCredentials(domain=auth.meet.igocctv.com, username=jibri, password=myjibri), controlMuc=XmppMuc(domain=internal.auth.meet.igocctv.com, roomName=JibriBrewery, nickname=jibri-nickname), sipControlMuc=null, callLogin=XmppCredentials(domain=recorder.meet.igocctv.com, username=recorder, password=myrecpass), stripFromRoomDomain=conference., usageTimeoutMins=0, trustAllXmppCerts=true)
2020-11-20 09:50:01.023 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.start() The trustAllXmppCerts config is enabled for this domain, all XMPP server provided certificates will be accepted
2020-11-20 09:50:01.048 INFO: [1] org.jitsi.jibri.Main.main() Using port 2222 for HTTP API
2020-11-20 09:50:01.059 WARNING: [27] org.jitsi.xmpp.mucclient.MucClient.log() Disabling certificate verification!
2020-11-20 09:50:01.332 INFO: [27] org.jitsi.xmpp.mucclient.MucClient.log() Connected.
2020-11-20 09:50:01.333 INFO: [27] org.jitsi.xmpp.mucclient.MucClient.log() Logging in.
2020-11-20 09:50:01.432 INFO: [27] org.jitsi.xmpp.mucclient.MucClient.log() Joined MUC: jibribrewery@internal.auth.meet.igocctv.com
2020-11-20 09:50:40.215 INFO: [43] org.jitsi.jibri.api.xmpp.XmppApi.handleJibriIq() Received JibriIq from environment [MucClient id=meet.igocctv.com hostname=meet.igocctv.com]
2020-11-20 09:50:40.216 INFO: [43] org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq() Received start request, starting service
2020-11-20 09:50:40.241 INFO: [43] org.jitsi.jibri.api.xmpp.XmppApi.handleStartService() Parsed call url info: CallUrlInfo(baseUrl=https://meet.igocctv.com, callName=siptest, urlParams=)
2020-11-20 09:50:40.244 INFO: [43] org.jitsi.jibri.JibriManager.startFileRecording() Starting a file recording with params: FileRecordingRequestParams(callParams=CallParams(callUrlInfo=CallUrlInfo(baseUrl=https://meet.igocctv.com, callName=siptest, urlParams=)), sessionId=yuojpogayxfsurnk, callLoginParams=XmppCredentials(domain=recorder.meet.igocctv.com, username=recorder, password=myrecpass))
2020-11-20 09:50:41.290 INFO: [43] org.openqa.selenium.remote.ProtocolHandshake.createSession() Detected dialect: OSS
2020-11-20 09:50:41.330 FINE: [43] org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.() Detected os as OS: LINUX
2020-11-20 09:50:41.338 INFO: [43] org.jitsi.jibri.service.impl.FileRecordingJibriService.() Writing recording to /srv/recordings/yuojpogayxfsurnk, finalize script path
2020-11-20 09:50:41.349 FINE: [43] org.jitsi.jibri.statsd.JibriStatsDClient.incrementCounter() Incrementing statsd counter: start:recording
2020-11-20 09:50:41.352 INFO: [43] org.jitsi.jibri.status.JibriStatusManager.log() Busy status has changed: IDLE -> BUSY
2020-11-20 09:50:41.352 FINE: [43] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status
2020-11-20 09:50:41.354 INFO: [43] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=BUSY, health=OverallHealth(healthStatus=HEALTHY, details={})), publishing presence to connections
2020-11-20 09:50:41.365 INFO: [43] org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq() Sending ‘pending’ response to start IQ
2020-11-20 09:50:42.920 FINE: [54] org.jitsi.jibri.selenium.pageobjects.CallPage.visit() Visiting url https://meet.igocctv.com/siptest#config.iAmRecorder=true&config.externalConnectUrl=null&config.startWithAudioMuted=true&config.startWithVideoMuted=true&interfaceConfig.APP_NAME=“Jibri”&config.analytics.disabled=true&config.p2p.enabled=false&config.prejoinPageEnabled=false&config.requireDisplayName=false
2020-11-20 09:50:43.584 FINE: [54] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property ‘isJoined’ of undefined
2020-11-20 09:50:44.094 FINE: [54] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property ‘isJoined’ of undefined
2020-11-20 09:50:44.797 INFO: [54] org.jitsi.jibri.selenium.pageobjects.CallPage.visit() Waited 1246 milliseconds for call page to load
2020-11-20 09:50:44.802 INFO: [54] org.jitsi.jibri.selenium.JibriSelenium.() Starting empty call check with a timeout of PT30S
2020-11-20 09:50:44.925 INFO: [54] org.jitsi.jibri.selenium.JibriSelenium.onSeleniumStateChange() Transitioning from state Starting up to Running
2020-11-20 09:50:44.926 INFO: [54] org.jitsi.jibri.service.impl.FileRecordingJibriService.invoke() Selenium joined the call, starting the capturer
2020-11-20 09:50:45.133 INFO: [54] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.launch() Starting ffmpeg with command ffmpeg -y -v info -f x11grab -draw_mouse 0 -r 30 -s 1280x720 -thread_queue_size 4096 -i :0.0+0,0 -f alsa -thread_queue_size 4096 -i plug:bsnoop -acodec aac -strict -2 -ar 44100 -b:a 128k -af aresample=async=1 -c:v libx264 -preset veryfast -profile:v main -level 3.1 -pix_fmt yuv420p -r 30 -crf 25 -g 60 -tune zerolatency -f mp4 /srv/recordings/yuojpogayxfsurnk/siptest_2020-11-20-09-50-41.mp4 ([ffmpeg, -y, -v, info, -f, x11grab, -draw_mouse, 0, -r, 30, -s, 1280x720, -thread_queue_size, 4096, -i, :0.0+0,0, -f, alsa, -thread_queue_size, 4096, -i, plug:bsnoop, -acodec, aac, -strict, -2, -ar, 44100, -b:a, 128k, -af, aresample=async=1, -c:v, libx264, -preset, veryfast, -profile:v, main, -level, 3.1, -pix_fmt, yuv420p, -r, 30, -crf, 25, -g, 60, -tune, zerolatency, -f, mp4, /srv/recordings/yuojpogayxfsurnk/siptest_2020-11-20-09-50-41.mp4])
2020-11-20 09:50:50.155 FINE: [18] org.jitsi.jibri.util.ProcessStatePublisher.ffmpeg.invoke() Process ffmpeg hasn’t written in 2 seconds, publishing periodic update
2020-11-20 09:50:50.157 INFO: [57] org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.onFfmpegProcessUpdate() Ffmpeg quit abruptly. Last output line: plug:bsnoop: Input/output error
2020-11-20 09:50:50.158 INFO: [57] org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.onFfmpegStateMachineStateChange() Ffmpeg capturer transitioning from state Starting up to Error: QuitUnexpectedly SESSION plug:bsnoop: Input/output error
2020-11-20 09:50:50.160 INFO: [57] org.jitsi.jibri.service.impl.FileRecordingJibriService.onServiceStateChange() File recording service transitioning from state Starting up to Error: QuitUnexpectedly SESSION plug:bsnoop: Input/output error
2020-11-20 09:50:50.167 INFO: [57] org.jitsi.jibri.api.xmpp.XmppApi.invoke() Current service had an error Error: QuitUnexpectedly SESSION plug:bsnoop: Input/output error, sending error iq
2020-11-20 09:50:50.174 FINE: [57] org.jitsi.jibri.statsd.JibriStatsDClient.incrementCounter() Incrementing statsd counter: stop:recording
2020-11-20 09:50:50.193 INFO: [57] org.jitsi.jibri.JibriManager.stopService() Stopping the current service
2020-11-20 09:50:50.194 INFO: [57] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Stopping capturer
2020-11-20 09:50:50.194 INFO: [57] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.stop() Stopping ffmpeg process
2020-11-20 09:50:50.207 INFO: [57] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.stop() ffmpeg exited with value 1
2020-11-20 09:50:50.210 INFO: [57] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Quitting selenium
2020-11-20 09:50:50.269 INFO: [57] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Participants in this recording:
2020-11-20 09:50:50.428 INFO: [57] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Leaving call and quitting browser
2020-11-20 09:50:50.431 INFO: [57] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Recurring call status checks cancelled
2020-11-20 09:50:50.480 INFO: [57] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 16 log entries for type browser
2020-11-20 09:50:50.863 INFO: [57] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 678 log entries for type driver
2020-11-20 09:50:51.200 INFO: [57] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 0 log entries for type client
2020-11-20 09:50:51.200 INFO: [57] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Leaving web call
2020-11-20 09:50:51.521 INFO: [57] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Quitting chrome driver
2020-11-20 09:50:51.595 INFO: [57] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Chrome driver quit
2020-11-20 09:50:51.595 INFO: [57] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Finalizing the recording
2020-11-20 09:50:51.597 SEVERE: [57] org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize() Failed to run finalize script: java.io.IOException: Cannot run program “”: error=2, No such file or directory with stack:
java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1128)
java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1071)
org.jitsi.jibri.util.ProcessWrapper.start(ProcessWrapper.kt:87)
org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize(FileRecordingJibriService.kt:212)
org.jitsi.jibri.service.impl.FileRecordingJibriService.stop(FileRecordingJibriService.kt:197)
org.jitsi.jibri.JibriManager.stopService(JibriManager.kt:262)
org.jitsi.jibri.JibriManager$startService$1.invoke(JibriManager.kt:210)
org.jitsi.jibri.JibriManager$startService$1.invoke(JibriManager.kt:86)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.service.impl.StatefulJibriService.onServiceStateChange(StatefulJibriService.kt:40)
org.jitsi.jibri.service.impl.StatefulJibriService.access$onServiceStateChange(StatefulJibriService.kt:26)
org.jitsi.jibri.service.impl.StatefulJibriService$1.invoke(StatefulJibriService.kt:35)
org.jitsi.jibri.service.impl.StatefulJibriService$1.invoke(StatefulJibriService.kt:26)
org.jitsi.jibri.util.NotifyingStateMachine.notify(NotifyingStateMachine.kt:26)
org.jitsi.jibri.service.JibriServiceStateMachine.access$notify(JibriServiceStateMachine.kt:46)
org.jitsi.jibri.service.JibriServiceStateMachine$stateMachine$1$5.invoke(JibriServiceStateMachine.kt:100)
org.jitsi.jibri.service.JibriServiceStateMachine$stateMachine$1$5.invoke(JibriServiceStateMachine.kt:46)
com.tinder.StateMachine.notifyOnTransition(StateMachine.kt:65)
com.tinder.StateMachine.transition(StateMachine.kt:23)
org.jitsi.jibri.service.JibriServiceStateMachine.transition(JibriServiceStateMachine.kt:112)
org.jitsi.jibri.service.impl.StatefulJibriService$registerSubComponent$1.invoke(StatefulJibriService.kt:46)
org.jitsi.jibri.service.impl.StatefulJibriService$registerSubComponent$1.invoke(StatefulJibriService.kt:26)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.onFfmpegStateMachineStateChange(FfmpegCapturer.kt:119)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.access$onFfmpegStateMachineStateChange(FfmpegCapturer.kt:62)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer$4.invoke(FfmpegCapturer.kt:85)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer$4.invoke(FfmpegCapturer.kt:62)
org.jitsi.jibri.util.NotifyingStateMachine.notify(NotifyingStateMachine.kt:26)
org.jitsi.jibri.capture.ffmpeg.FfmpegStatusStateMachine.access$notify(FfmpegStatusStateMachine.kt:69)
org.jitsi.jibri.capture.ffmpeg.FfmpegStatusStateMachine$stateMachine$1$5.invoke(FfmpegStatusStateMachine.kt:130)
org.jitsi.jibri.capture.ffmpeg.FfmpegStatusStateMachine$stateMachine$1$5.invoke(FfmpegStatusStateMachine.kt:69)
com.tinder.StateMachine.notifyOnTransition(StateMachine.kt:65)
com.tinder.StateMachine.transition(StateMachine.kt:23)
org.jitsi.jibri.capture.ffmpeg.FfmpegStatusStateMachine.transition(FfmpegStatusStateMachine.kt:135)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.onFfmpegProcessUpdate(FfmpegCapturer.kt:112)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.access$onFfmpegProcessUpdate(FfmpegCapturer.kt:62)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer$3.invoke(FfmpegCapturer.kt:84)
org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer$3.invoke(FfmpegCapturer.kt:62)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.util.JibriSubprocess$launch$1$1.invoke(JibriSubprocess.kt:46)
org.jitsi.jibri.util.JibriSubprocess$launch$1$1.invoke(JibriSubprocess.kt:26)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.util.ProcessStatePublisher$startProcessAliveChecks$1$$special$$inlined$also$lambda$1.run(ProcessStatePublisher.kt:91)
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
java.base/java.lang.Thread.run(Thread.java:834)

2020-11-20 09:50:51.599 INFO: [57] org.jitsi.jibri.status.JibriStatusManager.log() Busy status has changed: BUSY -> IDLE
2020-11-20 09:50:51.599 FINE: [57] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status
2020-11-20 09:50:51.599 INFO: [57] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=IDLE, health=OverallHealth(healthStatus=HEALTHY, details={})), publishing presence to connections
2020-11-20 09:51:00.636 FINE: [18] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status
2020-11-20 09:52:00.636 FINE: [18] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status

Did you create the recording directory?

As root

mkdir /srv/recordings
chown jibri: /srv/recordings

yes i do it. When record begin it can create a fold with random name. And create a metadata.json in it. Can not create mp4 file.

Looks like you may still have config.json; remove that

Thank freddie
I delete config.json ,use jibri.conf.

jibri error can not connent XMPP server:

2020-11-20 17:00:21.803 INFO: [1] org.jitsi.jibri.Main.handleCommandLineArgs() Jibri run with args [–config, /etc/jitsi/jibri/config.json]
2020-11-20 17:00:21.926 INFO: [1] org.jitsi.jibri.Main.setupLegacyConfig() Checking legacy config file /etc/jitsi/jibri/config.json
2020-11-20 17:00:21.927 INFO: [1] org.jitsi.jibri.Main.setupLegacyConfig() Legacy config file /etc/jitsi/jibri/config.json doesn’t exist
2020-11-20 17:00:22.801 INFO: [1] org.jitsi.jibri.webhooks.v1.JwtInfo.Companion.fromConfig() got jwtConfig: {}

2020-11-20 17:00:22.802 INFO: [1] org.jitsi.jibri.webhooks.v1.JwtInfo.Companion.fromConfig() Unable to create JwtInfo: com.typesafe.config.ConfigException$Missing: /etc/jitsi/jibri/jibri.conf: 88: No configuration setting found for key ‘signing-key-path’
2020-11-20 17:00:22.947 INFO: [1] org.jitsi.jibri.Main.main() Using port 3333 for internal HTTP API
2020-11-20 17:00:22.970 FINE: [18] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status
2020-11-20 17:00:23.354 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=IDLE, health=OverallHealth(healthStatus=HEALTHY, details={})), publishing presence to connections
2020-11-20 17:00:23.363 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.start() Connecting to xmpp environment on meet.igocctv.com with config XmppEnvironmentConfig(name=prod environment, xmppServerHosts=[meet.igocctv.com], xmppDomain=meet.igocctv.com, controlLogin=XmppCredentials(domain=“auth.meet.igocctv.com”, username=“jibri”, password=myjibri), controlMuc=XmppMuc(domain=“internal.auth.meet.igocctv.com”, roomName=“JibriBrewery”, nickname=“jibri”), sipControlMuc=XmppMuc(domain=“internal.auth.meet.igocctv.com”, roomName=“JibriBrewery”, nickname=“jibri”), callLogin=XmppCredentials(domain=“recorder.meet.igocctv.com”, username=“recorder”, password=myrecpass), stripFromRoomDomain=conference., usageTimeoutMins=5, trustAllXmppCerts=true)
2020-11-20 17:00:23.366 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.start() The trustAllXmppCerts config is enabled for this domain, all XMPP server provided certificates will be accepted
2020-11-20 17:00:23.392 INFO: [1] org.jitsi.jibri.Main.main() Using port 2222 for HTTP API
2020-11-20 17:00:23.411 WARNING: [27] org.jitsi.xmpp.mucclient.MucClient.log() Disabling certificate verification!
2020-11-20 17:00:23.469 WARNING: [27] org.jitsi.xmpp.mucclient.MucClient.log() [MucClient id=meet.igocctv.com hostname=meet.igocctv.com] error connecting
org.jivesoftware.smack.XMPPException$StreamErrorException: host-unknown You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions
stream:errorThis server does not serve “auth.meet.igocctv.com”</stream:error>
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1059)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:1000)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:1016)
at java.base/java.lang.Thread.run(Thread.java:834)
2020-11-20 17:00:23.471 WARNING: [39] org.jivesoftware.smack.AbstractXMPPConnection.callConnectionClosedOnErrorListener() Connection XMPPTCPConnection[not-authenticated] (0) closed with error
org.jivesoftware.smack.XMPPException$StreamErrorException: host-unknown You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions
stream:errorThis server does not serve “auth.meet.igocctv.com”</stream:error>
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1064)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:1000)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:1016)
at java.base/java.lang.Thread.run(Thread.java:834)
2020-11-20 17:00:23.473 WARNING: [39] org.jitsi.xmpp.mucclient.MucClient.log() Closed on error:
org.jivesoftware.smack.XMPPException$StreamErrorException: host-unknown You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions
stream:errorThis server does not serve “auth.meet.igocctv.com”</stream:error>
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1064)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:1000)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:1016)
at java.base/java.lang.Thread.run(Thread.java:834)
2020-11-20 17:00:25.479 WARNING: [40] org.jitsi.xmpp.mucclient.MucClient.log() Reconnection failed:
org.jivesoftware.smack.XMPPException$StreamErrorException: host-unknown You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions

Did you add this part to your cfg.lua file?

– internal muc component, meant to enable pools of jibri and jigasi clients
Component “internal.auth.meet.myfirewall.org” “muc”
modules_enabled = {
“ping”;
}
storage = “memory”
muc_room_cache_size = 1000

VirtualHost “recorder.meet.myfirewall.org
modules_enabled = {
“ping”;
}
authentication = “internal_plain”

And these 2 lines to your SIP communicator properties?

org.jitsi.jicofo.jibri.BREWERY=JibriBrewery@internal.auth.meet.myfirewall.org
org.jitsi.jicofo.jibri.PENDING_TIMEOUT=90

Thank Freddie
In my cfg.lua:

– internal muc component
Component “internal.auth.meet.igocctv.com” “muc”
storage = “memory”
modules_enabled = {
“ping”;
}
room_cache_size = 1000
admins = { “focus@auth.meet.igocctv.com”, “jvb@auth.meet.igocctv.com” }
muc_room_locking = false
muc_room_default_public_jids = true

VirtualHost “guest.meet.igocctv.com
authentication = “anonymous”
c2s_require_encryption = false

VirtualHost “recorder.meet.igocctv.com
modules_enabled = {
“ping”;
}
authentication = “internal_plain”

In SIP communicator properties:
org.jitsi.jicofo.BRIDGE_MUC=JvbBrewery@internal.auth.meet.igocctv.com
org.jitsi.jicofo.auth.URL=XMPP:meet.igocctv.com
org.jitsi.jicofo.jibri.BREWERY=JibriBrewery@internal.auth.meet.igocctv.com
org.jitsi.jicofo.jibri.PENDING_TIMEOUT=90

Any suggestion?

I wrote an extensive guide on this. Go through it carefully, it might help to resolve your issue.

Thank Freddie!
I think it is my ffmpeg not work:
ffmpeg log:
2020-11-22 21:41:43.074 INFO: [56] ffmpeg.call() ffmpeg version 4.1.6-1~deb10u1 Copyright © 2000-2020 the FFmpeg developers
2020-11-22 21:41:43.074 INFO: [56] ffmpeg.call() built with gcc 8 (Debian 8.3.0-6)
2020-11-22 21:41:43.145 INFO: [56] ffmpeg.call() configuration: --prefix=/usr --extra-version=‘1~deb10u1’ --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_$
2020-11-22 21:41:43.145 INFO: [56] ffmpeg.call() libavutil 56. 22.100 / 56. 22.100
2020-11-22 21:41:43.145 INFO: [56] ffmpeg.call() libavcodec 58. 35.100 / 58. 35.100
2020-11-22 21:41:43.145 INFO: [56] ffmpeg.call() libavformat 58. 20.100 / 58. 20.100
2020-11-22 21:41:43.145 INFO: [56] ffmpeg.call() libavdevice 58. 5.100 / 58. 5.100
2020-11-22 21:41:43.146 INFO: [56] ffmpeg.call() libavfilter 7. 40.101 / 7. 40.101
2020-11-22 21:41:43.146 INFO: [56] ffmpeg.call() libavresample 4. 0. 0 / 4. 0. 0
2020-11-22 21:41:43.146 INFO: [56] ffmpeg.call() libswscale 5. 3.100 / 5. 3.100
2020-11-22 21:41:43.146 INFO: [56] ffmpeg.call() libswresample 3. 3.100 / 3. 3.100
2020-11-22 21:41:43.146 INFO: [56] ffmpeg.call() libpostproc 55. 3.100 / 55. 3.100
2020-11-22 21:41:43.146 INFO: [56] ffmpeg.call() [x11grab @ 0x55b1e7619f80] Stream #0: not enough frames to estimate rate; consider increasing probesize
2020-11-22 21:41:43.146 INFO: [56] ffmpeg.call() Input #0, x11grab, from ‘:0.0+0,0’:
2020-11-22 21:41:43.146 INFO: [56] ffmpeg.call() Duration: N/A, start: 1606052503.100808, bitrate: N/A
2020-11-22 21:41:43.147 INFO: [56] ffmpeg.call() Stream #0:0: Video: rawvideo (BGR[0] / 0x524742), bgr0, 1280x720, 30 fps, 1000k tbr, 1000k tbn, 1000k tbc
2020-11-22 21:41:43.159 INFO: [56] ffmpeg.call() ALSA lib pcm.c:2565:(snd_pcm_open_noupdate) Unknown PCM bsnoop
2020-11-22 21:41:43.159 INFO: [56] ffmpeg.call() [alsa @ 0x55b1e7624940] cannot open audio device plug:bsnoop (No such file or directory)
2020-11-22 21:41:43.160 INFO: [56] ffmpeg.call() plug:bsnoop: Input/output error

How can i fix it?

lsmod | grep snd_aloop:
snd_aloop 28672 1
snd_pcm 114688 1 snd_aloop
snd 94208 5 snd_timer,snd_aloop,snd_pcm

This is wrong. I feel like you’re not really paying attention to the suggestions I’ve made. For one, this cfg.lua configuration does not look accurate. I gave you what needs to be there; what you have here is markedly different. You can compare yourself and see the difference. The block of code I gave you should go to the very end of your cfg.lua as one complete block, not split.

Once more, you’d be doing yourself a favor by starting over. You have too many missteps, fixing one just reveals another.

I am sorry .
When i open cfg.lua file, the section internal mcu componet had here like:

– internal muc component
Component “internal.auth.meet.igocctv.com” “muc”
storage = “memory”
modules_enabled = {
“ping”;
}
admins = { “focus@auth.meet.igocctv.com”, “jvb@auth.meet.igocctv.com” }
muc_room_locking = false
muc_room_default_public_jids = true

VirtualHost “guest.meet.igocctv.com
authentication = “anonymous”
c2s_require_encryption = false

So I only add one line:
muc_room_cache_size = 1000

Then add
VirtualHost “recorder.meet.myfirewall.org
modules_enabled = {
“ping”;
}
authentication = “internal_plain”

here need two section name "Component “internal.auth.meet.igocctv.com” “muc” ?