Contact usRequest a demo

Closed captions in audio and video calls

Audio and video calls are a great way for your organization to communicate with customers. However, they can also have drawbacks:

  • It can be difficult to have a conversation when the participants speak different languages. This issue is exacerbated when the subject is complex and requires specialist vocabulary.

  • People with a hearing impairment may struggle to follow a conversation, especially if the connection is poor.

To make audio and video calls more accessible for all users, Unblu can display closed captions in calls. This provides an additional channel through which participants can follow the conversation. You can also give participants the option to have the closed captions translated in real time.

Closed captions with translations enabled for the visitor
Figure 1. Closed captions with translations enabled for the visitor

When captions are translated, the original language they’re translated from is shown above the caption.

This is a preview feature. It may be subject to change or removal with no further notice.

To enable preview features, set com.unblu.platform.enablePreview to true.

For more information on preview features, refer to the Unblu release policy.

Closed captions are only available with LiveKit as the call service provider.

Configuration

Closed captions have configuration properties in several scopes.

Closed caption configuration in conversation templates

LiveKit (ACCOUNT scope)

  • com.unblu.conversation.call.livekit.transcriptServiceProvider: This is the speech-to-text (STT) provider used to create closed captions and call transcripts. The selected provider’s access details are configured separately.

  • com.unblu.conversation.call.livekit.micDataSource: The microphone that serves as the data source for LiveKit transcripts.

    • If you select LIVEKIT_EGRESS, the configured LiveKit server must have egress enabled. Furthermore, you must configure the webhook entry path and allow inbound WebSockets from LiveKit to the Collaboration Server.

      This setting is best suited for transcripts. The latency of up to 5 seconds makes it less suitable for live closed captions.

    • If you select BROWSER_MIC_CAPTURE, data is captured from the participants' microphones in the browser and sent directly to the Collaboration Server using Unblu’s real-time framework. This setting is experimental and should only be used for evaluation purposes at present.

Translation (ACCOUNT scope)

To enable participants to view translated closed captions, you must configure a translation service provider. Use com.unblu.translation.translationServiceProvider to specify the translation service provider to use when dynamically translating captions into other languages.

Currently, Unblu supports Google Cloud Translation and Azure Text Translation. If you select GOOGLE_TRANSLATE, you must have a valid Google service account configuration in the configuration property com.unblu.gcp.serviceAccountKey or Application Default Credentials (ADC) with translation enabled.

See also

  • For information on using closed captions in the Unblu UIs, refer to the Closed captions sections of the Floating Visitor UI guide.