Skip to content

Subtitle Composer

Categories:   Multimedie
Main application window

Subtitle Composer is an open source text-based subtitle editor that supports basic and advanced editing operations.


  • Open/Save Text Subtitle Formats - SubRip/SRT, MicroDVD, SSA/ASS, MPlayer, TMPlayer and YouTube captions
  • Open/OCR Graphics Subtitle Formats - VobSub (.idx/.sub/.rar), BluRay/PGS (*.sup), formats supported by ffmpeg (DVD/Vob, DVB, XSUB, HDMV-PGS)
  • Demux Graphics/Text Subtitle Stream from video file - SRT, SSA/ASS, MOV text, MicroDVD, DVD/Vob, DVB, XSUB, HDMV-PGS
  • Speech recognition from audio/video file using PocketSphinx
  • Smart language/text encoding** detection
  • Live preview of subtitles in integrated video player w/ audio stream selection
  • Preview/editing of subtitles on graphical audio waveform w/ audio stream selection
  • Sync by dragging several anchors/graftpoints and stretching timeline
  • Time shifting and scaling, lines duration re-calculation, framerate conversion, etc.
  • Joining and splitting of subtitle files
  • Side by side subtitle translations
  • Text styles (italic, bold, underline, stroke, color)
  • Spell checking
  • Detection of timing errors in subtitles
  • Scripting (JavaScript, Python, Ruby and other languages supported by Kross).
Install on
This button only works with Discover and other AppStream application stores. You can also use your distribution's package manager.
Get it from the Snap Store

Releases RSS

0.8.1 2024-06-07
  • Fixed (rare) memory issues and crashes
  • Fixed crashes on waveform widget
  • Fixed video player rendering in Qt 6.7
  • Fixed scripts manager assert failures
  • Fixed inability to view non-script files in scripts manager
  • Fixed seeking in some media formats
  • Fixed video player subtitle rendering
  • Fixed broken rendering on hi-res videos
  • Fixed HDR video rendering (SMPTE-ST-2084 gamma transfer)
  • Added check for maximum number of characters per line
  • Added MinT translate engine
  • Improved translation support and UI
  • Improved video player scaling
  • Dropped KIO file operations
AppImage - x86_64 (59.07 MB)
sha256: 1222fd30bbcaf3586dfb78db27376e5e4852cb3f5d98878e2bff0744536bfcb7
- (63.46 MB)
sha256: 2fea6c3e0a9d20a2d296ff8ab078a1fafbd2dbbafb0e315d312f9ab9c2759507
sha256: 23c022768d7422c092149f41d51ebea80f54b27655573cf43f736efb88c30027
0.8.0 2023-11-06
  • Fixed video player on GLES only hardware
  • Fixed skewed video on video player
  • Fixed closing fullscreen video player
  • Fixed subtitles under fullscreen video toolbar
  • Fixed video player media state notifications
  • Fixed subtitle video overlay font size accuracy
  • Fixed deadlock/crash while changing audio stream on paused/stopped media
  • Improved Waveform widget performance
  • Fixed waveform misalignment due to rounding error
  • Fixed waveform widget drawing on null image and painting of removed lines
  • Fixed waveform default zoom scale
  • Fixed subtitle text line separator draw on LinesWidget
  • Fixed unbreak lines (newline searches in QTextDocument)
  • Fixed crash in split lines
  • Fixed VobSub import ignoring Text styles
  • Fixed VobSub crash when moving to previous image
  • Fixed YouTubeCaptions format parsing/saving
  • Fixed undo/redo actions creation order, incorrect state
  • Fixed some memory and saving issues
  • Fixed embedded ASS decoding
  • Fixed example remove hearing impaired script
  • Fixed broken about dialog
  • Added Qt6 support
  • Added WebVTT format support
  • Added subtitle positioning UI and support
  • Added subtitle class/comments/voice UI and support
  • Improved rich text editing/preview
  • Rich text rendering on waveform/video/editors
  • Added DeepL translate engine
  • Added Google Cloud translate engine
  • Recreated translation interface
  • Added/improved ffmpeg 5 support
  • Subtitle lines are always time sorted; remove sort lines menu action
  • Replaced Kross with QJSEngine, removed ruby and python support
  • Improved script manager and tools menu
AppImage - x86_64 (59.03 MB)
sha256: 2c67d5d68e9a765a97b57f6aa623ddce7e2d1c997ee7e28bddad5636c6af98b2
- (63.36 MB)
sha256: d654d044cb93df5eca8aa9d5cfce895d62b76f997c6a1c644714a8e6e77979ad
- (36.25 MB)
sha256: 514c669888e349f45993ad6a85983e80ba898b88b2ed08bf726522277c629ce1
sha256: b1416bdf7223b1979a36620b913c117c1b6c933bf165e28491af476310d7c9f8
0.7.1 2021-07-28
  • Fixed script edititing on AppImage
  • Fixed AppImage/Windows builds, themes and look
  • Fixed theme/icons/look outside KDE environment
  • Fixed opening files on windows
  • Fixed various bugs and rare crashes
  • Fixed Undo stack and improved text editing undo
  • Improved/replaced Video player(s) (performance, Wayland support, OpenGL/FFmpeg)
  • Improved Waveform performance
  • Improved LinesWidget/Model performance
  • Improved Wayland support
  • Improved open/save file dialogs to use native dialogs
  • Improved text charsets/encodings/end-of-line selection, detection and handling
  • Improved VobSub support
  • Improved inline editor to support text styles
  • Improved subtitle style rendering
  • Improved character/sec support and added coloring
  • Improvide command line - ability to open all subtitle/media files
  • Added Pause/Duration columns to list view
  • Removed invalid subpicture/x-pgs mime
  • Updated/added many translations - thanks to KDE community
