Master Dual Subtitles & Translation

The ultimate guide to translate .srt, .vtt, .ass, .sub, .txt files for language learning.

📖 Step-by-Step User Guide

1. Upload Subtitles

Click the Folder Icon (📂). Select your local subtitle file. Supports UTF-8 encoding for perfect character display.

2. Auto-Translation

Choose from 100+ target languages. Our engine handles multi-line translation while preserving original timestamps.

3. Dual-Language File

Click Translate. Once processed, Download your merged dual subtitle file ready for any video player.

🔧 Fix "PERSONAL_KEYS" & API Limits

If the community Google Translation API is overloaded, use your own Personal API Key for unlimited speed:

  1. Sign in to script.google.com and start a + New Project.
  2. Replace existing code with the block below.
  3. Click Deploy > New deployment. Select Web app.
  4. Execute as: Me, Access: Anyone. Copy the Web App URL.
function doPost(e) {
  try {
    var data = JSON.parse(e.postData.contents);
    var targetLang = data.target || 'en';
    var textToTranslate = data.q || '';
    
    if (!textToTranslate) {
      return createResponse({status: 'error', message: 'No text'});
    }

    var translated = LanguageApp.translate(textToTranslate, '', targetLang, {contentType: 'text'});
    
    return createResponse({
      status: 'success',
      translatedText: translated
    });
    
  } catch (error) {
   
    return createResponse({status: 'error', message: error.toString()});
  }
}

function doGet(e) {
  return createResponse({status: 'error', message: 'Ready to work. Use POST.'});
}

function createResponse(data) {
  return ContentService.createTextOutput(JSON.stringify(data))
    .setMimeType(ContentService.MimeType.JSON);
}

🌍 Supported Languages

DuoSub provides high-quality translation for these languages:

Afrikaans, Albanian (Shqip), Amharic (አማርኛ), Arabic (العربية), Armenian (Հայերեն), Assamese (অসমীয়া), Aymara (Aymar aru), Azerbaijani (Azərbaycan), Bambara (Bamanankan), Basque (Euskara), Belarusian (Беларуская), Bengali (বাংলা), Bhojpuri (भोजपुरी), Bosnian (Bosanski), Bulgarian (Български), Catalan (Català), Cebuano, Chinese Simp (简体中文), Chinese Trad (繁體中文), Corsican (Corse), Croatian (Hrvatski), Czech (Čeština), Danish (Dansk), Divehi (Dhivehi), Dogri (डोगरी), Dutch (Nederlands), English, Esperanto, Estonian (Eesti), Ewe (Eʋegbe), Filipino, Finnish (Suomi), French (Français), Frisian (Frysk), Galician (Galego), Georgian (ქართული), German (Deutsch), Greek (Ελληνικά), Guarani (Avañe'ẽ), Gujarati (ગુજરાતી), Haitian Creole (Kreyòl ayisyen), Hausa, Hawaiian (ʻŌlelo Hawaiʻi), Hebrew (עברית), Hindi (हिन्दी), Hmong (Hmoob), Hungarian (Magyar), Icelandic (Íslenska), Igbo, Ilocano, Indonesian (Indonesia), Irish (Gaeilge), Italian (Italiano), Japanese (日本語), Javanese (Jawa), Kannada (ಕನ್ನಡ), Kazakh (Qazaq), Khmer (ខ្មែរ), Kinyarwanda, Korean (한국어), Krio, Kurdish (Kurdî), Kyrgyz (Кыргызча), Lao (ລາວ), Latin (Latina), Latvian (Latviešu), Lingala, Lithuanian (Lietuvių), Luganda, Luxembourgish (Lëtzebuergesch), Macedonian (Македонски), Maithili (मैтили), Malagasy, Malay (Melayu), Malayalam (മലയാളം), Maltese (Malti), Maori (Māori), Marathi (मราठी), Meiteilon (Manipuri), Mizo, Mongolian (Монгол), Myanmar (Burmese), Nepali (नेपाली), Norwegian (Norsk), Nyanja (Chichewa), Odia (Oriya), Oromo (Oromoo), Pashto (پښتو), Persian (فарси), Polish (Polski), Portuguese (Português), Punjabi (ਪੰਜਾਬੀ), Quechua, Romanian (Română), Russian (Русский), Samoan, Sanskrit (संस्कृतम्), Scots Gaelic (Gàidhlig), Sepedi, Serbian (Српски), Sesotho, Shona (ChiShona), Sindhi (سنڌي), Sinhala (සිංහල), Slovak (Slovenčina), Slovenian (Slovenščina), Somali (Soomaali), Spanish (Español), Sundanese (Basa Sunda), Swahili (Kiswahili), Swedish (Svenska), Tajik (Тоҷикӣ), Tamil (தமிழ்), Tatar (Tatarça), Telugu (తెలుగు), Thai (ไทย), Tigrinya (ትግርኛ), Tsonga (Xitsonga), Turkish (Türkçe), Turkmen (Türkmençe), Twi, Ukrainian (Українська), Urdu (اردو), Uyghur (ئۇيغۇرչە), Uzbek (Oʻzbek), Vietnamese (Tiếng Việt), Welsh (Cymraeg), Xhosa (isiXhosa), Yiddish (ייִדיש), Yoruba (Èdè Yorùbá), Zulu (isiZulu).

🔒 Secure & Private Subtitle Processing