jitsi / jigasi

Jigasi: a server-side application acting as a gateway to Jitsi Meet conferences. Currently allows regular SIP clients to join meetings and provides transcription capabilities.
Apache License 2.0
525 stars 295 forks source link

vosk transcription not working #507

Closed himpierre closed 11 months ago

himpierre commented 11 months ago

Description

Hello Devs.

I'm trying to use vosk as a transcription provider and followed the readme step step by step. Jigasi runs fine. SIP works fine. Vosk docker container runs fine. But as soon as i click "subtitles german" I get this in the logs:

2023-10-20 16:29:44.832 SEVERE: [112] VoskTranscriptionService$VoskWebsocketStreamingSession.end#324: Error to finalize websocket connection for participant livevoicesmobilizeangrily/a02f0e26
2023-10-20 16:29:44.845 SEVERE: [112] VoskTranscriptionService$VoskWebsocketStreamingSession.end#324: Error to finalize websocket connection for participant livevoicesmobilizeangrily/focus
2023-10-20 16:29:44.856 SEVERE: [137] RTPConnectorOutputStream.send#483: Failed to send a packet to target /172.17.0.1:10000:java.io.IOException: No active socket.
2023-10-20 16:29:44.856 SEVERE: [131] RTPConnectorOutputStream.send#483: Failed to send a packet to target /172.17.0.1:10000:java.io.IOException: No active socket.

Why is Jigasi sending payload to port 10000 when configured to use 2700?

Current behavior

Vosk transcription does not work.

Expected Behavior

Should work.

Environment details

himpierre commented 11 months ago

There is a rather similar thread over at the other repo. https://github.com/jitsi/docker-jitsi-meet/issues/1473

himpierre commented 11 months ago

I tried to let the vosk container listen to port 10000 and set this port to sip-ommunicator.proberties too to no avail.

Is this integration supposed to run actually and I just configured something wrong?

cheers, t.

nshmyrev commented 11 months ago

RTP port 10000 has no relation to Vosk, the error about port 10000 shows separate problem. Vosk works on 2700 and should work there. You need to check the whole log, it seems that connection is successfully established.

You still need to verify Vosk container works, it often exits due to insufficient memory. It requires 16Gb or so.

himpierre commented 11 months ago

Thanks for your answer @nshmyrev. But I don't think it's related to memory. I can see no OOM Killer or restart of the docker container. What I see is:

