Skip to content

Subtitle generation guide

How to generate subtitles for a film that has none

Generate subtitles from a film's dialogue on your own Quven server: where to start, how the speech model arrives and where the finished track is saved.

A television showing the Quven player with its subtitle and audio controls
By Quven Editorial Team Updated Verified

Quven can write a timed, reusable subtitle from a film’s dialogue, on your own server, when the file carries no subtitle track you can use.

Requirements

  • Quven 1.1.0 or later. From 1.2.0, the account your server is linked to must carry Pro; without it the panel reads “Writing a subtitle from the audio is included in Pro, and the account linked to this server does not include it.” On an earlier release the option isn’t in the player, and no setting brings it forward.
  • A server administrator, on the desktop app or the web client. A guest profile reads “Only the person who owns this server can create subtitles for it.” where the button belongs.
  • Playing a track that already exists needs no plan, for every profile on the server.

1. Open the Create tab

  1. Start the title and open the subtitle controls in the player.
  2. Choose Create. Quven inspects the file and shows what it found.

Writing from the audio is offered only when the file carries no usable subtitle track, and the panel then reads “No usable subtitle track was found. The selected audio will be transcribed locally.” If a text, image or sidecar track exists, the same tab offers to translate it instead, a separate step that comes with Max. Forced and signs-only tracks don’t count, because they aren’t a script.

2. Choose the audio and start

  1. Under Dialogue audio, pick the stream with care: a film can carry a dub, a commentary, an audio description and the original language, and the subtitle matches whichever you pick.
  2. A Spoken language row appears only when the file doesn’t declare the language of that stream. It starts on Detect automatically; set it yourself when the track is short, noisy or bilingual.
  3. Press Generate subtitles. The subtitle belongs to the file you’re playing, so a title with two versions gets it for that version alone. The panel says the work can take up to twenty minutes, and a long film on a slow machine uses all of them.

3. Let the server fetch the speech model

Recognition runs on the server with a multilingual Whisper model of about 465 MB, which isn’t part of the download. You don’t install it beforehand: the first transcription that needs it reads Waiting for the speech model…, then Downloading the speech model… with its percentage and megabytes, and carries on by itself once the file has passed its checksum. An interrupted download picks up where it stopped.

If the download fails, the panel names the cause (the connection, the disk space, or a file that failed verification and was discarded) and offers the install button to try again. In the web client, Subtitle activity also shows the model under Local speech model, where an administrator can install it ahead of time.

Phone, tablet and television apps carry no model status or install path, never ask for a subtitle in the film’s own language, and play a generated track like any other.

4. Stay in the player while it runs

The request belongs to the player that made it. Leaving asks first and then withdraws your request: the desktop app says the processing will be cancelled, and the web client warns that shared work may continue for another profile, since two people asking for the same thing share one job.

Underneath, the work is durable on the server. It survives a restart, and a retry gets its own identity. Don’t queue the same request three times because the first looked slow: you’d wait on the same job.

With a graphics card the server can reach through Vulkan on Windows and Linux, or on a Mac with Apple silicon through Metal, recognition runs there and is much faster. Without one it uses three quarters of the processor’s threads and never all of them, six on an eight-thread machine, so the server stays responsive.

5. Use the result

The result is a normal subtitle track, stored against that physical file. It appears under Tracks on every client and is still there next week. Quven also writes a copy beside the film, named after it with .quven-transcribed.<language>.vtt, so a film moved to another machine or opened in another player takes its subtitle with it. Under Docker that copy needs a media folder the container may write to, and the Docker guide explains the setting that keeps the library read-only instead.

If the job fails or you cancel it, nothing half-finished stays attached. When an authored subtitle exists for a film it remains the reference, and for a file with none this is the one that makes it watchable.

Generation runs entirely on your server. The audio, the decoded samples and the recogniser’s working files never leave the machine, and the temporary ones are cleaned up whether the job succeeds, fails or is cancelled. Nothing is metered: it’s your hardware doing the work, and Pro covers the pipeline and the runtimes Quven ships with it.

Translating the subtitle into another language is a separate step, and there the text does leave the machine. See translating subtitles with AI. If subtitles show up but render oddly on one device, start with the native playback guide.

Frequently asked questions

Does my audio leave the machine?

No. The server transcribes the dialogue on your own hardware and saves an ordinary, reusable track. The audio is never sent anywhere.

Do I have to install the speech model first?

No. The server downloads it the first time a transcription needs it, about 465 MB, checks it and continues the job. An administrator who prefers to fetch it in advance can do so from the web client’s Subtitle activity panel.

Which release do I need?

Quven 1.1.0 or later, and from 1.2.0 a server linked to a Pro, Max or Lifetime account. On an earlier release the option isn’t there. Playing a track needs no plan at all, whatever wrote it.

Can another player use the subtitle Quven wrote?

Yes. Quven saves a copy beside the film, named after it with .quven-transcribed.<language>.vtt, so the subtitle travels with the file when you move it or open it elsewhere.

Why can’t I start a transcription from my phone?

By design. Asking for a subtitle in the film’s own language belongs to a server administrator on the desktop app or the web client. Phone, tablet and television apps carry nothing about the model and play a generated track like any other.

Subtitles with Pro

Write the subtitle a film is missing

Pro writes a subtitle from the audio on your own server, and the audio never leaves the machine. Max adds the cue editor together with translation into another language.

Pro €3.49 /mo

€129, once.

Keep learning

Related guides

Go deeper into the parts that materially affect the result on your hardware and screens.

Bring your library home.

Free for personal use, installed on your own hardware in a few minutes.