In recent years, with the rise of online videos, the translation of popular foreign films and TV shows has mostly been handled by video platforms, while traditional subtitle groups have gradually faded from view. However, the demand for subtitles in niche and self-produced videos has not been effectively met, leading to a continuous increase in videos without subtitles. To solve this problem, the Whisper tool can be used to automatically generate subtitles for these raw videos and then translate them into Chinese using translation APIs.
To address issues with existing subtitle translation tools such as slow speed, lack of batch processing, and the need for manual intervention, I developed a free and fully featured subtitle translation tool—Subtitle Translator. This tool supports various subtitle formats including .srt
, .ass
, .vtt
, and .lrc
, and offers translation speeds measured in seconds to greatly enhance efficiency. I have successfully transcribed over 500 videos, and the translated subtitle files can be viewed at whisper-subtitles.
Subtitle Translator provides a wide range of parameter options to suit different user needs. Below is a detailed explanation of each parameter:
This toolkit integrates 5 translation APIs and 6 mainstream Large Language Model (LLM) interfaces, allowing users to choose the most suitable translation method based on their needs:
API Type | Translation Quality | Stability | Best Use Case | Free Quota |
---|---|---|---|---|
DeepL (X) | ★★★★★ | ★★★★☆ | Ideal for long texts, smoother translations | 500,000 characters/month |
Google Translate | ★★★★☆ | ★★★★★ | Great for UI texts and common sentences | 500,000 characters/month |
Azure Translate | ★★★★☆ | ★★★★★ | Broadest language support | First 12 months: 2 million characters/month |
GTX API (Free) | ★★★☆☆ | ★★★☆☆ | General-purpose translation | Rate-limited (e.g., ~5 million characters every 3 hours) |
GTX Web (Free) | ★★★☆☆ | ★★☆☆☆ | Suitable for small-scale translations | Free |
If you require higher speed or quality, you can apply for an API Key here: Google Translate, Azure Translate, DeepL Translate. Refer to the corresponding API Application Guide for instructions.
In addition to traditional APIs, this tool also supports intelligent translation via various LLMs, including: DeepSeek, OpenAI, Azure OpenAI, Siliconflow, Groq, and customizable Custom LLM options.
For users deploying LLMs locally (e.g., via Ollama or LM Studio), the following setup instructions apply. For optimal translation quality, we recommend using models such as qwen2.5-14b-instruct
or higher-performance alternatives in your custom configuration.
If you're encountering connection failures when accessing your local model from a browser, it may be due to cross-origin policy restrictions. Here’s how to fix it:
LM Studio:
Once configured, this tool will be able to access your local LLM models successfully. (Special thanks to mrfragger for sharing this setup guide.)
This tool supports translation between over 50 languages, encompassing a broad range of European, Asian, and some African languages. It is suitable for various multilingual content processing scenarios. Supported languages include: English, Chinese, Traditional Chinese, Portuguese, Italian, German, Russian, Spanish, French, Japanese, Korean, Arabic, Turkish, Polish, Ukrainian, Dutch, Greek, Hungarian, Swedish, Danish, Finnish, Czech, Slovak, Bulgarian, Slovenian, Lithuanian, Latvian, Romanian, Estonian, Indonesian, Malay, Hindi, Bengali, Vietnamese, Norwegian, Hebrew, Thai, Filipino (Tagalog), Uzbek, Kyrgyz, Turkmen, Kazakh, Bhojpuri, Kannada, Amharic, Gujarati, Javanese, Persian, Tamil, Swahili, Hausa, Telugu, and Marathi.
For detailed information on supported languages, refer to the official documentation of each service:
For text files with contextual relationships—such as subtitles or Markdown documents—this tool automatically merges multiple lines into "chunks" for translation. The chunk size refers to the maximum number of characters per grouped block. The character limits for each translation service are as follows:
Note: Google Translate disrupts line breaks during processing, so chunked translation is not used with this service.
Delay time sets the wait interval between chunk translations. When processing large volumes of text, some translation APIs may respond slowly—especially under poor network conditions or when using free interfaces. In such cases, delay settings are particularly important.
For example, when testing with Azure Translate’s free tier, it is recommended to set the delay time to 5,000 milliseconds or more to avoid empty responses or errors.
Setting the translation rate too high may result in empty API responses or cause requests to be flagged as abnormal. It's recommended to adjust the rate based on the specific translation service and its stability to improve success rates and maintain reliable performance.
Subtitle Translator supports various subtitle formats including .srt
, .ass
, .vtt
, and .lrc
, and offers automatic format matching:
Subtitle Translator supports both batch translation and single file mode to accommodate different needs:
Batch Translation (default):
Single File Mode (suitable for small tasks):
This tool introduces an optional local translation cache to improve translation efficiency and reduce resource consumption:
source text_target language_source language_translation API_model settings
.To disable the use of translation cache, you can uncheck "Use translation cache" or click "Clear translation cache" in the API settings.
Supports translating the same file into multiple languages at once, which is especially suitable for international video content:
Supports one-click export and import of current settings, making it easy to migrate data when switching devices or moving to a custom domain.
Please note:
This issue may be caused by one of the following reasons:
You can press F12 to open the browser's Developer Tools, switch to the "Network" tab, and check the specific error message in the API response.
If only part of the content failed to translate, try clicking the “Translate” button again. When translation caching is enabled, the system will skip already translated content to avoid duplicate charges or requests.
DeepL's official service does not allow direct access via web pages, so we use an intermediate gateway to send your request.
This relay interface only transmits data and does not collect any personal information, so you can use it with confidence. If you require greater stability, you may set up your own gateway.
No! Your API Key and other settings are stored only in your own browser. We do not upload or record any of your information.
GTX Web puts significant load on the server, so it is disabled by default.
If you're using this tool on your own computer, you can enable it manually. Please avoid using it under a global proxy network, as this may cause translation issues.