root@viko:~# docker logs thirsty_cannon 
LOG (VoskAPI:ReadDataFiles():model.cc:213) Decoding params beam=13 max-active=7000 lattice-beam=6
LOG (VoskAPI:ReadDataFiles():model.cc:216) Silence phones 1:2:3:4:5:6:7:8:9:10
LOG (VoskAPI:RemoveOrphanNodes():nnet-nnet.cc:948) Removed 0 orphan nodes.
LOG (VoskAPI:RemoveOrphanComponents():nnet-nnet.cc:847) Removing 0 orphan components.
LOG (VoskAPI:ReadDataFiles():model.cc:249) Loading i-vector extractor from /opt/vosk-model-de/model/ivector/final.ie
LOG (VoskAPI:ComputeDerivedVars():ivector-extractor.cc:183) Computing derived variables for iVector extractor
LOG (VoskAPI:ComputeDerivedVars():ivector-extractor.cc:204) Done.
LOG (VoskAPI:ReadDataFiles():model.cc:282) Loading HCLG from /opt/vosk-model-de/model/graph/HCLG.fst
LOG (VoskAPI:ReadDataFiles():model.cc:300) Loading words from /opt/vosk-model-de/model/graph/words.txt
LOG (VoskAPI:ReadDataFiles():model.cc:311) Loading winfo /opt/vosk-model-de/model/graph/phones/word_boundary.int
LOG (VoskAPI:ReadDataFiles():model.cc:318) Loading subtract G.fst model from /opt/vosk-model-de/model/rescore/G.fst
LOG (VoskAPI:ReadDataFiles():model.cc:320) Loading CARPA model from /opt/vosk-model-de/model/rescore/G.carpa
LOG (VoskAPI:ReadDataFiles():model.cc:326) Loading RNNLM model from /opt/vosk-model-de/model/rnnlm/final.raw
INFO:root:Connection from ('172.17.0.1', 41510)
INFO:root:Connection from ('172.17.0.1', 41512)
INFO:root:Connection from ('172.17.0.1', 41514)
INFO:root:Connection from ('172.17.0.1', 41524)
ERROR:websockets.server:Error in connection handler
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/lib/python3/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/lib/python3/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/lib/python3/dist-packages/websockets/protocol.py", line 1047, in read_frame
    frame = await Frame.read(
  File "/usr/lib/python3/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.9/asyncio/streams.py", line 721, in readexactly
    raise exceptions.IncompleteReadError(incomplete, n)
asyncio.exceptions.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

So allthough the connection is initiated it fails short afterwards. At least that's my take away from the logs.

Do you have a commandline test at hand? I believe I could pipe an audiofile to the container.

cheers, t.

himpierre commented 11 months ago

There is even a transcript txt file. But it's empty. It seems the connection between vosk and jitsi still fails.

root@viko:~# cat /var/lib/jigasi/transcripts/2023-10-21T09\:15\:45.429111Z_3fbc7c98-ad21-4b12-bc77-d36f9f6677bd/transcript_2023-10-21T09\:15\:45.429931Z_c8d1c791-1ef5-4550-b398-56ec49587010.txt 
Transcript of conference held at Oct 21, 2023 in room familyaccuseddepartfrankly@conference.viko.redacted.de
Initial people present at 9:15:45 AM:
        Fellow Jitser
        thomas

Transcript, started at 9:15:45 AM:
________________________________________________________________________________
<9:15:45 AM> thomas joined the conference
<9:15:58 AM> thomas left the conference
<9:15:58 AM> Fellow Jitser left the conference
________________________________________________________________________________

End of transcript at Oct 21, 2023, 9:15:58 AMroot@viko:~# 
root@viko:~#
nshmyrev commented 11 months ago

From the log it is fine. What about jigasi log, anything suspicious there?

himpierre commented 11 months ago

From the log it is fine. What about jigasi log, anything suspicious there?

Yes. :)

2023-10-22 11:46:03.142 INFO: [56] net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener.joined: farpoliciesanticipatehard@conference.meetings.redactedcloud.de/3d787e7e has joined the farpoliciesanticipatehard@conference.meetings.redactedcloud.de chat room.
2023-10-22 11:46:03.257 WARNING: [56] org.eclipse.jetty.util.TypeUtil.mapToService: Service Provider failed to load
java.util.ServiceConfigurationError: 
        at org.eclipse.jetty.util.ServiceLoaderSpliterator$ServiceProvider.get(ServiceLoaderSpliterator.java:101)
        at org.eclipse.jetty.util.TypeUtil.mapToService(TypeUtil.java:768)
        at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:46)
        at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:326)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
        at org.eclipse.jetty.websocket.core.WebSocketExtensionRegistry.<init>(WebSocketExtensionRegistry.java:34)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:55)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:49)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:43)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:67)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:76)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService$VoskWebsocketStreamingSession.<init>(VoskTranscriptionService.java:231)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService.initStreamingSession(VoskTranscriptionService.java:171)
        at org.jitsi.jigasi.transcription.Participant.joined(Participant.java:523)
        at org.jitsi.jigasi.transcription.Transcriber.participantJoined(Transcriber.java:303)
        at org.jitsi.jigasi.TranscriptionGatewaySession.notifyChatRoomMemberJoined(TranscriptionGatewaySession.java:283)
        at org.jitsi.jigasi.JvbConference.memberPresenceChanged(JvbConference.java:1099)
        at net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl.fireMemberPresenceEvent(ChatRoomJabberImpl.java:1990)
        at net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener.joined(ChatRoomJabberImpl.java:1433)
        at org.jivesoftware.smackx.muc.MultiUserChat$3.processStanza(MultiUserChat.java:254)
        at org.jivesoftware.smack.AbstractXMPPConnection.lambda$invokeStanzaCollectorsAndNotifyRecvListeners$8(AbstractXMPPConnection.java:1619)
        at org.jivesoftware.smack.AsyncButOrdered$Handler.run(AsyncButOrdered.java:151)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.ServiceConfigurationError: org.eclipse.jetty.websocket.core.Extension: Provider org.eclipse.jetty.websocket.core.internal.FragmentExtension could not be instantiated
        at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:582)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:804)
        at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:722)
        at java.base/java.util.ServiceLoader$3.next(ServiceLoader.java:1395)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:39)
        ... 27 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/jetty/util/StaticException
        at org.eclipse.jetty.websocket.core.internal.FragmentExtension.<init>(FragmentExtension.java:42)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:780)
        ... 30 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.StaticException
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
        ... 36 more
