Emby Emby Emby Learn
  • Emby Home
  • Video
  • Audio
  • Media Files
    • Subtitles and captions
    • Photos and images
    • Metadata and discovery
    • Libraries and media collections
    • Playback and streaming
    • Media hardware acceleration
    • Displays and AV connections
    • Live TV and recording
  1. Emby Learn
  2. Subtitles and captions
  3. Subtitle formats
  4. Text subtitle formats
  5. SAMI
Search Results for

    Show / Hide Table of Contents

    SAMI captions

    SAMI stores HTML-like synchronized caption blocks and can associate different language classes with the same media timing.

    SAMI, Synchronized Accessible Media Interchange, is Microsoft's HTML-like caption format, commonly stored in .smi or .sami files. A synchronized block can contain caption paragraphs for more than one language.

    Here is an original body excerpt, assuming that the header defines language classes ENCC and FRCC:

    <SYNC Start=12500>
    <P Class=ENCC>The platform is empty.
    <P Class=FRCC>Le quai est vide.
    
    <SYNC Start=15000>
    <P Class=ENCC>&nbsp;
    <P Class=FRCC>&nbsp;
    

    The first synchronization block starts at 12,500 milliseconds. The second starts at 15,000 milliseconds and clears the captions with a non-breaking-space entity. The result is a 2.5-second displayed interval for the chosen language.

    Synchronization blocks update the caption state

    SAMI does not use the SRT pattern of one explicit start/end pair on every paragraph. A synchronization point supplies the next caption content. A later synchronization block can replace or clear it.

    That is why dropping the empty-looking second block changes the meaning: the sentence may remain visible into the following scene. A converter must derive intervals from the update sequence and retain the effect of clearing events.

    SAMI feature Information
    SYNC Start Synchronization time in milliseconds
    Paragraph class Language association through a declared class
    Header style definitions Language names and supported presentation properties
    Clearing paragraph Ends the visible content for that language

    Languages share timing without sharing words

    The header can associate a class with a language name and code. The class itself is an identifier, not a universal language-code syntax. A reader uses the declaration to identify the language stream.

    Converting a multilingual SAMI file into a single-language SRT requires selecting the intended class and resolving its sequence of updates. Concatenating all paragraphs would combine translations into one caption.

    For an Emby library with older caption files, a conversion to a currently accepted external text format can preserve the chosen language and resolved intervals. SAMI's HTML-like syntax does not imply that a modern web player can treat the file as WebVTT or as an arbitrary HTML document. Microsoft's documentation separates parsing the SAMI source from the application's work of displaying the captions.

    See Also

    • Text-based subtitles
    • Subtitle cues
    • SubRip subtitles (SRT)

    References

    • Microsoft: Understanding SAMI 1.0
    • Microsoft: SAMI media source and language streams
    On this Page
    2026 © EMBY LLC. Please see our terms of use and privacy policy.
    Back to Top