AppImage - x86_64 (60.08 MB)
sha256: ac124b356a008ff8358b0540d8aa7be068cd9df60b55a8bcdfed8a6c48d28dae
- (64.52 MB)
sha256: 2c2415cd69cd6074056446d8ac3f433faf3c6bed0e02a536d65df98e01ae4201
- (36.24 MB)
sha256: e3ab604123b3e6f2351396c25e7cb122a93cda3cd048a59e9f5427e5e342d703
sha256: ef9cb3c0c1fe1f40cf9d8e795859b9b28adf2da3be77a076d46bc28df4cd0255
0.7.0 2019-06-27
  • Fixed parsing of absolute paths containing '#' character
  • Fixed open dialogs not showing all supported files
  • Fixed subtitle text not respecting system font configuration
  • Fixed waveform not rendering correctly/completely on some formats
  • Fixed waveform displaying subtitles at wrong times
  • Fixed waveform not working with some
  • Fixes to MPV, GStreamer and Xine video player backends
  • Waveform scrolling is configurable
  • PocketSphinx language models and VAD are configurable
  • Added show status bar action to main window popup menu
  • Improved (scripting) performance
  • Spell checker will use translation text when it is selected
  • Waveform and video docks can be hidden
  • Split lines won't split text on spaces while there are multiple lines
  • Subtitle lines will always stay sorted by their time
  • Improved fullscreen video player
  • Added ability to step by frame
  • Added play rate controls to video menu
  • Updated Croatian translation - thanks @muzena
  • Updated Italian translation - thanks Luigi Toscano @tosky
  • Updated Russian translation - thanks Nick Shaforostoff @shaforostoff
0.6.6 2018-02-11
  • Fixed open video dialog filters
  • Fixed "Insert Line" on waveform adding at the wrong index - thanks @qsniyg
  • Added MMB seeking on waveform - thanks @qsniyg
  • Fixed some compilation issues
  • Updated translations - thanks @gogogogi, @muzena
  • Fixed vobsub when opening from video file and symbol cache filename
  • Fixed subtitle loading times of huge files
  • Improved vobsub text detection
  • Fixed ASS rich text parsing on import subtitle stream action
  • Replaced buggy mplayer vobsub import code with ffmpeg
  • Fixed memory leaks/usage of WaveformWidget's scroll animation
  • Optimized import subtitle stream from video action
  • Replaced gstreamer with ffmpeg libraries in application core usage
  • Added abort button to speech recognition
  • Waveform smooth scrolling
  • Added join/split lines actions to waveform context menu
  • Fixed some crashes, memory leaks and overall code cleanups
  • Cleaned up settings widget and texts
0.6.5 2017-09-18
  • ADD: Added support for binary subtitle formats
  • ADD: fine control video playback speed
  • ADD: controls for video playback speed
  • MOD: GStreamer backend audio improvements.
  • MOD: Moved open video actions under File menu
  • MOD: More tolerant parsing of SubRip subtitles
  • MOD: Improved split lines command
  • MOD: Updated Czech translation - thanks @goliashcz
  • MOD: Updated Croatian translations - thanks @muzena
  • FIX: Waveform widget dragging and speed improvements, fixed buffer overflow
  • FIX: WaveformWidget: zoom out wasn't working on movies without audio
  • FIX: Fixed cases where subtitle hide time would end up before show time
  • FIX: Improved context menus
  • FIX: Fixed moving of anchored lines
  • FIX: Open subtitle wouldn't autoload video in some cases
  • FIX: Open video now includes .divx and .webm extensions
  • FIX: Tools menu scripts are filtered based on installed kross interpreters
  • FIX: Moved custom icons to more standard location, using QIcon::fromTheme()
  • FIX: Error Check > Absolute Duration config fields were changing incorrect values
  • FIX: MPV Backend: fixed deprecated options, updated vo devices - thanks @luzfcb
  • FIX: better rendering on high DPI screens
  • FIX: MPV Backend: framerate/video length wasn't reported to subtitle composer anymore
  • FIX: detection/handling of current playing line
  • FIX: Parsing text containing <font> without color attribute
  • FIX: compilation without xine - thanks @pinotree
  • FIX: ASS parsing - thanks @Martchus
0.6.4 2016-05-07
0.6.3 2016-04-03
0.6.2 2016-03-25
0.6.1 2016-03-15
0.6.0 2016-03-15
0.5.9 2016-02-08
0.5.8 2016-02-07
0.5.7 2014-09-26
0.5.6 2013-11-25
0.5.5 2013-10-09
0.5.4 2013-06-10
0.5.3 2009-05-25
0.5.2 2008-11-12
0.5.1 2008-09-04
0.5.0 2008-07-10
0.4.3 2008-09-04
0.4.2 2008-07-10
0.4.1 2008-04-22
0.4.0 2008-04-11
0.3 2008-01-08
0.2.1 2007-12-16
0.2 2007-12-16
0.1 2007-11-15