2023-10-22 11:46:03.263 WARNING: [56] org.eclipse.jetty.util.TypeUtil.mapToService: Service Provider failed to load
java.util.ServiceConfigurationError: 
        at org.eclipse.jetty.util.ServiceLoaderSpliterator$ServiceProvider.get(ServiceLoaderSpliterator.java:101)
        at org.eclipse.jetty.util.TypeUtil.mapToService(TypeUtil.java:768)
        at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:46)
        at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:326)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
        at org.eclipse.jetty.websocket.core.WebSocketExtensionRegistry.<init>(WebSocketExtensionRegistry.java:34)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:55)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:49)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:43)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:67)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:76)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService$VoskWebsocketStreamingSession.<init>(VoskTranscriptionService.java:231)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService.initStreamingSession(VoskTranscriptionService.java:171)
        at org.jitsi.jigasi.transcription.Participant.joined(Participant.java:523)
        at org.jitsi.jigasi.transcription.Transcriber.participantJoined(Transcriber.java:303)
        at org.jitsi.jigasi.TranscriptionGatewaySession.notifyChatRoomMemberJoined(TranscriptionGatewaySession.java:283)
        at org.jitsi.jigasi.JvbConference.memberPresenceChanged(JvbConference.java:1099)
        at net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl.fireMemberPresenceEvent(ChatRoomJabberImpl.java:1990)
        at net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener.joined(ChatRoomJabberImpl.java:1433)
        at org.jivesoftware.smackx.muc.MultiUserChat$3.processStanza(MultiUserChat.java:254)
        at org.jivesoftware.smack.AbstractXMPPConnection.lambda$invokeStanzaCollectorsAndNotifyRecvListeners$8(AbstractXMPPConnection.java:1619)
        at org.jivesoftware.smack.AsyncButOrdered$Handler.run(AsyncButOrdered.java:151)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.ServiceConfigurationError: org.eclipse.jetty.websocket.core.Extension: Provider org.eclipse.jetty.websocket.core.internal.PerMessageDeflateExtension could not be instantiated
        at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:582)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:804)
        at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:722)
        at java.base/java.util.ServiceLoader$3.next(ServiceLoader.java:1395)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:39)
        ... 27 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/jetty/util/StaticException
        at org.eclipse.jetty.websocket.core.internal.PerMessageDeflateExtension.<init>(PerMessageDeflateExtension.java:67)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:780)
        ... 30 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.StaticException
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
        ... 36 more
