Custom TranscriptionService (Vosk) not instantiable

Hi Jitsi Team,

Thanks a lot for this great piece of software! Tried out the docker-jitsi-meet setup and apart from a few configuration pitfalls it works like a charm :slight_smile:

Thanks a lot for your contribution @Nickolay_Shmyrev,

I tried out your custom transcription service and unfortunately get the following error

SEVERE: [717] org.jitsi.jigasi.TranscriptionGateway.createOutgoingCall().102 Cannot instantiate custom transcription service

I looked at the respective piece of code and cannot figure out why the instantiation fails. Transcription using the Google API works, so my overall setup should be fine.

I added the line
org.jitsi.jigasi.transcription.customService=org.jitsi.jigasi.transcription.VoskTranscriptionService
to my sip-communicator.properties and the code seems to also get this prop because it enters this fork, otherwise I wouldn’t be getting this error I believe. Is there any additional config I forgot to modify? Do I need to disable the Google transcription somehow? If I understood correctly it should only use the Google API as fallback anyways, so I doubt it.

The latest alphacep/kaldi-en docker images is also running on 2700:2700, and it works when I manually send audio to it, so that shouldn’t be the issue either.

Do you happen to have an idea why this error is occurring?

Best,
Son

Is there anything else in the log. There must be earlier errors. Provide the whole log for analysis

There are a few errors which seem to be normal from what I’ve gathered in the forum

Here’s the initialization log

