Skip to content

Subtitles

Odeion can serve subtitles from two sources: streams embedded in the media file, and external files downloaded from subtitle providers.

During the media extract processing stage, Odeion examines each media file for embedded subtitle streams. Text-based subtitle formats are automatically extracted to individual SRT files so they can be served directly to players without transcoding.

Supported text formats that are extracted: SubRip (SRT), Advanced SubStation Alpha (ASS/SSA), WebVTT, MOV Text.

Bitmap-based subtitle formats (PGS from Blu-ray, VobSub from DVD, DVB) cannot be extracted as text. They are tracked in the database and handled during transcoding by burning them into the video stream when selected by the user. This requires an active transcoding session.

Subtitle extraction can be enabled or disabled in Admin > Settings > Processing. When disabled, embedded text subtitles are still detected and listed in the database, but the SRT files are not created.

Odeion integrates with OpenSubtitles for downloading external subtitle files. To enable this, configure your OpenSubtitles credentials in Admin > Settings > Subtitles.

Once configured, subtitles can be searched and downloaded from the media detail page in the web interface or app. Search results are ranked by relevance, download count, and language match.

Downloaded subtitles are stored in the subtitles/ subdirectory of the data directory.

The following options are available in Admin > Settings > Subtitles:

SettingDescription
EnabledMaster toggle for the subtitle system
Auto-downloadAutomatically search and download subtitles for new content
LanguagesPreferred languages for automatic download
Storage modeStore subtitle files in the cache directory or alongside media files
Burn-in defaultWhether to burn bitmap subtitles into the video by default
Auto-extract embeddedExtract text-based embedded subtitles during processing

All client apps display available subtitles (both embedded and external) in the subtitle track picker during playback. Text subtitles are rendered client-side. Bitmap subtitles require server-side burn-in and will trigger a transcoding session if one is not already active.