2023-10-22 11:46:03.590 INFO: [56] net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener.joined: farpoliciesanticipatehard@conference.meetings.redactedcloud.de/focus has joined the farpoliciesanticipatehard@conference.meetings.redactedcloud.de chat room.
2023-10-22 11:46:03.596 WARNING: [56] org.eclipse.jetty.util.TypeUtil.mapToService: Service Provider failed to load
java.util.ServiceConfigurationError: 
        at org.eclipse.jetty.util.ServiceLoaderSpliterator$ServiceProvider.get(ServiceLoaderSpliterator.java:101)
        at org.eclipse.jetty.util.TypeUtil.mapToService(TypeUtil.java:768)
        at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:46)
        at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:326)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
        at org.eclipse.jetty.websocket.core.WebSocketExtensionRegistry.<init>(WebSocketExtensionRegistry.java:34)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:55)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:49)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:43)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:67)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:76)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService$VoskWebsocketStreamingSession.<init>(VoskTranscriptionService.java:231)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService.initStreamingSession(VoskTranscriptionService.java:171)
        at org.jitsi.jigasi.transcription.Participant.joined(Participant.java:523)
        at org.jitsi.jigasi.transcription.Transcriber.participantJoined(Transcriber.java:303)
        at org.jitsi.jigasi.TranscriptionGatewaySession.notifyChatRoomMemberJoined(TranscriptionGatewaySession.java:283)
        at org.jitsi.jigasi.JvbConference.memberPresenceChanged(JvbConference.java:1099)
        at net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl.fireMemberPresenceEvent(ChatRoomJabberImpl.java:1990)
        at net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener.joined(ChatRoomJabberImpl.java:1433)
        at org.jivesoftware.smackx.muc.MultiUserChat$3.processStanza(MultiUserChat.java:254)
        at org.jivesoftware.smack.AbstractXMPPConnection.lambda$invokeStanzaCollectorsAndNotifyRecvListeners$8(AbstractXMPPConnection.java:1619)
        at org.jivesoftware.smack.AsyncButOrdered$Handler.run(AsyncButOrdered.java:151)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.ServiceConfigurationError: org.eclipse.jetty.websocket.core.Extension: Provider org.eclipse.jetty.websocket.core.internal.FragmentExtension could not be instantiated
        at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:582)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:804)
        at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:722)
        at java.base/java.util.ServiceLoader$3.next(ServiceLoader.java:1395)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:39)
        ... 27 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/jetty/util/StaticException
        at org.eclipse.jetty.websocket.core.internal.FragmentExtension.<init>(FragmentExtension.java:42)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:780)
        ... 30 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.StaticException
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
        ... 36 more
2023-10-22 11:46:03.599 WARNING: [56] org.eclipse.jetty.util.TypeUtil.mapToService: Service Provider failed to load
java.util.ServiceConfigurationError: 
        at org.eclipse.jetty.util.ServiceLoaderSpliterator$ServiceProvider.get(ServiceLoaderSpliterator.java:101)
        at org.eclipse.jetty.util.TypeUtil.mapToService(TypeUtil.java:768)
        at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:46)
        at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:326)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
        at org.eclipse.jetty.websocket.core.WebSocketExtensionRegistry.<init>(WebSocketExtensionRegistry.java:34)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:55)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:49)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:43)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:67)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:76)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService$VoskWebsocketStreamingSession.<init>(VoskTranscriptionService.java:231)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService.initStreamingSession(VoskTranscriptionService.java:171)
        at org.jitsi.jigasi.transcription.Participant.joined(Participant.java:523)
        at org.jitsi.jigasi.transcription.Transcriber.participantJoined(Transcriber.java:303)
        at org.jitsi.jigasi.TranscriptionGatewaySession.notifyChatRoomMemberJoined(TranscriptionGatewaySession.java:283)
        at org.jitsi.jigasi.JvbConference.memberPresenceChanged(JvbConference.java:1099)
        at net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl.fireMemberPresenceEvent(ChatRoomJabberImpl.java:1990)
        at net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener.joined(ChatRoomJabberImpl.java:1433)
        at org.jivesoftware.smackx.muc.MultiUserChat$3.processStanza(MultiUserChat.java:254)
        at org.jivesoftware.smack.AbstractXMPPConnection.lambda$invokeStanzaCollectorsAndNotifyRecvListeners$8(AbstractXMPPConnection.java:1619)
        at org.jivesoftware.smack.AsyncButOrdered$Handler.run(AsyncButOrdered.java:151)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.ServiceConfigurationError: org.eclipse.jetty.websocket.core.Extension: Provider org.eclipse.jetty.websocket.core.internal.PerMessageDeflateExtension could not be instantiated
        at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:582)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:804)
        at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:722)
        at java.base/java.util.ServiceLoader$3.next(ServiceLoader.java:1395)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:39)
        ... 27 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/jetty/util/StaticException
        at org.eclipse.jetty.websocket.core.internal.PerMessageDeflateExtension.<init>(PerMessageDeflateExtension.java:67)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:780)
        ... 30 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.StaticException
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
        ... 36 more
