添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

Hello

I have installed jitsi-meet on a stand-alone machine. Jitsi works very well. I can make videoconference locally and from internet.

But I can’t record with jibri.

Jibri has a problem when launching google-chrome, the error is : 2022-01-23 10:01:21.886 GRAVE: [47] XmppApi.handleStartJibriIq#226: Error starting Jibri service
org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: crashed.
(unknown error: DevToolsActivePort file doesn’t exist)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
(Driver info: chromedriver=97.0.4692.71 (adefa7837d02a07a604c1e6eff0b3a09422ab88d-refs/branch-heads/4692@{ #1247 }),platform=Linux 5.10.0-10-amd64 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 132 milliseconds
Build info: version: ‘unknown’, revision: ‘unknown’, time: ‘unknown’
System info: host: ‘
jitsi.myweb.com ’, ip: ‘127.0.0.1’, os.name: ‘Linux’, os.arch: ‘amd64’, os.version: ‘5.10.0-10-amd64’, java.version: ‘17.0.1’
Driver info: driver.version: ChromeDriver
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:214)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:166)
at org.openqa.selenium.remote.JsonWireProtocolResponse.lambda$new$0(JsonWireProtocolResponse.java:53)
at org.openqa.selenium.remote.JsonWireProtocolResponse.lambda$getResponseFunction$2(JsonWireProtocolResponse.java:91)
at org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$0(ProtocolHandshake.java:123)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:1002)
at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:129)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:527)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:647)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:126)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:73)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:136)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:543)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:207)
at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:130)
at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:181)
at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:168)
at org.jitsi.jibri.selenium.JibriSelenium.(JibriSelenium.kt:198)
at org.jitsi.jibri.selenium.JibriSelenium.(JibriSelenium.kt:168)
at org.jitsi.jibri.service.impl.FileRecordingJibriService.(FileRecordingJibriService.kt:109)
at org.jitsi.jibri.service.impl.FileRecordingJibriService.(FileRecordingJibriService.kt:102)
at org.jitsi.jibri.JibriManager.startFileRecording(JibriManager.kt:139)
at org.jitsi.jibri.api.xmpp.XmppApi.handleStartService(XmppApi.kt:308)
at org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq(XmppApi.kt:206)
at org.jitsi.jibri.api.xmpp.XmppApi.handleJibriIq(XmppApi.kt:178)
at org.jitsi.jibri.api.xmpp.XmppApi.handleIq(XmppApi.kt:160)
at org.jitsi.xmpp.mucclient.MucClient.handleIq(MucClient.java:533)
at org.jitsi.xmpp.mucclient.MucClient.access$300(MucClient.java:51)
at org.jitsi.xmpp.mucclient.MucClient$3.handleIQRequest(MucClient.java:496)
at org.jivesoftware.smack.AbstractXMPPConnection$3.run(AbstractXMPPConnection.java:1568)
at org.jivesoftware.smack.AbstractXMPPConnection$10.run(AbstractXMPPConnection.java:2146)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
2022-01-23 10:01:39.077 INFOS: [58] InternalHttpApi$internalApiModule$2$1$1.invokeSuspend#58: Jibri gracefully shutting down
2022-01-23 10:01:39.098 INFOS: [60] MainKt$main$gracefulShutdownHandler$1.invoke#111: Jibri has been told to graceful shutdown, waiting to be idle before exiting

All executables are on the same machine.
Linux jitsi.myweb.com 5.10.0-10-amd64 #1 SMP Debian 5.10.84-1 (2021-12-08) x86_64 GNU/Linux

Packages versions

ii jitsi-meet 2.0.6826-1 all WebRTC JavaScript video conferences
ii jitsi-meet-prosody 1.0.5764-1 all Prosody configuration for Jitsi Meet
ii jitsi-meet-turnserver 1.0.5764-1 all Configures coturn to be used with Jitsi Meet
ii jitsi-meet-web 1.0.5764-1 all WebRTC JavaScript video conferences
ii jitsi-meet-web-config 1.0.5764-1 all Configuration for web serving of Jitsi Meet
ii jitsi-videobridge2 2.1-607-g153f7e4e-1 all WebRTC compatible Selective Forwarding Unit (SFU)
ii jibri 8.0-116-gca0c772-1 all Jibri

ii openjdk-17-jdk:amd64 17.0.1+12-1+deb11u2 amd64 OpenJDK Development Kit (JDK)
ii openjdk-17-jdk-headless:amd64 17.0.1+12-1+deb11u2 amd64 OpenJDK Development Kit (JDK) (headless)
ii openjdk-17-jre:amd64 17.0.1+12-1+deb11u2 amd64 OpenJDK Java runtime, using Hotspot JIT
ii openjdk-17-jre-headless:amd64 17.0.1+12-1+deb11u2 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)

ii google-chrome-stable 97.0.4692.99-1 amd64 The web browser from Google
Driver info: chromedriver=97.0.4692.71

