Media workbench

Add Subtitles to Video

Attach a validated SRT subtitle track to an MP4 without re-encoding its video or audio.

Free, no accountRuns in a private workerUpdated

Loading workbench…

Attach a validated SRT subtitle track to an MP4 without re-encoding its video or audio. Use Add Subtitles to Video without creating an account. The workbench keeps the source and result together so you can check the output before downloading it.

Add Subtitles to Video covers adding optional captions to an MP4, attaching a translated subtitle track, and packaging reviewed SRT timing with a final video. Its controls stay on one page, with status and validation messages beside the work area.

The selected MP4 and SRT files are sent to a private conversion worker, processed in a temporary job directory, and removed after the response is returned. If either file contains sensitive information, follow your organization’s rules for online utilities.

Before using the result, confirm that one MP4 video and one matching SRT subtitle file is complete and that a separately downloaded MP4 with a selectable subtitle track matches the destination format. Keep the original until you have checked the output in the application or context where it will be used.

The related media tools cover the next common tasks without changing your original input.

  1. 01

    Provide one MP4 video and one matching SRT subtitle file. The tool checks the input before processing it.

  2. 02

    Adjust the available add subtitles to video settings for the result you need.

  3. 03

    Run Add Subtitles to Video. If the input is incomplete, the workbench explains what to correct.

  4. 04

    Check a separately downloaded MP4 with a selectable subtitle track, then copy or download the result. Your original input stays unchanged.

  • adding optional captions to an MP4
  • attaching a translated subtitle track
  • packaging reviewed SRT timing with a final video
Is Add Subtitles to Video free to use?

Yes. Add Subtitles to Video is available without an account or subscription.

Does Add Subtitles to Video upload my input?

Add Subtitles to Video sends the selected MP4 and SRT files to a private worker. The worker uses a temporary job directory and removes it after processing.

Does Add Subtitles to Video change the original?

No. Add Subtitles to Video leaves the source untouched. Copy or download the generated result as a separate output.

What should I check after using Add Subtitles to Video?

Confirm that a separately downloaded MP4 with a selectable subtitle track matches the intended format and context. Keep the original until the result has been verified.

Start with the exact MP4 that will be delivered and the SRT written for that version. Subtitle timing depends on the video edit. A cut, inserted logo, changed intro, speed adjustment, or replaced ending can shift every later cue even when the words remain correct. Name the files clearly and play the video with the SRT in a trusted local player before attaching the track. Keep both originals because this tool creates a new MP4 and does not update either source file.

The video can be up to 100 MB and the subtitle file can be up to 1 MB. SRT must contain numbered cues, start and end timestamps, and text. The workbench checks extensions, browser-reported types when available, and file signatures or text structure. Renaming a document to .srt does not make it a subtitle file. Export a clean UTF-8 SRT from the subtitle editor when the source uses another caption format or character encoding.

This tool adds a selectable subtitle track inside the MP4 container. A compatible player can show or hide it, and some players let viewers choose among tracks or apply their own caption appearance. The words are not drawn permanently into the video pixels. That distinction matters for accessibility, translation, and reuse. Optional captions can be disabled when they are not needed, while burned captions remain visible in every frame and cannot be removed without replacing or editing the video.

Selectable tracks depend on player support. Some social networks, messaging applications, slide tools, and website upload systems ignore embedded subtitles or remove them during transcoding. Others prefer a separate sidecar SRT rather than a track inside MP4. Confirm the destination contract before processing. If the receiving platform requires burned-in text, this output does not meet that requirement. Use an approved caption renderer and review every frame because permanent text placement introduces visual and safe-area decisions.

Each SRT cue has a start time, an end time, and one or more text lines. Start time must precede end time, and cues should appear in the intended playback sequence. Overlapping cues can be valid for multiple speakers, but player layout varies and text may cover itself. Watch the complete program with captions enabled. Check the first spoken line, scene changes, rapid dialogue, long pauses, and the final cue. A valid text structure does not prove that timing matches the picture or audio.

Readability depends on more than synchronization. Keep lines concise, break them at natural phrases, identify speakers when needed, and leave enough display time for the expected audience. Avoid placing production notes, passwords, private names, or untranslated placeholders in the final file. The worker copies cue text as a subtitle stream and does not proofread it. Spelling, punctuation, capitalization, translation quality, and accessibility conventions remain editorial responsibilities.

The language selector writes a standard three-letter code on the new subtitle track. English uses eng, French uses fra, Arabic uses ara, Spanish uses spa, and German uses deu. Choose Unspecified when the language is unknown or when the text does not fit one offered code. This metadata helps compatible players label and select the track, but it does not translate the subtitles, check vocabulary, or change text direction. The selected code must describe the actual cue content.