2023-10-22 11:46:03.636 INFO: [56] net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener.joined: farpoliciesanticipatehard@conference.meetings.redactedcloud.de/2491265d has joined the farpoliciesanticipatehard@conference.meetings.redactedcloud.de chat room.
2023-10-22 11:46:03.658 SEVERE: [72] JvbConference.registrationStateChanged#641: [ctx=16979679617102038055986] Registered bosh sid: d02c327d-e108-4a77-9a9e-9c5b9603578b
2023-10-22 11:46:05.645 INFO: [100] net.java.sip.communicator.impl.protocol.jabber.IceUdpTransportManager.createIceAgent: End gathering harvester within 742 ms
2023-10-22 11:46:06.219 INFO: [100] net.java.sip.communicator.impl.protocol.jabber.CallPeerMediaHandlerJabberImpl.harvestCandidates: End candidate harvest within 147 ms
2023-10-22 11:46:06.249 INFO: [100] JvbConference$JvbCallListener.incomingCallReceived#1342: [ctx=16979679617102038055986] Got invite from focus
2023-10-22 11:46:06.263 WARNING: [100] org.eclipse.jetty.util.TypeUtil.mapToService: Service Provider failed to load
java.util.ServiceConfigurationError: 
        at org.eclipse.jetty.util.ServiceLoaderSpliterator$ServiceProvider.get(ServiceLoaderSpliterator.java:101)
        at org.eclipse.jetty.util.TypeUtil.mapToService(TypeUtil.java:768)
        at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:46)
        at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:326)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
        at org.eclipse.jetty.websocket.core.WebSocketExtensionRegistry.<init>(WebSocketExtensionRegistry.java:34)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:55)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:49)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:43)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:67)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:76)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService$VoskWebsocketStreamingSession.<init>(VoskTranscriptionService.java:231)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService.initStreamingSession(VoskTranscriptionService.java:171)
        at org.jitsi.jigasi.transcription.Participant.joined(Participant.java:523)
        at org.jitsi.jigasi.transcription.Transcriber.participantJoined(Transcriber.java:303)
        at org.jitsi.jigasi.TranscriptionGatewaySession.addInitialMembers(TranscriptionGatewaySession.java:503)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onConferenceCallStarted(TranscriptionGatewaySession.java:207)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onConferenceCallInvited(TranscriptionGatewaySession.java:163)
        at org.jitsi.jigasi.JvbConference$JvbCallListener.incomingCallReceived(JvbConference.java:1413)
        at net.java.sip.communicator.service.protocol.media.AbstractOperationSetBasicTelephony.fireCallEvent(AbstractOperationSetBasicTelephony.java:206)
        at net.java.sip.communicator.service.protocol.media.AbstractOperationSetBasicTelephony.fireCallEvent(AbstractOperationSetBasicTelephony.java:165)
        at net.java.sip.communicator.impl.protocol.jabber.CallJabberImpl.processSessionInitiate(CallJabberImpl.java:422)
        at net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.lambda$processJingleIQ$0(OperationSetBasicTelephonyJabberImpl.java:1095)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.ServiceConfigurationError: org.eclipse.jetty.websocket.core.Extension: Provider org.eclipse.jetty.websocket.core.internal.FragmentExtension could not be instantiated
        at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:582)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:804)
        at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:722)
        at java.base/java.util.ServiceLoader$3.next(ServiceLoader.java:1395)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:39)
        ... 26 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/jetty/util/StaticException
        at org.eclipse.jetty.websocket.core.internal.FragmentExtension.<init>(FragmentExtension.java:42)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:780)
        ... 29 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.StaticException
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
        ... 35 more