jigasi_1      | Jigasi 2020-11-26 15:52:25.809 INFO: [11] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() Normal classloader
jigasi_1      | Jigasi 2020-11-26 15:52:25.810 INFO: [11] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() failed to find jitsi-defaults.properties with class loader, will continue without it.
jigasi_1      | Jigasi 2020-11-26 15:52:25.811 INFO: [11] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() Normal classloader
jigasi_1      | Jigasi 2020-11-26 15:52:25.811 INFO: [11] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() failed to find jitsi-default-overrides.properties with class loader, will continue without it.
jigasi_1      | Jigasi 2020-11-26 15:52:25.837 INFO: [11] impl.resources.ResourceManagementActivator.start().81 Resource manager STARTED
jigasi_1      | Jigasi 2020-11-26 15:52:25.841 INFO: [11] impl.resources.ResourceManagementActivator.start().90 Resource manager REGISTERED
jigasi_1      | Jigasi 2020-11-26 15:52:25.844 INFO: [11] impl.dns.DnsUtilActivator.start().120 DNS service ... [STARTING]
jigasi_1      | Jigasi 2020-11-26 15:52:25.869 INFO: [11] util.NetworkUtils.<clinit>().117 java.net.preferIPv6Addresses=null
jigasi_1      | Jigasi 2020-11-26 15:52:25.870 INFO: [11] util.NetworkUtils.<clinit>().118 java.net.preferIPv4Stack=null
jigasi_1      | Jigasi 2020-11-26 15:52:25.883 INFO: [11] impl.dns.DnsUtilActivator.start().146 ParallelResolver ... [REGISTERED]
jigasi_1      | Jigasi 2020-11-26 15:52:25.883 INFO: [11] impl.dns.DnsUtilActivator.start().160 DNS service ... [STARTED]
jigasi_1      | Jigasi 2020-11-26 15:52:26.126 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().92 Network Address Manager         ...[  STARTED ]
jigasi_1      | Jigasi 2020-11-26 15:52:26.126 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().98 Network Address Manager Service ...[REGISTERED]
jigasi_1      | Jigasi 2020-11-26 15:52:26.129 INFO: [12] impl.netaddr.NetworkConfigurationWatcher.checkNetworkInterfaces().398 Currently Active eth0:[/172.19.0.10]
jigasi_1      | Jigasi 2020-11-26 15:52:26.131 INFO: [12] impl.dns.DnsUtilActivator.logDNSServers().295 Loading or Reloading resolver config, default DNS servers are: 127.0.0.11,
jigasi_1      | Jigasi 2020-11-26 15:52:26.167 WARNING: [11] impl.sysactivity.SystemActivityNotifications.<clinit>().141 Failed to initialize native counterpart
jigasi_1      | java.lang.UnsatisfiedLinkError: /tmp/jna--1160142225/jna6269200756900252183.tmp: libgdk-x11-2.0.so.0: cannot open shared object file: No such file or directory
jigasi_1      | 	at java.lang.ClassLoader$NativeLibrary.load(Native Method)
jigasi_1      | 	at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1934)
jigasi_1      | 	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1817)
jigasi_1      | 	at java.lang.Runtime.load0(Runtime.java:810)
jigasi_1      | 	at java.lang.System.load(System.java:1088)
jigasi_1      | 	at org.jitsi.util.JNIUtils.loadLibrary(JNIUtils.java:96)
jigasi_1      | 	at org.jitsi.util.JNIUtils.loadLibrary(JNIUtils.java:37)
jigasi_1      | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotifications.<clinit>(SystemActivityNotifications.java:125)
jigasi_1      | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotificationsServiceImpl.isSupported(SystemActivityNotificationsServiceImpl.java:606)
jigasi_1      | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotificationsServiceImpl.start(SystemActivityNotificationsServiceImpl.java:143)
jigasi_1      | 	at net.java.sip.communicator.impl.sysactivity.SysActivityActivator.start(SysActivityActivator.java:70)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)
jigasi_1      | Jigasi 2020-11-26 15:52:26.197 SEVERE: [11] impl.sysactivity.NetworkManagerListenerImpl.<init>().60 Cannot obtain dbus connection
jigasi_1      | org.freedesktop.dbus.exceptions.DBusException: Failed to connect to bus No such file or directory
jigasi_1      | 	at org.freedesktop.dbus.DBusConnection.<init>(Unknown Source)
jigasi_1      | 	at org.freedesktop.dbus.DBusConnection.getConnection(Unknown Source)
jigasi_1      | 	at net.java.sip.communicator.impl.sysactivity.NetworkManagerListenerImpl.<init>(NetworkManagerListenerImpl.java:56)
jigasi_1      | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
jigasi_1      | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
jigasi_1      | 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
jigasi_1      | 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
jigasi_1      | 	at java.lang.Class.newInstance(Class.java:442)
jigasi_1      | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotificationsServiceImpl.getCurrentRunningManager(SystemActivityNotificationsServiceImpl.java:643)
jigasi_1      | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotificationsServiceImpl.start(SystemActivityNotificationsServiceImpl.java:154)
jigasi_1      | 	at net.java.sip.communicator.impl.sysactivity.SysActivityActivator.start(SysActivityActivator.java:70)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)
jigasi_1      | Jigasi 2020-11-26 15:52:26.205 INFO: [11] impl.packetlogging.PacketLoggingActivator.start().100 Packet Logging Service ...[REGISTERED]
jigasi_1      | Jigasi 2020-11-26 15:52:26.208 INFO: [11] service.notification.NotificationServiceActivator.start().48 Notification Service...[  STARTED ]
jigasi_1      | Jigasi 2020-11-26 15:52:26.213 INFO: [11] service.notification.NotificationServiceActivator.start().55 Notification Service ...[REGISTERED]
jigasi_1      | Jigasi 2020-11-26 15:52:26.560 SEVERE: [11] org.jitsi.impl.neomedia.device.DeviceConfiguration.log() Failed to register custom Renderer org.jitsi.impl.neomedia.jmfext.media.renderer.audio.PulseAudioRenderer with JMF.
jigasi_1      | java.lang.IllegalStateException: audioSystem
jigasi_1      | 	at org.jitsi.impl.neomedia.jmfext.media.renderer.audio.PulseAudioRenderer.<init>(PulseAudioRenderer.java:156)
jigasi_1      | 	at org.jitsi.impl.neomedia.jmfext.media.renderer.audio.PulseAudioRenderer.<init>(PulseAudioRenderer.java:136)
jigasi_1      | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
jigasi_1      | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
jigasi_1      | 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
jigasi_1      | 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
jigasi_1      | 	at java.lang.Class.newInstance(Class.java:442)
jigasi_1      | 	at org.jitsi.impl.neomedia.device.DeviceConfiguration.registerCustomRenderers(DeviceConfiguration.java:1047)
jigasi_1      | 	at org.jitsi.impl.neomedia.device.DeviceConfiguration.<init>(DeviceConfiguration.java:366)
jigasi_1      | 	at org.jitsi.impl.neomedia.MediaServiceImpl.<init>(MediaServiceImpl.java:162)
jigasi_1      | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
jigasi_1      | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
jigasi_1      | 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
jigasi_1      | 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
jigasi_1      | 	at java.lang.Class.newInstance(Class.java:442)
jigasi_1      | 	at org.jitsi.impl.libjitsi.LibJitsiImpl$ServiceLock.initializeService(LibJitsiImpl.java:196)
jigasi_1      | 	at org.jitsi.impl.libjitsi.LibJitsiImpl$ServiceLock.getService(LibJitsiImpl.java:131)
jigasi_1      | 	at org.jitsi.impl.libjitsi.LibJitsiImpl.getService(LibJitsiImpl.java:91)
jigasi_1      | 	at org.jitsi.impl.libjitsi.LibJitsiOSGiImpl.getService(LibJitsiOSGiImpl.java:69)
jigasi_1      | 	at org.jitsi.service.libjitsi.LibJitsi.invokeGetServiceOnImpl(LibJitsi.java:173)
jigasi_1      | 	at org.jitsi.service.libjitsi.LibJitsi.getMediaService(LibJitsi.java:125)
jigasi_1      | 	at net.java.sip.communicator.impl.neomedia.NeomediaActivator.start(NeomediaActivator.java:391)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jigasi_1      | 	at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)
jigasi_1      | Jigasi 2020-11-26 15:52:26.594 INFO: [11] impl.neomedia.NeomediaActivator.start().542 Audio Notifier Service ...[REGISTERED]
jigasi_1      | Jigasi 2020-11-26 15:52:26.613 INFO: [11] org.jitsi.version.AbstractVersionActivator.log() VersionService registered: Jigasi 1.1.126-g6df3db2
jigasi_1      | Jigasi 2020-11-26 15:52:26.630 FINE: [11] plugin.reconnectplugin.ReconnectPluginActivator.start().193 Found 0 already installed providers.
jigasi_1      | Jigasi 2020-11-26 15:52:26.693 INFO: [11] org.jitsi.jigasi.JigasiBundleActivator.start().223 skipped initialization of SipGateway
jigasi_1      | Jigasi 2020-11-26 15:52:26.693 INFO: [11] org.jitsi.jigasi.JigasiBundleActivator.start().228 initialized TranscriptionGateway
jigasi_1      | SLF4J: Class path contains multiple SLF4J bindings.
jigasi_1      | SLF4J: Found binding in [jar:file:/usr/share/jigasi/lib/slf4j-jdk14-1.7.26.jar!/org/slf4j/impl/StaticLoggerBinder.class]
jigasi_1      | SLF4J: Found binding in [jar:file:/usr/share/jigasi/lib/slf4j-simple-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
jigasi_1      | SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
jigasi_1      | SLF4J: Actual binding is of type [org.slf4j.impl.JDK14LoggerFactory]
jigasi_1      | Jigasi 2020-11-26 15:52:26.775 INFO: [11] org.eclipse.jetty.util.log.initialized() Logging initialized @1574ms to org.eclipse.jetty.util.log.Slf4jLog
jigasi_1      | Jigasi 2020-11-26 15:52:26.845 INFO: [11] org.eclipse.jetty.server.Server.doStart() jetty-9.4.17.v20190418; built: 2019-04-18T19:45:35.259Z; git: aa1c656c315c011c01e7b21aabb04066635b9f67; jvm 1.8.0_272-8u272-b10-0+deb9u1-b10
jigasi_1      | Jigasi 2020-11-26 15:52:26.905 INFO: [11] org.eclipse.jetty.server.AbstractConnector.doStart() Started MuxServerConnector@2f1a06d0{HTTP/1.1,[http/1.1]}{0.0.0.0:8788}
jigasi_1      | Jigasi 2020-11-26 15:52:26.905 INFO: [11] org.eclipse.jetty.server.Server.doStart() Started @1709ms
jigasi_1      | Jigasi 2020-11-26 15:52:26.906 INFO: [11] org.jitsi.rest.AbstractJettyBundleActivator.log() Not starting the Jetty service for org.jitsi.jigasi.rest.TranscriptServerBundleActivator(port=-1)
jigasi_1      | Jigasi 2020-11-26 15:52:26.912 WARNING: [11] org.jitsi.jigasi.xmpp.CallControl.<init>().139 Always trust in remote TLS certificates mode is enabled
jigasi_1      | Jigasi 2020-11-26 15:52:26.914 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.RESOURCE_PRIORITY=30
jigasi_1      | Jigasi 2020-11-26 15:52:26.915 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.VIDEO_CALLING_DISABLED=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.915 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.IS_CARBON_DISABLED=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.916 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.VIDEO_CALLING_DISABLED=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.916 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.SERVER_ADDRESS=server.ciara.xmpp
jigasi_1      | Jigasi 2020-11-26 15:52:26.916 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.SingleCallInProgressPolicy.enabled=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.917 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946589.actions.actionType1606405946589.default=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.917 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.PASS=**********
jigasi_1      | Jigasi 2020-11-26 15:52:26.918 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.H264/90000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.919 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.AUTO_GENERATE_RESOURCE=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.919 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.vosk.websocket_url=ws://localhost:2700
jigasi_1      | Jigasi 2020-11-26 15:52:26.920 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.neomedia.audioSystem.audiosilence.captureDevice_list=["AudioSilenceCaptureDevice", "AudioSilenceCaptureDevice:noTransferData"]
jigasi_1      | Jigasi 2020-11-26 15:52:26.921 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.GSM/8000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.921 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.opus/48000=750
jigasi_1      | Jigasi 2020-11-26 15:52:26.921 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.service.gui.ALWAYS_TRUST_MODE_ENABLED=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.922 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.IS_USE_UPNP=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.922 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946588.actions.actionType1606405946588.enabled=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.923 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.IM_DISABLED=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.923 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.USE_DEFAULT_STUN_SERVER=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.924 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.BASE_URL=localhost/transcripts
jigasi_1      | Jigasi 2020-11-26 15:52:26.924 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.PROTOCOL=Jabber
jigasi_1      | Jigasi 2020-11-26 15:52:26.925 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.OVERRIDE_ENCODINGS=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.925 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.IS_PREFERRED_PROTOCOL=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.925 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.packetlogging.PACKET_LOGGING_ENABLED=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.926 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.ENCRYPTION_PROTOCOL_STATUS.DTLS-SRTP=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.927 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.VP8/90000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.927 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.SILK/24000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.928 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.ENABLE_TRANSLATION=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.928 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946588.actions.actionType1606405946588=PopupMessageAction
jigasi_1      | Jigasi 2020-11-26 15:52:26.929 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.G722/8000=705
jigasi_1      | Jigasi 2020-11-26 15:52:26.929 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946589.actions.actionType1606405946589.timeout=-1
jigasi_1      | Jigasi 2020-11-26 15:52:26.930 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.neomedia.codec.audio.opus.encoder.COMPLEXITY=10
jigasi_1      | Jigasi 2020-11-26 15:52:26.930 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.SERVER_ADDRESS=server.ciara.xmpp
jigasi_1      | Jigasi 2020-11-26 15:52:26.931 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.DEFAULT_ENCRYPTION=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.931 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.SERVER_STORED_INFO_DISABLED=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.931 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.IS_ACCOUNT_DISABLED=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.932 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.IS_USE_ICE=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.932 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.H263-1998/90000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.932 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.BREWERY=jigasibrewery@internal-muc.ciara.xmpp
jigasi_1      | Jigasi 2020-11-26 15:52:26.934 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.ALLOW_NON_SECURE=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.935 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.SILK/12000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.936 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.telephone-event/8000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.936 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946588.actions.actionType1606405946588.default=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.936 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.customService=org.jitsi.jigasi.transcription.VoskTranscriptionService
jigasi_1      | Jigasi 2020-11-26 15:52:26.937 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.speex/16000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.937 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.RECORD_AUDIO_FORMAT=wav
jigasi_1      | Jigasi 2020-11-26 15:52:26.938 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.SAVE_JSON=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.938 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.ADVERTISE_URL=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.938 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.ENCRYPTION_PROTOCOL.DTLS-SRTP=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.938 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.ENCRYPTED_PASSWORD=**********
jigasi_1      | Jigasi 2020-11-26 15:52:26.939 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.USER_ID=jigasi@auth.ciara.xmpp
jigasi_1      | Jigasi 2020-11-26 15:52:26.940 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.SILK/16000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.940 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.SILK/8000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.941 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.ENABLE_SIP=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.942 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.speex/8000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.943 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1=acc1
jigasi_1      | Jigasi 2020-11-26 15:52:26.943 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.PCMA/8000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.943 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.HEALTH_CHECK_SIP_URI=
jigasi_1      | Jigasi 2020-11-26 15:52:26.944 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.SEND_JSON=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.944 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.IS_SERVER_OVERRIDDEN=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.945 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.BREWERY_ENABLED=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.945 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.ENABLE_TRANSCRIPTION=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.945 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946588.actions.actionType1606405946588.timeout=-1
jigasi_1      | Jigasi 2020-11-26 15:52:26.945 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.946 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.ACCOUNT_UID=Jabber:jigasi@auth.ciara.xmpp
jigasi_1      | Jigasi 2020-11-26 15:52:26.946 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.PCMU/8000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.947 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946589.actions.actionType1606405946589.enabled=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.947 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.SAVE_TXT=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.947 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.iLBC/8000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.948 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.JINGLE_NODES_ENABLED=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.948 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.USER_ID=jigasi@auth.ciara.xmpp
jigasi_1      | Jigasi 2020-11-26 15:52:26.949 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.DOMAIN_BASE=ciara.xmpp
jigasi_1      | Jigasi 2020-11-26 15:52:26.949 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.IS_SERVER_OVERRIDDEN=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.950 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.IS_FILE_TRANSFER_DISABLED=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.950 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946589=NewSelectedDevice
jigasi_1      | Jigasi 2020-11-26 15:52:26.951 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946588=DeviceConfigurationChanged
jigasi_1      | Jigasi 2020-11-26 15:52:26.951 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.HEALTH_CHECK_TIMEOUT=600000
jigasi_1      | Jigasi 2020-11-26 15:52:26.951 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.notifications.eventType1606405946589.actions.actionType1606405946589=PopupMessageAction
jigasi_1      | Jigasi 2020-11-26 15:52:26.952 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.xmpp.acc.AUTO_DISCOVER_STUN=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.952 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.SEND_TXT=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.952 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.jetty.port=-1
jigasi_1      | Jigasi 2020-11-26 15:52:26.953 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.DIRECTORY=/tmp/transcripts
jigasi_1      | Jigasi 2020-11-26 15:52:26.953 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.AUTO_DISCOVER_JINGLE_NODES=false
jigasi_1      | Jigasi 2020-11-26 15:52:26.953 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.transcription.RECORD_AUDIO=true
jigasi_1      | Jigasi 2020-11-26 15:52:26.954 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() net.java.sip.communicator.impl.protocol.jabber.acc1.Encodings.speex/32000=0
jigasi_1      | Jigasi 2020-11-26 15:52:26.955 INFO: [1] org.jitsi.impl.configuration.ConfigurationServiceImpl.log() org.jitsi.jigasi.HEALTH_CHECK_INTERVAL=300000
jigasi_1      | Jigasi 2020-11-26 15:52:27.383 INFO: [34] impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.registrationStateChanged().127 Jingle : ON
jigasi_1      | Jigasi 2020-11-26 15:52:27.439 INFO: [34] impl.protocol.jabber.ProtocolProviderServiceJabberImpl.authenticated().2423 Authenticated: false
jigasi_1      | Jigasi 2020-11-26 15:52:27.452 INFO: [34] impl.protocol.jabber.OperationSetPersistentPresenceJabberImpl.createAccountPhotoPresenceInterceptor().1987 Can not retrieve account avatar for jigasi@auth.my.domain/jitsi-1uc1kr5: XMPPError: item-not-found - cancel
jigasi_1      | Jigasi 2020-11-26 15:52:27.454 INFO: [46] impl.protocol.jabber.JingleNodesServiceDiscovery.run().111 Start Jingle Nodes discovery!
jigasi_1      | Jigasi 2020-11-26 15:52:27.455 INFO: [46] impl.protocol.jabber.JingleNodesServiceDiscovery.run().151 Jingle Nodes discovery terminated!
jigasi_1      | Jigasi 2020-11-26 15:52:27.456 INFO: [46] impl.protocol.jabber.JingleNodesServiceDiscovery.run().152 Found 0 Jingle Nodes relay for account: jigasi@auth.my.domain in 2 ms.
jigasi_1      | Jigasi 2020-11-26 15:52:27.470 INFO: [34] org.jitsi.jigasi.xmpp.CallControlMucActivator.joinCommonRoom().299 Joining call control room: jigasibrewery@internal-muc.my.domain
pps:ProtocolProviderServiceJabberImpl(Jabber:jigasi@auth.my.domain)
jigasi_1      | Jigasi 2020-11-26 15:52:27.479 SEVERE: [49] impl.protocol.jabber.InfoRetreiver.retrieveDetails().369 Cannot load details for contact jigasi@auth.my.domain : XMPPError: item-not-found - cancel
jigasi_1      | Jigasi 2020-11-26 15:52:27.509 INFO: [41] impl.protocol.jabber.ChatRoomJabberImpl.joined().1256 jigasibrewery@internal-muc.my.domain/focus has joined the jigasibrewery@internal-muc.my.domain chat room.

and the probably more relevant logs when i click on the CC button:

jicofo_1      | Jicofo 2020-11-26 16:01:15.355 SEVERE: [143] org.jitsi.jicofo.jigasi.TranscriberManager.log() Error finding room for null
jicofo_1      | Jicofo 2020-11-26 16:01:15.355 INFO: [143] org.jitsi.jicofo.jigasi.TranscriberManager.log() Attempting to invite transcriber
jigasi_1      | Jigasi 2020-11-26 16:01:15.363 WARNING: [53] org.jitsi.jigasi.xmpp.CallControl.checkAuthorized().287 Requests are not secured by JID filter!
jigasi_1      | Jigasi 2020-11-26 16:01:15.364 INFO: [53] org.jitsi.jigasi.xmpp.CallControl.handleDialIq().211 [ctx=1606406475362655335753] Got dial request null -> jitsi_meet_transcribe room: 258236848@muc.my.domain
jigasi_1      | Jigasi 2020-11-26 16:01:15.365 SEVERE: [53] org.jitsi.jigasi.TranscriptionGateway.createOutgoingCall().102 Cannot instantiate custom transcription service
jigasi_1      | Jigasi 2020-11-26 16:01:15.641 INFO: [53] org.jitsi.jigasi.JvbConference.start().437 [ctx=1606406475362655335753] Starting JVB conference room: 258236848@muc.my.domain
jigasi_1      | Jigasi 2020-11-26 16:01:15.644 INFO: [53] org.jitsi.jigasi.JvbConference.setXmppProvider().576 [ctx=1606406475362655335753] Using ProtocolProviderServiceJabberImpl(Jabber:2efe621a@my.domain/2efe621a)

and after that Jigasi starts the fallback to the Google API
Thanks for the assistance!

This error mostly means you do not have VoskTranscriptionService class in the code. Are you sure you compiled latest jigasi?

Do you run Jigasi in docker? Or did you build it yourself? I don’t think docker is updated.

1 Like

I’m running Jigasi in Docker. Using the docker-jitsi-meet image, which installs Jigasi from apt so I thought it would be the latest.

Just checked the repo and the last release is from August 2019 :man_facepalming:
Seems very likely that you have it spot on. I’ll build it from source and report back whether this solved it.

Thanks a lot!

2 Likes

Ok, please try to build from source and let me know.

I have a task to update docker for docker-jitsi-meet to include all the vosk stuff, but didn’t make it yet. You can subscribe to https://github.com/alphacep/vosk-api/issues/113 for details.

1 Like

I realised the same, and now trying to work out with the build version jigasi=1.1-38-g8f3c241-1 for debian (November 26). Will update if there is any progress.

Awesome, after recompilation from source it works like a charm! Very nice job with the integration and the Vosk server itself @Nickolay_Shmyrev, and thanks for troubleshooting as well :slight_smile:

2 Likes

Hi. Did you do this in docker or on the host ?
I made a deb build from the repo and tried to install inside docker but it seems to be missing a dependency (‘ruby-hocon’) which I couldn’t find in debian stretch (the base for docker-jitsi)
Thanks.

I did it in Docker. Haven’t encountered the missing dependency issue you have. On first glance I can’t find this dependency anywhere in the Jigasi project, are you sure this isn’t from your own custom Docker image?

I simply followed the Jigasi readme: https://github.com/jitsi/jigasi#install-and-run

I actually made a debian package using the debian build script.
This is good to hear. I will try using the readme instructions.

Sorry I am not too familiar with the debian package dependencies.
But on quick search on latest code I see that dependency here.
It seems to be added a week ago. I assume It has something to do with configuration file changes somewhere.
May be I should try a source before that.
Thank you very much.