A player may display its own localized language name, show only the code, or ignore the metadata. Test the downloaded MP4 in the player that matters. For multilingual delivery, one subtitle track is often insufficient. This tool accepts one SRT per operation and produces one added track. A professional package with several languages, forced captions, hearing-impaired captions, or commentary tracks needs a workflow that manages every track name, default flag, language code, and review state together.

FFmpeg copies the existing video and audio streams into the new MP4 rather than decoding and re-encoding them. Stream copy avoids another lossy video pass, preserves the source resolution and frame rate, and usually completes much faster than compression. The SRT text is converted to the mov_text subtitle codec supported by MP4. Container metadata is not copied wholesale, and the new file is arranged for progressive download so compatible players can begin reading its structure early.

Copying streams does not repair damaged media or make an unsupported codec broadly compatible. If the source MP4 already fails in the destination, adding subtitles will not solve the codec problem. Inspect the downloaded video and audio from beginning to end. Confirm that duration, synchronization, orientation, resolution, audio channels, and playback quality match the source. A similar byte size is expected because the large media streams are copied and the text track adds relatively little data.

The browser validates the selected files before sending them to the application. The application checks the MP4 signature and SRT structure again, assigns fixed internal names, and creates an uncompressed package for the authenticated private worker. User filenames are not used as worker paths. The worker validates the package manifest, entry set, byte limits, MP4 signature, and subtitle structure before writing either input to a unique temporary job directory.

FFmpeg receives fixed argument arrays and internal paths through process spawning without a shell. Subtitle text is treated as media input rather than a command. The worker validates that the result is MP4, returns it, and removes the complete job directory after success, rejection, timeout, or cancellation. PWRKIT does not store the MP4, SRT, or output in its database or include their contents in analytics. Both files still travel to a processing service, so workplace handling rules remain applicable.

Captions should communicate dialogue and relevant non-speech audio clearly enough that the program remains understandable without sound. Depending on the audience and publishing standard, that can include speaker identification, music, alarms, laughter, and meaningful sound effects. A technically valid subtitle stream can still be incomplete or misleading. Review with people and guidelines appropriate to the project, and preserve an editable source outside the final MP4 so corrections do not require reconstructing text from the container.

Check reading order, line length, contrast controls in the target player, and synchronization at normal playback speed. Automatic transcripts need human review for names, technical terms, accents, and punctuation. Translations need review by someone fluent in context, not only word substitution. If the video contains flashing content, sensitive material, or spoken instructions, captions do not address every accessibility or safety need. The surrounding experience may also require a transcript, audio description, keyboard controls, and a reduced-motion alternative.

Open the download in a player that exposes media tracks. Confirm that a subtitle control appears, the track can be enabled and disabled, and its language label is reasonable. Seek to several timestamps instead of watching only the opening. Test after pausing, resuming, changing playback speed, and jumping near the end. Verify video and audio remain synchronized. If the player always hides the track, inspect its subtitle menu before assuming the file lacks captions.

Then use the real publishing or upload path. A platform may transcode the MP4 and preserve, replace, extract, or discard the subtitle stream. Check the processed result, not only the uploaded source. When the platform requires a separate caption upload, keep the reviewed SRT and submit it through that interface. Do not promise embedded captions to viewers until the production player has been tested on the relevant desktop, mobile, and assistive technology combinations.

Subtitle files are readable text and can expose information that is less obvious in the picture. Speaker names, internal project codes, client names, meeting details, locations, unreleased product terms, and transcription notes can remain in cues. Review the actual SRT in a plain-text editor before upload. Search for placeholders and comments. The tool does not redact text, anonymize names, or determine whether content is authorized for publication.

The output is a new local copy that may enter browser download history, synchronized folders, backups, endpoint monitoring, or shared storage. Plan its destination before processing confidential media. Removing the temporary worker files does not remove copies held by the browser, operating system, source editor, or receiving platform. Use an approved device, connection, and storage location, and retain only the versions required by the project policy.

If selection fails, confirm that the video is a real MP4 and the subtitle file uses the .srt extension with numbered, timestamped cues. Save SRT as UTF-8 and remove a binary editor format or word-processing wrapper. If processing fails, test the source MP4 and SRT separately in FFmpeg-compatible desktop software. Damaged media, malformed timestamps, empty cue text, or an unsupported stream layout can prevent packaging. Re-export a clean source instead of repeatedly renaming or resubmitting the same damaged file.

If the download plays but subtitles are missing, open the player's subtitle menu and enable the new track. Test another capable player to separate a file problem from a viewer limitation. If a platform removes the track after upload, use its dedicated caption workflow or a supported container. If timing is wrong, return to the subtitle editor and synchronize the SRT against the exact MP4. This tool attaches reviewed cues; it does not shift, translate, generate, or automatically repair subtitle timing.