2023-10-22 11:46:06.269 WARNING: [100] org.eclipse.jetty.util.TypeUtil.mapToService: Service Provider failed to load
java.util.ServiceConfigurationError: 
        at org.eclipse.jetty.util.ServiceLoaderSpliterator$ServiceProvider.get(ServiceLoaderSpliterator.java:101)
        at org.eclipse.jetty.util.TypeUtil.mapToService(TypeUtil.java:768)
        at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:46)
        at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:326)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
        at org.eclipse.jetty.websocket.core.WebSocketExtensionRegistry.<init>(WebSocketExtensionRegistry.java:34)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:55)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:49)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:43)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:67)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:76)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService$VoskWebsocketStreamingSession.<init>(VoskTranscriptionService.java:231)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService.initStreamingSession(VoskTranscriptionService.java:171)
        at org.jitsi.jigasi.transcription.Participant.joined(Participant.java:523)
        at org.jitsi.jigasi.transcription.Transcriber.participantJoined(Transcriber.java:303)
        at org.jitsi.jigasi.TranscriptionGatewaySession.addInitialMembers(TranscriptionGatewaySession.java:503)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onConferenceCallStarted(TranscriptionGatewaySession.java:207)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onConferenceCallInvited(TranscriptionGatewaySession.java:163)
        at org.jitsi.jigasi.JvbConference$JvbCallListener.incomingCallReceived(JvbConference.java:1413)
        at net.java.sip.communicator.service.protocol.media.AbstractOperationSetBasicTelephony.fireCallEvent(AbstractOperationSetBasicTelephony.java:206)
        at net.java.sip.communicator.service.protocol.media.AbstractOperationSetBasicTelephony.fireCallEvent(AbstractOperationSetBasicTelephony.java:165)
        at net.java.sip.communicator.impl.protocol.jabber.CallJabberImpl.processSessionInitiate(CallJabberImpl.java:422)
        at net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl.lambda$processJingleIQ$0(OperationSetBasicTelephonyJabberImpl.java:1095)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.ServiceConfigurationError: org.eclipse.jetty.websocket.core.Extension: Provider org.eclipse.jetty.websocket.core.internal.PerMessageDeflateExtension could not be instantiated
        at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:582)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:804)
        at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:722)
        at java.base/java.util.ServiceLoader$3.next(ServiceLoader.java:1395)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:39)
        ... 26 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/jetty/util/StaticException
        at org.eclipse.jetty.websocket.core.internal.PerMessageDeflateExtension.<init>(PerMessageDeflateExtension.java:67)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:780)
        ... 29 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.StaticException
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
        ... 35 more
2023-10-22 11:46:06.412 INFO: [121] TranscriptionGatewaySession$1.getDefaultDevice#153: Transcriber: Media Device Audio
2023-10-22 11:46:06.514 INFO: [121] net.java.sip.communicator.service.protocol.media.MediaHandler.registerDynamicPTsWithStream: Dynamic PT map: 126=rtpmap:-1 telephone-event/8000; 111=rtpmap:-1 opus/48000/2 fmtp:useinbandfec=1;minptime=10; 
2023-10-22 11:46:06.514 INFO: [121] net.java.sip.communicator.service.protocol.media.MediaHandler.registerDynamicPTsWithStream: PT overrides []
2023-10-22 11:46:06.564 INFO: [121] net.java.sip.communicator.service.protocol.media.CallPeerMediaHandler.start: Starting
2023-10-22 11:46:06.962 INFO: [131] JitsiOpenSslProvider.<clinit>#52: jitsisrtp successfully loaded for OpenSSL 1.1
2023-10-22 11:46:07.020 INFO: [121] JvbConference$JvbCallChangeListener.callStateChanged#1439: [ctx=16979679617102038055986] JVB conference call IN_PROGRESS.
2023-10-22 11:46:07.563 INFO: [131] Aes.benchmark#367: AES benchmark (of execution times expressed in nanoseconds): OpenSSL 710, SunJCE 774, BouncyCastle 10011 for AES/CTR/NoPadding
2023-10-22 11:46:07.564 INFO: [131] Aes.createCipher#433: Will employ AES implemented by OpenSSL for AES/CTR/NoPadding.
2023-10-22 11:46:08.163 WARNING: [173] org.eclipse.jetty.util.TypeUtil.mapToService: Service Provider failed to load
java.util.ServiceConfigurationError: 
        at org.eclipse.jetty.util.ServiceLoaderSpliterator$ServiceProvider.get(ServiceLoaderSpliterator.java:101)
        at org.eclipse.jetty.util.TypeUtil.mapToService(TypeUtil.java:768)
        at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:46)
        at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:326)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
        at org.eclipse.jetty.websocket.core.WebSocketExtensionRegistry.<init>(WebSocketExtensionRegistry.java:34)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:55)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:49)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:43)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:67)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:76)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService.sendSingleRequest(VoskTranscriptionService.java:143)
        at org.jitsi.jigasi.transcription.Participant.lambda$sendRequest$1(Participant.java:697)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.ServiceConfigurationError: org.eclipse.jetty.websocket.core.Extension: Provider org.eclipse.jetty.websocket.core.internal.FragmentExtension could not be instantiated
        at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:582)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:804)
        at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:722)
        at java.base/java.util.ServiceLoader$3.next(ServiceLoader.java:1395)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:39)
        ... 18 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/jetty/util/StaticException
        at org.eclipse.jetty.websocket.core.internal.FragmentExtension.<init>(FragmentExtension.java:42)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:780)
        ... 21 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.StaticException
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
        ... 27 more
