From 883d48c2e51a2da4fa620f3cf386f67fe3bcace2 Mon Sep 17 00:00:00 2001 From: shimon Date: Sun, 12 Mar 2023 14:53:56 +0200 Subject: [PATCH] subtitle lan code --- app/config/locale/languages.php | 196 +++++++++++++++++++++++++++++- app/controllers/api/videos.php | 9 +- src/Appwrite/Extend/Exception.php | 1 + 3 files changed, 199 insertions(+), 7 deletions(-) diff --git a/app/config/locale/languages.php b/app/config/locale/languages.php index 6272bd02a6..5ecac964cf 100644 --- a/app/config/locale/languages.php +++ b/app/config/locale/languages.php @@ -10,922 +10,1106 @@ return [ [ "code" => "aa", + "code2" => "aar", "name" => "Afar", "nativeName" => "Afar" ], [ "code" => "ab", + "code2" => "abk", "name" => "Abkhazian", "nativeName" => "Аҧсуа" ], [ "code" => "af", + "code2" => "afr", "name" => "Afrikaans", "nativeName" => "Afrikaans" ], [ "code" => "ak", + "code2" => "aka", "name" => "Akan", "nativeName" => "Akana" ], [ "code" => "am", + "code2" => "amh", "name" => "Amharic", "nativeName" => "አማርኛ" ], [ "code" => "an", + "code2" => "arg", "name" => "Aragonese", "nativeName" => "Aragonés" ], [ "code" => "ar", + "code2" => "ara", "name" => "Arabic", "nativeName" => "العربية" ], [ "code" => "as", + "code2" => "asm", "name" => "Assamese", "nativeName" => "অসমীয়া" ], [ "code" => "av", + "code2" => "ava", "name" => "Avar", "nativeName" => "Авар" ], [ "code" => "ay", + "code2" => "aym", "name" => "Aymara", "nativeName" => "Aymar" ], [ "code" => "az", + "code2" => "aze", "name" => "Azerbaijani", "nativeName" => "Azərbaycanca / آذربايجان" ], [ "code" => "ba", + "code2" => "bak", "name" => "Bashkir", "nativeName" => "Башҡорт" ], [ "code" => "be", + "code2" => "bel", "name" => "Belarusian", "nativeName" => "Беларуская" ], [ "code" => "bg", + "code2" => "bul", "name" => "Bulgarian", "nativeName" => "Български" ], [ "code" => "bh", + "code2" => "bih", "name" => "Bihari", "nativeName" => "भोजपुरी" ], [ "code" => "bi", + "code2" => "bis", "name" => "Bislama", "nativeName" => "Bislama" ], [ "code" => "bm", + "code2" => "bam", "name" => "Bambara", "nativeName" => "Bamanankan" ], [ "code" => "bn", + "code2" => "ben", "name" => "Bengali", "nativeName" => "বাংলা" ], [ "code" => "bo", + "code2" => "bod", "name" => "Tibetan", "nativeName" => "བོད་ཡིག / Bod skad" ], [ "code" => "br", + "code2" => "bre", "name" => "Breton", "nativeName" => "Brezhoneg" ], [ "code" => "bs", + "code2" => "bos", "name" => "Bosnian", "nativeName" => "Bosanski" ], [ "code" => "ca", + "code2" => "cat", "name" => "Catalan", "nativeName" => "Català" ], [ "code" => "ce", + "code2" => "che", "name" => "Chechen", "nativeName" => "Нохчийн" ], [ "code" => "ch", + "code2" => "cha", "name" => "Chamorro", "nativeName" => "Chamoru" ], [ "code" => "co", + "code2" => "cos", "name" => "Corsican", "nativeName" => "Corsu" ], [ "code" => "cr", + "code2" => "cre", "name" => "Cree", "nativeName" => "Nehiyaw" ], [ "code" => "cs", + "code2" => "ces", "name" => "Czech", "nativeName" => "Česky" ], [ "code" => "cu", + "code2" => "chu", "name" => "Old Church Slavonic / Old Bulgarian", "nativeName" => "словѣньскъ / slověnĭskŭ" ], [ "code" => "cv", + "code2" => "chv", "name" => "Chuvash", "nativeName" => "Чăваш" ], [ "code" => "cy", + "code2" => "cym", "name" => "Welsh", "nativeName" => "Cymraeg" ], [ "code" => "da", + "code2" => "dan", "name" => "Danish", "nativeName" => "Dansk" ], [ "code" => "de", + "code2" => "deu", "name" => "German", "nativeName" => "Deutsch" ], [ "code" => "dv", + "code2" => "div", "name" => "Divehi", "nativeName" => "ދިވެހިބަސް" ], [ "code" => "dz", + "code2" => "dzo", "name" => "Dzongkha", "nativeName" => "ཇོང་ཁ" ], [ "code" => "ee", + "code2" => "ewe", "name" => "Ewe", "nativeName" => "Ɛʋɛ" ], [ "code" => "el", + "code2" => "ell", "name" => "Greek", "nativeName" => "Ελληνικά" ], [ "code" => "en", + "code2" => "eng", "name" => "English", "nativeName" => "English" ], [ "code" => "eo", + "code2" => "epo", "name" => "Esperanto", "nativeName" => "Esperanto" ], [ "code" => "es", + "code2" => "spa", "name" => "Spanish", "nativeName" => "Español" ], [ "code" => "et", + "code2" => "est", "name" => "Estonian", "nativeName" => "Eesti" ], [ "code" => "eu", + "code2" => "eus", "name" => "Basque", "nativeName" => "Euskara" ], [ "code" => "fa", + "code2" => "fas", "name" => "Persian", "nativeName" => "فارسی" ], [ "code" => "ff", + "code2" => "ful", "name" => "Peul", "nativeName" => "Fulfulde" ], [ "code" => "fi", + "code2" => "fin", "name" => "Finnish", "nativeName" => "Suomi" ], [ "code" => "fj", + "code2" => "fij", "name" => "Fijian", "nativeName" => "Na Vosa Vakaviti" ], [ "code" => "fo", + "code2" => "fao", "name" => "Faroese", "nativeName" => "Føroyskt" ], [ "code" => "fr", + "code2" => "fra", "name" => "French", "nativeName" => "Français" ], [ "code" => "fy", + "code2" => "fry", "name" => "West Frisian", "nativeName" => "Frysk" ], [ "code" => "ga", + "code2" => "gle", "name" => "Irish", "nativeName" => "Gaeilge" ], [ "code" => "gd", + "code2" => "gla", "name" => "Scottish Gaelic", "nativeName" => "Gàidhlig" ], [ "code" => "gl", + "code2" => "glg", "name" => "Galician", "nativeName" => "Galego" ], [ "code" => "gn", + "code2" => "grn", "name" => "Guarani", "nativeName" => "Avañe'ẽ" ], [ "code" => "gu", + "code2" => "guj", "name" => "Gujarati", "nativeName" => "ગુજરાતી" ], [ "code" => "gv", + "code2" => "glv", "name" => "Manx", "nativeName" => "Gaelg" ], [ "code" => "ha", + "code2" => "hau", "name" => "Hausa", "nativeName" => "هَوُسَ" ], [ "code" => "he", + "code2" => "heb", "name" => "Hebrew", "nativeName" => "עברית" ], [ "code" => "hi", + "code2" => "hin", "name" => "Hindi", "nativeName" => "हिन्दी / हिंदी " ], [ "code" => "ho", + "code2" => "hmo", "name" => "Hiri Motu", "nativeName" => "Hiri Motu" ], [ "code" => "hr", + "code2" => "hrv", "name" => "Croatian", "nativeName" => "Hrvatski" ], [ "code" => "ht", + "code2" => "hat", "name" => "Haitian", "nativeName" => "Krèyol ayisyen" ], [ "code" => "hu", + "code2" => "hun", "name" => "Hungarian", "nativeName" => "Magyar" ], [ "code" => "hy", + "code2" => "hye", "name" => "Armenian", "nativeName" => "Հայերեն" ], [ "code" => "hz", + "code2" => "her", "name" => "Herero", "nativeName" => "Otsiherero" ], [ "code" => "ia", + "code2" => "ina", "name" => "Interlingua", "nativeName" => "Interlingua" ], [ "code" => "id", + "code2" => "ind", "name" => "Indonesian", "nativeName" => "Bahasa Indonesia" ], [ "code" => "ie", + "code2" => "ile", "name" => "Interlingue", "nativeName" => "Interlingue" ], [ "code" => "ig", + "code2" => "ibo", "name" => "Igbo", "nativeName" => "Igbo" ], [ "code" => "ii", + "code2" => "iii", "name" => "Sichuan Yi", "nativeName" => "ꆇꉙ / 四川彝语" ], [ "code" => "ik", + "code2" => "ipk", "name" => "Inupiak", "nativeName" => "Iñupiak" ], [ "code" => "io", + "code2" => "ido", "name" => "Ido", "nativeName" => "Ido" ], [ "code" => "is", + "code2" => "isl", "name" => "Icelandic", "nativeName" => "Íslenska" ], [ "code" => "it", + "code2" => "ita", "name" => "Italian", "nativeName" => "Italiano" ], [ "code" => "iu", + "code2" => "iku", "name" => "Inuktitut", "nativeName" => "ᐃᓄᒃᑎᑐᑦ" ], [ "code" => "ja", + "code2" => "jpn", "name" => "Japanese", "nativeName" => "日本語" ], [ "code" => "jv", + "code2" => "jav", "name" => "Javanese", "nativeName" => "Basa Jawa" ], [ "code" => "ka", + "code2" => "kat", "name" => "Georgian", "nativeName" => "ქართული" ], [ "code" => "kg", + "code2" => "kon", "name" => "Kongo", "nativeName" => "KiKongo" ], [ "code" => "ki", + "code2" => "kik", "name" => "Kikuyu", "nativeName" => "Gĩkũyũ" ], [ "code" => "kj", + "code2" => "kua", "name" => "Kuanyama", "nativeName" => "Kuanyama" ], [ "code" => "kk", + "code2" => "kaz", "name" => "Kazakh", "nativeName" => "Қазақша" ], [ "code" => "kl", + "code2" => "kal", "name" => "Greenlandic", "nativeName" => "Kalaallisut" ], [ "code" => "km", + "code2" => "khm", "name" => "Khmer", "nativeName" => "ភាសាខ្មែរ" ], [ "code" => "kn", + "code2" => "kan", "name" => "Kannada", "nativeName" => "ಕನ್ನಡ" ], [ "code" => "ko", + "code2" => "kor", "name" => "Korean", "nativeName" => "한국어" ], [ "code" => "kr", + "code2" => "kau", "name" => "Kanuri", "nativeName" => "Kanuri" ], [ "code" => "ks", + "code2" => "kas", "name" => "Kashmiri", "nativeName" => "कश्मीरी / كشميري" ], [ "code" => "ku", + "code2" => "kur", "name" => "Kurdish", "nativeName" => "Kurdî / كوردی" ], [ "code" => "kv", + "code2" => "kom", "name" => "Komi", "nativeName" => "Коми" ], [ "code" => "kw", + "code2" => "cor", "name" => "Cornish", "nativeName" => "Kernewek" ], [ "code" => "ky", + "code2" => "kir", "name" => "Kirghiz", "nativeName" => "Kırgızca / Кыргызча" ], [ "code" => "la", + "code2" => "lat", "name" => "Latin", "nativeName" => "Latina" ], [ "code" => "lb", + "code2" => "ltz", "name" => "Luxembourgish", "nativeName" => "Lëtzebuergesch" ], [ "code" => "lg", + "code2" => "lug", "name" => "Ganda", "nativeName" => "Luganda" ], [ "code" => "li", + "code2" => "lim", "name" => "Limburgian", "nativeName" => "Limburgs" ], [ "code" => "ln", + "code2" => "lin", "name" => "Lingala", "nativeName" => "Lingála" ], [ "code" => "lo", + "code2" => "lao", "name" => "Laotian", "nativeName" => "ລາວ / Pha xa lao" ], [ "code" => "lt", + "code2" => "lit", "name" => "Lithuanian", "nativeName" => "Lietuvių" ], [ "code" => "lu", + "code2" => "lub", "name" => "Luba-Katanga", "nativeName" => "Tshiluba" ], [ "code" => "lv", + "code2" => "lav", "name" => "Latvian", "nativeName" => "Latviešu" ], [ "code" => "mg", + "code2" => "mlg", "name" => "Malagasy", "nativeName" => "Malagasy" ], [ "code" => "mh", + "code2" => "mah", "name" => "Marshallese", "nativeName" => "Kajin Majel / Ebon" ], [ "code" => "mi", + "code2" => "mri", "name" => "Maori", "nativeName" => "Māori" ], [ "code" => "mk", + "code2" => "mkd", "name" => "Macedonian", "nativeName" => "Македонски" ], [ "code" => "ml", + "code2" => "mal", "name" => "Malayalam", "nativeName" => "മലയാളം" ], [ "code" => "mn", + "code2" => "mon", "name" => "Mongolian", "nativeName" => "Монгол" ], [ - "code" => "mo", + "code" => "ro", + "code2" => "ron", "name" => "Moldovan", "nativeName" => "Moldovenească" ], [ "code" => "mr", + "code2" => "mar", "name" => "Marathi", "nativeName" => "मराठी" ], [ "code" => "ms", + "code2" => "msa", "name" => "Malay", "nativeName" => "Bahasa Melayu" ], [ "code" => "mt", + "code2" => "mlt", "name" => "Maltese", "nativeName" => "bil-Malti" ], [ "code" => "my", + "code2" => "mya", "name" => "Burmese", "nativeName" => "မြန်မာစာ" ], [ "code" => "na", + "code2" => "nau", "name" => "Nauruan", "nativeName" => "Dorerin Naoero" ], [ "code" => "nb", + "code2" => "nob", "name" => "Norwegian Bokmål", "nativeName" => "Norsk bokmål" ], [ "code" => "nd", + "code2" => "nde", "name" => "North Ndebele", "nativeName" => "Sindebele" ], [ "code" => "ne", + "code2" => "nep", "name" => "Nepali", "nativeName" => "नेपाली" ], [ "code" => "ng", + "code2" => "ndo", "name" => "Ndonga", "nativeName" => "Oshiwambo" ], [ "code" => "nl", + "code2" => "nld", "name" => "Dutch", "nativeName" => "Nederlands" ], [ "code" => "nn", + "code2" => "nno", "name" => "Norwegian Nynorsk", "nativeName" => "Norsk nynorsk" ], [ "code" => "nr", + "code2" => "nbl", "name" => "South Ndebele", "nativeName" => "isiNdebele" ], [ "code" => "nv", + "code2" => "nav", "name" => "Navajo", "nativeName" => "Diné bizaad" ], [ "code" => "ny", + "code2" => "nya", "name" => "Chichewa", "nativeName" => "Chi-Chewa" ], [ "code" => "oc", + "code2" => "oci", "name" => "Occitan", "nativeName" => "Occitan" ], [ "code" => "oj", + "code2" => "oji", "name" => "Ojibwa", "nativeName" => "ᐊᓂᔑᓈᐯᒧᐎᓐ / Anishinaabemowin" ], [ "code" => "om", + "code2" => "orm", "name" => "Oromo", "nativeName" => "Oromoo" ], [ "code" => "or", + "code2" => "ori", "name" => "Oriya", "nativeName" => "ଓଡ଼ିଆ" ], [ "code" => "os", + "code2" => "oss", "name" => "Ossetian / Ossetic", "nativeName" => "Иронау" ], [ "code" => "pa", + "code2" => "pan", "name" => "Panjabi / Punjabi", "nativeName" => "ਪੰਜਾਬੀ / पंजाबी / پنجابي" ], [ "code" => "pi", + "code2" => "pli", "name" => "Pali", "nativeName" => "Pāli / पाऴि" ], [ "code" => "pl", + "code2" => "pol", "name" => "Polish", "nativeName" => "Polski" ], [ "code" => "ps", + "code2" => "pus", "name" => "Pashto", "nativeName" => "پښتو" ], [ "code" => "pt", + "code2" => "por", "name" => "Portuguese", "nativeName" => "Português" ], [ "code" => "qu", + "code2" => "que", "name" => "Quechua", "nativeName" => "Runa Simi" ], [ "code" => "rm", + "code2" => "roh", "name" => "Raeto Romance", "nativeName" => "Rumantsch" ], [ "code" => "rn", + "code2" => "run", "name" => "Kirundi", "nativeName" => "Kirundi" ], [ "code" => "ro", + "code2" => "ron", "name" => "Romanian", "nativeName" => "Română" ], [ "code" => "ru", + "code2" => "rus", "name" => "Russian", "nativeName" => "Русский" ], [ "code" => "rw", + "code2" => "kin", "name" => "Rwandi", "nativeName" => "Kinyarwandi" ], [ "code" => "sa", + "code2" => "san", "name" => "Sanskrit", "nativeName" => "संस्कृतम्" ], [ "code" => "sc", + "code2" => "srd", "name" => "Sardinian", "nativeName" => "Sardu" ], [ "code" => "sd", + "code2" => "snd", "name" => "Sindhi", "nativeName" => "सिन्धी / सिंधी " ], [ "code" => "se", + "code2" => "sme", "name" => "Northern Sami", "nativeName" => "Sámegiella" ], [ "code" => "sg", + "code2" => "sag", "name" => "Sango", "nativeName" => "Sängö" ], [ "code" => "sh", + "code2" => "", "name" => "Serbo-Croatian", "nativeName" => "Srpskohrvatski / Српскохрватски" ], [ "code" => "si", + "code2" => "sin", "name" => "Sinhalese", "nativeName" => "සිංහල" ], [ "code" => "sk", + "code2" => "slk", "name" => "Slovak", "nativeName" => "Slovenčina" ], [ "code" => "sl", + "code2" => "slv", "name" => "Slovenian", "nativeName" => "Slovenščina" ], [ "code" => "sm", + "code2" => "smo", "name" => "Samoan", "nativeName" => "Gagana Samoa" ], [ "code" => "sn", + "code2" => "sna", "name" => "Shona", "nativeName" => "chiShona" ], [ "code" => "so", + "code2" => "som", "name" => "Somalia", "nativeName" => "Soomaaliga" ], [ "code" => "sq", + "code2" => "sqi", "name" => "Albanian", "nativeName" => "Shqip" ], [ "code" => "sr", + "code2" => "srp", "name" => "Serbian", "nativeName" => "Српски" ], [ "code" => "ss", + "code2" => "ssw", "name" => "Swati", "nativeName" => "SiSwati" ], [ "code" => "st", + "code2" => "sot", "name" => "Southern Sotho", "nativeName" => "Sesotho" ], [ "code" => "su", + "code2" => "sun", "name" => "Sundanese", "nativeName" => "Basa Sunda" ], [ "code" => "sv", + "code2" => "swe", "name" => "Swedish", "nativeName" => "Svenska" ], [ "code" => "sw", + "code2" => "swa", "name" => "Swahili", "nativeName" => "Kiswahili" ], [ "code" => "ta", + "code2" => "tam", "name" => "Tamil", "nativeName" => "தமிழ்" ], [ "code" => "te", + "code2" => "tel", "name" => "Telugu", "nativeName" => "తెలుగు" ], [ "code" => "tg", + "code2" => "tgk", "name" => "Tajik", "nativeName" => "Тоҷикӣ" ], [ "code" => "th", + "code2" => "tha", "name" => "Thai", "nativeName" => "ไทย / Phasa Thai" ], [ "code" => "ti", + "code2" => "tir", "name" => "Tigrinya", "nativeName" => "ትግርኛ" ], [ "code" => "tk", + "code2" => "tuk", "name" => "Turkmen", "nativeName" => "Туркмен / تركمن" ], [ "code" => "tl", + "code2" => "tgl", "name" => "Tagalog / Filipino", "nativeName" => "Tagalog" ], [ "code" => "tn", + "code2" => "tsn", "name" => "Tswana", "nativeName" => "Setswana" ], [ "code" => "to", + "code2" => "ton", "name" => "Tonga", "nativeName" => "Lea Faka-Tonga" ], [ "code" => "tr", + "code2" => "tur", "name" => "Turkish", "nativeName" => "Türkçe" ], [ "code" => "ts", + "code2" => "tso", "name" => "Tsonga", "nativeName" => "Xitsonga" ], [ "code" => "tt", + "code2" => "tat", "name" => "Tatar", "nativeName" => "Tatarça" ], [ "code" => "tw", + "code2" => "twi", "name" => "Twi", "nativeName" => "Twi" ], [ "code" => "ty", + "code2" => "tah", "name" => "Tahitian", "nativeName" => "Reo Mā`ohi" ], [ "code" => "ug", + "code2" => "uig", "name" => "Uyghur", "nativeName" => "Uyƣurqə / ئۇيغۇرچە" ], [ "code" => "uk", + "code2" => "ukr", "name" => "Ukrainian", "nativeName" => "Українська" ], [ "code" => "ur", + "code2" => "urd", "name" => "Urdu", "nativeName" => "اردو" ], [ "code" => "uz", + "code2" => "uzb", "name" => "Uzbek", "nativeName" => "Ўзбек" ], [ "code" => "ve", + "code2" => "ven", "name" => "Venda", "nativeName" => "Tshivenḓa" ], [ "code" => "vi", + "code2" => "vie", "name" => "Vietnamese", "nativeName" => "Tiếng Việt" ], [ "code" => "vo", + "code2" => "vol", "name" => "Volapük", "nativeName" => "Volapük" ], [ "code" => "wa", + "code2" => "wln", "name" => "Walloon", "nativeName" => "Walon" ], [ "code" => "wo", + "code2" => "wol", "name" => "Wolof", "nativeName" => "Wollof" ], [ "code" => "xh", + "code2" => "xho", "name" => "Xhosa", "nativeName" => "isiXhosa" ], [ "code" => "yi", + "code2" => "yid", "name" => "Yiddish", "nativeName" => "ייִדיש" ], [ "code" => "yo", + "code2" => "yor", "name" => "Yoruba", "nativeName" => "Yorùbá" ], [ "code" => "za", + "code2" => "zha", "name" => "Zhuang", "nativeName" => "Cuengh / Tôô / 壮语" ], [ "code" => "zh", + "code2" => "zho", "name" => "Chinese", "nativeName" => "中文" ], [ - "code" => "zu", - "name" => "Zulu", - "nativeName" => "isiZulu" - ] -]; + "code" => "zh", + "code2" => "zho", + "name" => "Chinese", + "nativeName" => "中文" + ], +]; \ No newline at end of file diff --git a/app/controllers/api/videos.php b/app/controllers/api/videos.php index 47ac26f755..4141e7aa51 100644 --- a/app/controllers/api/videos.php +++ b/app/controllers/api/videos.php @@ -7,6 +7,7 @@ use Appwrite\Utopia\Database\Validator\Queries\Files; use Appwrite\Utopia\Response; use Appwrite\Utopia\View; use Utopia\App; +use Utopia\Config\Config; use Utopia\Database\Database; use Utopia\Database\Document; use Utopia\Database\Query; @@ -266,7 +267,7 @@ App::post('/v1/videos/:videoId/subtitles') ->param('bucketId', '', new CustomId(), 'Subtitle bucket unique ID.') ->param('fileId', '', new CustomId(), 'Subtitle file unique ID.') ->param('name', '', new Text(128), 'Subtitle name.') - ->param('code', '', new Text(128), 'Subtitle code name.') + ->param('code', '', new Text(3), 'Subtitle ISO 639-2 three letters alpha code.') ->param('default', false, new Boolean(true), 'Default subtitle.') ->inject('request') ->inject('response') @@ -274,6 +275,12 @@ App::post('/v1/videos/:videoId/subtitles') ->inject('mode') ->action(action: function (string $videoId, string $bucketId, string $fileId, string $name, string $code, bool $default, Request $request, Response $response, Database $dbForProject, string $mode) { + $languages = Config::getParam('locale-languages'); + $found = array_search($code, array_column($languages, 'code2')); + if (!$found) { + throw new Exception(Exception::VIDEO_LANGUAGE_CODE_NOT_FOUND); + } + $video = Authorization::skip(fn() => $dbForProject->getDocument('videos', $videoId)); if ($video->isEmpty()) { diff --git a/src/Appwrite/Extend/Exception.php b/src/Appwrite/Extend/Exception.php index ce1fb6907d..59dbdedf93 100644 --- a/src/Appwrite/Extend/Exception.php +++ b/src/Appwrite/Extend/Exception.php @@ -186,6 +186,7 @@ class Exception extends \Exception public const VIDEO_SUBTITLE_NOT_FOUND = 'video_subtitle_not_found'; public const VIDEO_NOT_FOUND = 'video_not_found'; public const VIDEO_RENDITION_SEGMENT_NOT_FOUND = 'video_rendition_segment_not_found'; + public const VIDEO_LANGUAGE_CODE_NOT_FOUND = 'video_language_code_not_found'; public const VIDEO_SUBTITLE_SEGMENT_NOT_FOUND = 'video_subtitle_segment_not_found';