My 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"
        xmpp-server-hosts = ["jitsi.myweb.com"]
       xmpp-domain = "jitsi.myweb.com"
        control-login = {
           // The domain to use for logging in
           domain =  "auth.jitsi.myweb.com"
           // The credentials for logging in
           username = "jibri"
           password = "XXXXXXXX"
        control-muc = {
           domain = "internal.auth.jitsi.myweb.com"
           room-name = "JibriBrewery"
           nickname = "jibri-nickname"
        call-login = {
           domain =  "recorder.jitsi.myweb.com"
           username = "recorder"
           password = "XXXXXXXX"
        strip-from-room-domain = "conference."
        usage-timeout = 0
        trust-all-xmpp-certs = true
        // room_jid_domain_string_to_strip_from_start = "conference."
        // usage_timeout = "0"
recording {
recordings-directory = “/var/recordings”
# TODO: make this an optional param and remove the default
finalize-script = “/var/recordings/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
ffmpeg {
resolution = “1920x1080”
// The audio source that will be used to capture audio on Linux
audio-source = “alsa”
// The audio device that will be used to capture audio on Linux
audio-device = “plug:bsnoop”
chrome {
// The flags which will be passed to chromium when launching
flags = [
“–no-sandbox”,
“–disable-setuid-sandbox”,
“–use-fake-ui-for-media-stream”,
“–start-maximized”,
“–kiosk”,
“–enabled”,
“–autoplay-policy=no-user-gesture-required”
}nano log
stats {
enable-stats-d = true
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
              

Yes. Sorry for that. (forget nano log, fool typing !)

I have made some more research and I found that the jibri-xorg.service do not load.
Error is :
Jan 23 13:56:49 jitsi Xorg[2898]: /usr/lib/xorg/Xorg.wrap: Only console users are allowed to run the X server

So the jibri-icewm do not load also. But the Jibri service load !!!

I do have a graphical user interface installed on the server : gnome.

the xorg installed packages are
ii xorg 1:7.7+22 amd64 X-org X Window System
ii xorg-docs-core 1:1.7.1-1.2 all Core documentation for the X-org X Window System
ii xorg-sgml-doctools 1:1.11-1.1 all Common tools for building X-org SGML documentation
ii xserver-xorg 1:7.7+22 amd64 X-org X server
ii xserver-xorg-core 2:1.20.11-1+deb11u1 amd64 Xorg X server - core server
ii xserver-xorg-input-all 1:7.7+22 amd64 X-org X server – input driver metapackage
ii xserver-xorg-input-libinput 0.30.0-1 amd64 X-org X server – libinput input driver
ii xserver-xorg-input-wacom 0.34.99.1-1+b1 amd64 X-org X server – Wacom input driver
ii xserver-xorg-legacy 2:1.20.11-1+deb11u1 amd64 setuid root Xorg server wrapper
ii xserver-xorg-video-all 1:7.7+22 amd64 X-org X server – output driver metapackage
ii xserver-xorg-video-amdgpu 19.1.0-2 amd64 X-org X server – AMDGPU display driver
ii xserver-xorg-video-ati 1:19.1.0-2 amd64 X-org X server – AMD/ATI display driver wrapper
ii xserver-xorg-video-dummy 1:0.3.8-1+b1 amd64 X-org X server – dummy display driver
ii xserver-xorg-video-fbdev 1:0.5.0-1 amd64 X-org X server – fbdev display driver
ii xserver-xorg-video-intel 2:2.99.917+git20200714-1+b1 amd64 X-org X server – Intel i8xx, i9xx display driver
ii xserver-xorg-video-nouveau 1:1.0.17-1 amd64 X-org X server – Nouveau display driver
ii xserver-xorg-video-qxl 0.1.5+git20200331-1 amd64 X-org X server – QXL display driver
ii xserver-xorg-video-radeon 1:19.1.0-2 amd64 X-org X server – AMD/ATI Radeon display driver
ii xserver-xorg-video-vesa 1:2.5.0-1 amd64 X-org X server – VESA display driver
ii xserver-xorg-video-vmware 1:13.3.0-3 amd64 X-org X server – VMware display driver

I cant get the xserver-xorg-input-void because this package does not exist anymore.

ii icewm 2.1.2-1 amd64 wonderful Win95-OS/2-Motif-like window manager
ii icewm-common 2.1.2-1 amd64 wonderful Win95-OS/2-Motif-like window manager
ii xdotool 1:3.20160805.1-4 amd64 simulate (generate) X11 keyboard/mouse input events

3 days after … My machine is now on server configuration. No gui.

All the jibri process load, but still no recording.

Jan 26 17:58:09 jitsi systemd[1]: Starting LSB: Jitsi conference Focus…
Jan 26 17:58:09 jitsi jicofo[13098]: Starting jicofo: jicofo started.
Jan 26 17:58:09 jitsi systemd[1]: Started LSB: Jitsi conference Focus.
Jan 26 17:58:54 jitsi systemd[1]: Starting Jitsi Videobridge…
Jan 26 17:58:54 jitsi systemd[1]: Started Jitsi Videobridge.
Jan 26 17:59:39 jitsi systemd[1]: Started Jibri Xorg Process.
Jan 26 17:59:39 jitsi systemd[1]: Started Jibri Window Manager.
Jan 26 17:59:39 jitsi systemd[1]: Started Jibri Process.
Jan 26 17:59:39 jitsi Xorg[13274]:
X.Org X Server 1.20.11
Jan 26 17:59:39 jitsi Xorg[13274]: X Protocol Version 11, Revision 0
Jan 26 17:59:39 jitsi Xorg[13274]: Build Operating System: linux Debian
Jan 26 17:59:39 jitsi Xorg[13274]: Current Operating System: Linux jitsi 5.10.0-11-amd64 #1 SMP Debian 5.10.92-1 (2022-01-18) x86_64
Jan 26 17:59:39 jitsi Xorg[13274]: Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.10.0-11-amd64 root=UUID=47b514ba-3ecc-406c-8844-c66622d9a962 ro quiet
Jan 26 17:59:39 jitsi Xorg[13274]: Build Date: 16 December 2021 05:08:23PM
Jan 26 17:59:39 jitsi Xorg[13274]: xorg-server 2:1.20.11-1+deb11u1 (Debian -- Support)
Jan 26 17:59:39 jitsi Xorg[13274]: Current version of pixman: 0.40.0
Jan 26 17:59:39 jitsi Xorg[13274]: #011Before reporting problems, check http://wiki.x.org
Jan 26 17:59:39 jitsi Xorg[13274]: #011to make sure that you have the latest version.
Jan 26 17:59:39 jitsi Xorg[13274]: Markers: (–) probed, (**) from config file, (==) default setting,
Jan 26 17:59:39 jitsi Xorg[13274]: #011(++) from command line, (!!) notice, (II) informational,
Jan 26 17:59:39 jitsi Xorg[13274]: #011(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
Jan 26 17:59:39 jitsi Xorg[13274]: (++) Log file: “/var/log/jitsi/jibri/xorg.log”, Time: Wed Jan 26 17:59:39 2022
Jan 26 17:59:39 jitsi Xorg[13274]: (++) Using config file: “/etc/jitsi/jibri/xorg-video-dummy.conf”
Jan 26 17:59:39 jitsi Xorg[13274]: (==) Using system config directory “/usr/share/X11/xorg.conf.d”

I have a problem with xorg.

[ 33496.564] (II) LoadModule: “mouse”
[ 33496.564] (WW) Warning, couldn’t open module mouse
[ 33496.564] (EE) Failed to load module “mouse” (module does not exist, 0)
[ 33496.564] (EE) No input driver matching mouse' [ 33496.564] (II) Falling back to input driver libinput’
[ 33496.564] (II) LoadModule: “libinput”
[ 33496.564] (WW) Warning, couldn’t open module libinput
[ 33496.564] (EE) Failed to load module “libinput” (module does not exist, 0)
[ 33496.564] (II) LoadModule: “kbd”
[ 33496.564] (WW) Warning, couldn’t open module kbd
[ 33496.564] (EE) Failed to load module “kbd” (module does not exist, 0)
[ 33496.564] (EE) No input driver matching kbd' [ 33496.564] (II) Falling back to input driver libinput’
[ 33496.564] (II) LoadModule: “libinput”
[ 33496.564] (WW) Warning, couldn’t open module libinput

I suppose that it is because I did not install the package xserver-xorg-input-void. There is no such package in Debian 10, nor in jitsi.

Where could i get this package ?

Do you have any idea to correct this problem ?

My server is second stand-alone pc without any gui, no gdm, no gnome, no kde, no desktop application. I use ssh from my pc to configure this second machine.

What I have undertood of the jibri application is that it simulate a user using chrome to connect to the conference. The jibri process launch the chrome application in a dummy Xorg.server. That’s why you need thes packages : icewm xdotool xserver-xorg-input-void xserver-xorg-video-dummy.

To config jibri i followed these instructions : TUTORIAL - How to Install the NEW JIBRI

The Xorg you see on the log is the dummy Xorg from the xserver-xorg-video-dummy package.

So, yes my server is a server.

These are the only xorg package on my server:
ii xorg-sgml-doctools 1:1.11-1.1 all Common tools for building X.Org SGML documentation
ii xserver-xorg-core 2:1.20.11-1+deb11u1 amd64 Xorg X server - core server
ii xserver-xorg-video-dummy 1:0.3.8-1+b1 amd64 X.Org X server – dummy display driver

The xserver-xorg-core is needed by the xserver-xorg-video-dummy package.

I wonder if i will have to compile a xserver-xorg-input-void package for debian 10.

I am missing something ?

@emrah

I found here Debian package depends on xserver-xorg-input-void, removed in bullseye · Issue #423 · jitsi/jibri · GitHub
that the xserver-xorg-input-void package is no more needed.
So my xorg package configuration is OK.

The problem was in jicofo :

I followed these tutorial