2023-10-22 11:46:08.164 WARNING: [173] org.eclipse.jetty.util.TypeUtil.mapToService: Service Provider failed to load
java.util.ServiceConfigurationError: 
        at org.eclipse.jetty.util.ServiceLoaderSpliterator$ServiceProvider.get(ServiceLoaderSpliterator.java:101)
        at org.eclipse.jetty.util.TypeUtil.mapToService(TypeUtil.java:768)
        at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:271)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:46)
        at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:326)
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
        at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
        at org.eclipse.jetty.websocket.core.WebSocketExtensionRegistry.<init>(WebSocketExtensionRegistry.java:34)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:55)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:49)
        at org.eclipse.jetty.websocket.core.WebSocketComponents.<init>(WebSocketComponents.java:43)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:67)
        at org.eclipse.jetty.websocket.client.WebSocketClient.<init>(WebSocketClient.java:76)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService.sendSingleRequest(VoskTranscriptionService.java:143)
        at org.jitsi.jigasi.transcription.Participant.lambda$sendRequest$1(Participant.java:697)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.ServiceConfigurationError: org.eclipse.jetty.websocket.core.Extension: Provider org.eclipse.jetty.websocket.core.internal.PerMessageDeflateExtension could not be instantiated
        at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:582)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:804)
        at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:722)
        at java.base/java.util.ServiceLoader$3.next(ServiceLoader.java:1395)
        at org.eclipse.jetty.util.ServiceLoaderSpliterator.tryAdvance(ServiceLoaderSpliterator.java:39)
        ... 18 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/jetty/util/StaticException
        at org.eclipse.jetty.websocket.core.internal.PerMessageDeflateExtension.<init>(PerMessageDeflateExtension.java:67)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
        at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:780)
        ... 21 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.util.StaticException
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:527)
        ... 27 more

I did a reinstall from scratch yesterday just to end up with the same situation. :) Thanks for taking the time to look at it by the way.

cheers, t.

himpierre commented 11 months ago

Here the relevant part from sip-communicator.properties.

org.jitsi.jigasi.ENABLE_TRANSCRIPTION=true
org.jitsi.jigasi.ENABLE_SIP=true

# whether to use the more expensive, but better performing
# "video" model when doing transcription
# org.jitsi.jigasi.transcription.USE_VIDEO_MODEL = false

# delivering final transcript
# org.jitsi.jigasi.transcription.DIRECTORY=/var/lib/jigasi/transcripts
# org.jitsi.jigasi.transcription.BASE_URL=http://localhost/
# org.jitsi.jigasi.transcription.jetty.port=-1
# org.jitsi.jigasi.transcription.ADVERTISE_URL=false

# save formats
# org.jitsi.jigasi.transcription.SAVE_JSON=false
# org.jitsi.jigasi.transcription.SAVE_TXT=true

# send formats
# org.jitsi.jigasi.transcription.SEND_JSON=true
# org.jitsi.jigasi.transcription.SEND_TXT=false

# Vosk server
org.jitsi.jigasi.transcription.customService=org.jitsi.jigasi.transcription.VoskTranscriptionService
# org.jitsi.jigasi.transcription.vosk.websocket_url={"en": "ws://localhost:2700", "fr": "ws://localhost:2710"}
org.jitsi.jigasi.transcription.vosk.websocket_url=ws://localhost:2700
nshmyrev commented 11 months ago

Ok, it is same as https://github.com/jitsi/jigasi/issues/472

nshmyrev commented 11 months ago

Need a dependency fix, jetty has to be explicit dependency, see also https://stackoverflow.com/questions/74815171/java-lang-noclassdeffounderror-org-eclipse-jetty-util-component-containerlifecy

himpierre commented 11 months ago

So basically it's not working at all currently. :) Thanks Nickolay!

Am 22. Oktober 2023 22:55:44 MESZ schrieb "Nickolay V. Shmyrev" @.***>:

Ok, it is same as https://github.com/jitsi/jigasi/issues/472

nshmyrev commented 11 months ago

It works, just put a jar into the folder and that's it

damencho commented 11 months ago

Which version of jigasi is this? This was already fixed in latest.

himpierre commented 11 months ago

Which version of jigasi is this? This was already fixed in latest.

root@meetings:~# dpkg -l | grep jigasi
ii  jigasi                                1.1-293-gb5002fc-1                      all          Jitsi Gateway for SIP
root@meetings:~#

Can confirm puting the jar file as explained in the other bug makes jigasi work with vosk.

damencho commented 11 months ago

The first version with the fix is jigasi_1.1-296-g39cf66a. You can update latest from unstable to got the change as it is fixed there. We will take a look on updating stable.

damencho commented 11 months ago

version 1.1-311 was pushed to stable.

himpierre commented 11 months ago

Thanks Damian!

Two questions though. Is it still neccessary to "dial" the transcriber with "jitsi_meet_transcribe" into the room? I'm asking because on one installation I have a menu entry "Subtitles -Off" + I was able to enable them there. How is that menu entry triggered? Because on another installation there is no such entry.

Second question. Is libretranslate supposed to work currently?

cheers, t.

Am 23. Oktober 2023 23:23:55 MESZ schrieb "Дамян Минков" @.***>:

version 1.1-311 was pushed to stable.

damencho commented 11 months ago

Two questions though. Is it still neccessary to "dial" the transcriber with "jitsi_meet_transcribe" into the room? I'm asking because on one installation I have a menu entry "Subtitles -Off" + I was able to enable them there. How is that menu entry triggered? Because on another installation there is no such entry.

Participatns requesting transcription set a presence property for it: https://github.com/jitsi/jitsi-meet/blob/ba4784f149fcee57e354d2e160912fe92ff5e776/react/features/subtitles/middleware.ts#L33

Second question. Is libretranslate supposed to work currently?

Sorry haven't used that.

surajprakashchoudhary commented 9 months ago

It works, just put a jar into the folder and that's it

@nshmyrev Could you please clarify which JAR files you are referring to and specify their intended location where should I place them? I am currently using 'docker-jitsi-meet-stable-8922-1' and encountering the same issue. The logs of both my Vosk and Jigasi containers are displaying identical errors as mentioned above.

nshmyrev commented 9 months ago

@nshmyrev Could you please clarify which JAR files you are referring to and specify their intended location where should I place them? I am currently using 'docker-jitsi-meet-stable-8922-1' and encountering the same issue. The logs of both my Vosk and Jigasi containers are displaying identical errors as mentioned above.

jetty-utils as in stackoverflow answer

surajprakashchoudhary commented 9 months ago

HI @nshmyrev, Thanks for your valuable support. I successfully ran Vosk transcription with the latest version of Docker-Jitsi-Meet-9111. However, I am facing one issue: subtitles are appearing for the moderator only; other participants are not able to see those subtitles. Is there any solution available for this problem?