12.03.2023 | Leave a comment Содержание naughty перевод, транскрипция, примерыПримеры предложенийДобавить пример предложенияперевод на русский, синонимы, антонимы, произношение, примеры предложений, транскрипция, определение,значение, словосочетанияВарианты Варианты Предложения со словом «naughty» дублей AI над подписками? Перевод и дублирование видео с помощью ИИ AI-дублированные видео: Они обычно звучат хорошо? Создание ИИ Перевод дублера Использование Google Cloud Speech-to-Text API Машинный перевод API-интерфейс медиа-перевода Преобразование текста в речь Оно того стоило? Кто первый? Эбботт и Костелло naughty перевод, транскрипция, примеры [ˈnɔːtɪ]adjective прилагательное Синонимы: bad, corrupt, defective, depraved, disobedient, evil, fallacious, faulty, flaw, foolish, ill, mischievous, perverse, sinister, sly.непослушный naughty girlнепослушная девчонка naughty childкапризный ребенокозорной naughty smileозорная улыбкагадкийдурнойпорочныйparticiple причастие Синонимы: bad, blighted, corrupted, debased, defaced, disfigured, flawed, rotted, rotten, spoiled, spoilt, tainted, twisted, unspoiled, unspoilt.испорченныйПримеры предложений Are you going to play tricks on me again, you naughty boy?Ты снова собираешься меня надуть, негодник? That naughty child needs a good beating.Тому непослушному ребёнку нужна хорошая порка. It was naughty of Mary to pull the kitten’s tail.Мэри дёргала котёнка за хвост, хулиганка. It is very naughty of you to pull the kitten’s tail.Тянуть котёнка за хвост было хулиганством с твоей стороны. I was a naughty boy.Я был непослушным мальчиком. Have you been naughty or nice?Вы шалили или были послушными? She got angry with the naughty boy. Она разозлилась на непослушного мальчика. Today schoolboys are more naughty than earlier.Сегодня школьники более непослушные, чем раньше. He is a naughty boy.Он непослушный мальчик. You are a very naughty boy.Ты весьма шаловливый мальчик. You’re a very naughty boy.Ты весьма шаловливый мальчик. The child has been naughty the whole day.Ребёнок весь день капризничает. I cannot tolerate naughty children.Терпеть не могу непослушных детей. I can’t stand naughty children.Терпеть не могу непослушных детей. My mother says Japanese kids aren’t naughty, but they live very far away, so Santa Claus doesn’t bring them gifts. Thank goodness I was born in Spain.Моя мама говорит, что японские дети не шалят, но так как они живут очень далеко, Санта-Клаус не носит им подарков. Слава богу, я родился в Испании. Even nudists often use euphemisms when referring to naughty parts.Даже нудисты часто используют эвфемизмы, говоря о срамных местах. Tom is sometimes naughty.Том бывает непослушным. You are naughty.Ты озорник. Tom was very naughty.Том был очень непослушный. Tom is naughty.Том непослушный. Tom isn’t naughty.Том не капризный. ×Добавить пример предложенияВы можете добавить пример со словом naughty и после проверки он будет опубликован. Текст на английском (обязательно): Перевод на русский:перевод на русский, синонимы, антонимы, произношение, примеры предложений, транскрипция, определение,значение, словосочетанияВарианты (v1)Варианты (v2)naughty [ˈnɔːtɪ] прилнепослушный, капризный(disobedient, capricious)naughty girl – непослушная девчонкаnaughty child – капризный ребенокозорной, шаловливый, игривый(mischievous, playful)naughty smile – озорная улыбкагадкий(nasty)дурной(bad)порочный(vicious)naughty [ˈnɔːtɪ] причиспорченный(spoiled)adjectiveозорнойmischievous, naughty, wicked, sly, gamine, prankishнепослушныйnaughty, disobedient, unruly, rebellious, recalcitrant, mischievousкапризныйcapricious, whimsical, cranky, naughty, fractious, waywardшаловливыйplayful, naughty, frolicsome, impish, frolic, roguishгадкийnasty, loathsome, naughty, beastly, foul, rottenдурнойbad, ill, evil, wrong, stupid, naughtyиспорченныйspoiled, depraved, tainted, damaged, corrupt, naughtyнеприличныйindecent, obscene, rude, improper, unbecoming, naughtyсомнительныйdoubtful, dubious, questionable, uncertain, equivocal, naughtyрискованныйrisky, perilous, precarious, dicey, dangerous, naughtyПредложения со словом «naughty» Were you naughty or disciplined? Ты была капризной или послушной? I think I was a very independent child, and I wasn’t very naughty . Думаю, я была очень независимым ребенком, и я была не очень капризной. I want to study from experienced, competent and those teachers who love their job and us such harmful and naughty , but we’re so bad. Хочется учиться у опытных, грамотных, таких, которые любят свою работу и нас, вредных и трудных, но не таких уж и плохих. Sometimes he is naughty . Иногда он — непослушный . My dad tells me that I was a very naughty boy, but the best one in the whole world. Мой папа говорит мне, что я был очень непослушным мальчиком, но лучшим в целом мире. The Professor only raised his great eyebrows, as the schoolmaster meets the irrelevant observation of the naughty boy. В ответ на это профессор поднял брови, словно школьный учитель, услыхавший неуместное замечание озорного ученика. Just a little sip of naughty water, and we go back to the hotel. По глоточку огненной водички, и мы сразу едим в отель. There’s my darling little girl. Did you think your naughty mama was never going to come up to see you? Моя дорогая девочка ты думала, что твоя непослушная мама никогда не придет повидать тебя? I know all sorts of naughty places filled with all sorts of naughty men. Мне известны все пикантные местечки, полные разных испорченных мальчишек. Tuck must’ve been not even slightly naughty . Видимо, Так весь год был паинькой. You’re going straight on the naughty step! Ты идешь по рискованному пути. When the owners returned after a few moments away, some were told that their dogs had been naughty and eaten the forbidden food. Когда спустя некоторое время хозяева вернулись, некоторым из них сказали, что их собаки были непослушны и съели запрещенную пищу. I mean, Santa Claus knows if you’re naughty or nice, right? Ведь Дед Мороз знает хорошо ты себя ведёшь или плохо, ведь так? Or, we just call this one last name on my naughty list. Или мы можем занести ещё одно имя в мой список непослушных деток. Listen, Christine, that word that you just used, okay, to call your bunny — that’s a naughty word. Слушай, Кристин, слово, которое ты только что использовала, котором назвала своего кролика, это дурное слово. Casey’s already left, so no house mommy scolding us for being naughty . Кэйси уже ушла, так что домоуправительница не будет ругать нас за шалости. It was naughty of Mary to pull the kitten’s tail. Мэри дёргала котёнка за хвост, хулиганка. OK, so just give me a… a cheeky, sort of, I’ve been a naughty boy look. Так, покажи — ка мне… ну типа я был непослушным мальчиком. BUZZER: You’ve been a very naughty boy! ГУДОК: Ты был очень непослушным мальчиком I wonder what sort of a girl she is-whether good or naughty . Хотела бы я знать, хорошая ли она девочка, или дурная? Looks like my fair lady is more like my naughty lady. Моя прекрасная леди больше похожа на мою порочную леди. Care to find out if those kinky… naughty , dirty, nasty things I do behind closed doors… Узнать, какими непристойными… …порочными, грязными, отвратительными вещами я занимаюсь за закрытыми дверями… I was just having fun with your naughty little minion. Я тут развлекался с твоей милой прислужницей. ‘Wash away your spleen,’ he said. ‘And help your own naughty pet and mine. Залей — ка этим хандру, — сказал он. — И поухаживай за своею баловницей и моим баловником. Was not I the players did disturb twas the doings of a green and naughty herb. Не я, не я актеров потревожил. А злобная, никчемная толпа. Wade, you’ve been very naughty . Какой ты непослушный , Уэйд. When they were all sitting again in the hop-field she told her mother how naughty Philip had been in not coming out of the water till he was blue with cold. Когда они пришли работать на хмельник, Салли пожаловалась матери, какой Филип непослушный : он не хотел вылезать из воды, пока не посинел от холода. You’re as bad as any of them, she said to Philip, in her grave, maternal way, which was at once comic and touching. They’re not anything like so naughty when you’re not here. Вы сами как маленький, — попрекнула она Филипа материнским тоном, который звучал у нее и комично и трогательно. — Без вас они никогда не бывают такими непослушными . ‘Hush, Tiny! you naughty little girl! you will waken your mistress. Тихо, Крошка! Непослушная маленькая девочка! Ты разбудишь свою хозяйку. No sight so sad as that of a naughty child, he began, especially a naughty little girl. Нет более прискорбного зрелища, чем непослушное дитя, — особенно непослушная девочка. I dared commit no fault: I strove to fulfil every duty; and I was termed naughty and tiresome, sullen and sneaking, from morning to noon, and from noon to night. Мне же не прощают ни малейшего промаха. Я стараюсь ни на — шаг не отступать от своих обязанностей, а меня называют непослушной , упрямой и лгуньей, и так с утра и до ночи. What’s mumma’s naughty boy doing out of bed? Что делает здесь мой непослушный мальчик? Кто это удрал из кроватки? The doll was really alive and when he had so foolishly fallen asleep in the carriage, she had run away like a naughty little girl. Кукла была живая, и когда он имел неосторожность заснуть в экипаже, она удрала, как непослушная девочка. Scarlett leaned her head against the wall, like a naughty child in a corner, and rubbed her aching throat. Скарлетт приткнулась головой к стене, словно капризный ребенок, которого поставили в угол, и потерла сдавленное рыданиями горло. It was for all the world, sir, like a naughty youngster fighting with his mother. Похоже было на то, сэр, как капризный малыш сражается со своей мамашей. You know, I once dated this guy who wanted to pretend that he was an archeologist, and that I was this naughty cavewoman who he unfroze from a block of ice. Я однажды встречалась с парнем, который хотел претвориться что он археолог, а я я капризная пещерная женщина, которую он разморозил изо льда. I’m having a hard time figuring out who’s evil and who’s just naughty . Мне вообще сложно понять, кто злой, а кто просто капризный. It seems the naughty baby has made a messy-poo in his… Кажется, капризный малыш наделал в свои… Don’t be a naughty hatter. Не будьте капризным шляпником. ‘He is a naughty monkey, isn’t he?’ he said. Да, озорная обезьянка, — сказал он. But this naughty schoolgirl daring was quickly passing. Но этот озорной, школьнический задор быстро проходил. It’s just a very naughty boy! Это просто очень озорной мальчуган! Costume drama or naughty comedy? Костюмированную драму или озорную комедию? All right, one of us needs to go talk to the naughty nanny. Ладно, один едет общаться с озорной няней. And there’s nothing naughty about that. И в этом нет ничего озорного. Naughty monkey’s got the cord looped round its neck. У этой озорной обезьянки пуповина обёрнута вокруг шеи. That is, unless the, naughty doctor wants to put me on bed rest. То есть, если… озорной врач хочет прописать мне постельный режим. Well, I just thought if you were the heroic World War II pilot, and I was the naughty Air Force medic, we would probably have to protect ourselves from any bombing. Ну, я просто подумала, что если бы ты был героическим пилотом времен II Мировой войны, а я, озорным врачом военно — воздушных сил, мы смогли бы, наверное, защитить себя от любой бомбежки. Uh, you’re a naughty girl. Ох, ты шаловливая девчонка. Oh, we’re trying to do it someplace naughty . О, мы пытаемся сделать это кое — что шаловливое He’s also known as Schmutzli, and Santa gives good gifts to children, Krampus punishes naughty ones, include pulling hair. Он также известен как Шмутцли, Санта дарит хорошие подарки детям, а Крампус наказывает шаловливых, включая таскание за волосы Texts, voice calls, naughty , naughty pictures. Сообщения, звонки, шаловливые фотографии. Or our victim was naughty instead of nice. Или… убитый был шаловливым а не хорошим. Looks like our Santa was a little more naughty than nice. Похоже, наш Санта был скорее шаловливым, чем хорошим. You’ve been a very naughty , naughty little spy. Ты очень шаловливый маленький шпион. It’s, it’s, you’re more, you’re… you’re a naughty mathematician. Это…просто… просто ты шаловливый математик. I was in a very naughty mood when i left that. У меня было весьма игривое настроение, когда я ее писала. Oh, yeah, the pigtails are very naughty . Да, такие игривые. In that case, I’ll put on something naughty . В таком случае я надену что — нибудь игривое. Oh, someone’s in a naughty mood, huh? О, кто — то сегодня в игривом настроении? дублей AI над подписками? Перевод и дублирование видео с помощью ИИ Помимо приготовления пищи для себя и прогулок по дому, я научился любить японские мультфильмы (или «аниме», как его называют дети) во время карантина. Проблема с просмотром аниме, однако, заключается в том, что если не учить японский язык, вы становитесь зависимыми от людей-переводчиков и актеров озвучивания, которые переводят контент на ваш язык. Иногда вы получаете субтитры («сабы»), но не озвучку («дабы»). В других случаях целые сезоны шоу вообще не переводятся, и вы остаетесь на краю своего места только с резюме Википедии и 90s веб-форумов, чтобы провести вас сквозь тьму. Так что ты должен делать? Ответ, очевидно, состоит не в том, чтобы просить компьютер транскрибировать, переводить и озвучивать целые эпизоды телешоу с японского на английский. Перевод — это тщательное искусство, которое не может быть автоматизировано и требует любящего прикосновения человеческой руки. Кроме того, даже если бы вы использовали машинное обучение для перевода видео, вы не могли бы использовать компьютер для дубляжа… Я имею в виду, кто захочет слушать машинные голоса в течение всего сезона? Это было бы ужасно. Только настоящий больной хотел бы этого. Итак, в этом посте я покажу вам, как использовать машинное обучение для расшифровки, перевода и озвучивания видео с одного языка на другой, т. е. «дублирование видео на основе ИИ». Это может не дать вам результатов качества Netflix, но вы можете использовать его для локализации онлайн-разговоров и видео на YouTube в крайнем случае. Мы начнем с преобразования звука в текст с помощью Google Cloud Speech-to-Text API. Далее мы переведем этот текст с помощью Translate API. Наконец, мы будем «озвучивать» переводы с помощью Text-to-Speech API, который воспроизводит голоса, которые, согласно документам, «человеческие». (Кстати, перед тем, как вы начнете ругать меня в комментариях, я должен вам сказать, что YouTube автоматически и бесплатно расшифрует и переведет ваши видео для вас. царапина: действительно неэффективное использование 30 часов.) AI-дублированные видео: Они обычно звучат хорошо? Прежде чем отправиться в это путешествие, вы, вероятно, захотите узнать, чего вас ждет впереди. Какого качества мы реально можем ожидать от конвейера дубляжа видео с машинным обучением? Вот один пример, автоматически дублированный с английского на испанский (субтитры также автоматически генерируются на английском языке). Я не делал на нем никаких настроек и настроек: Как видите, транскрипции приличные, но не идеальные, то же и с переводами. (Не обращайте внимания на то, что говорящий иногда говорит слишком быстро — об этом позже.) В целом, вы можете легко понять суть того, что происходит, из этого дублированного видео, но оно не совсем близко к человеческому качеству. Что делает этот проект сложнее (читай: веселее), чем большинство других, так это то, что есть по крайней мере три возможных точки отказа: Видео может быть неправильно транскрибировано из аудио в текст с помощью Speech-to-Text API Этот текст может быть неправильно или неуклюже переведен API перевода Эти переводы могут быть неправильно произнесены API преобразования текста в речь По моему опыту, наиболее успешными дублированными видео были те, в которых один динамик транслировал чистый аудиопоток и которые были дублированы с английского на другой язык. Во многом это связано с тем, что качество транскрипции (преобразование речи в текст) на английском было намного выше, чем на других исходных языках. Дублирование с неанглоязычных языков оказалось значительно сложнее. Вот один особенно невпечатляющий дубляж с японского на английский одного из моих любимых сериалов, «Тетрадь смерти»: Если вы хотите оставить перевод/дублирование людям, что ж, я не могу вас винить. Но если нет, читайте дальше! Создание ИИ Перевод дублера Как всегда, вы можете найти весь код для этого проекта в репозитории Making with Machine Learning Github. Чтобы запустить код самостоятельно, следуйте инструкциям в README, чтобы настроить свои учетные данные и включить API. Здесь, в этом посте, я просто пройдусь по своим выводам на высоком уровне. Во-первых, вот шаги, которые мы будем выполнять: Извлечение аудио из видеофайлов Преобразование аудио в текст с помощью Speech-to-Text API Разделить расшифрованный текст на предложения/сегменты для перевода Перевести текст Создание голосовых аудиоверсий переведенного текста Ускорьте сгенерированный звук, чтобы он соответствовал оригинальному выступающему в видео Сшивание нового аудио поверх сгиба аудио/видео Признаюсь, когда я впервые приступил к созданию этого даббера, я был полон высокомерия — все, что мне нужно было сделать, это соединить вместе несколько API, что может быть проще? Но как программист, всякая гордыня должна быть наказана, и я был наказан. Сложные моменты — те, что я выделил жирным шрифтом выше, — в основном связаны с необходимостью согласования перевода с видео. Но об этом чуть позже. Использование Google Cloud Speech-to-Text API Первым шагом в переводе видео является преобразование аудио в слова. Для этого я использовал Google Cloud Speech-to-Text API. Этот инструмент может распознавать аудио, произносимое на 125 языках, но, как я уже упоминал выше, самое высокое качество на английском языке. Для нашего варианта использования мы хотим включить пару специальных функций, например: Расширенные модели. Это модели преобразования речи в текст, обученные на определенных типах данных («видео», «телефонный звонок») и обычно более высокого качества. Мы, конечно, будем использовать модель «видео». Фильтры ненормативной лексики. Этот флаг не позволяет API возвращать непристойные слова. Смещение времени слова. Этот флаг сообщает API, что мы хотим, чтобы расшифрованные слова возвращались вместе со временем их произнесения говорящим. Мы будем использовать эти временные метки, чтобы согласовать наши субтитры и дубляж с исходным видео. Речевая адаптация. Как правило, преобразование речи в текст больше всего борется с необычными словами или фразами. Если вы знаете, что в вашем видео могут появиться определенные слова или фразы (например, «градиентный спуск», «машина опорных векторов»), вы можете передать их в API в виде массива, который повысит вероятность расшифровки: клиент = речь.SpeechClient() # Аудио должно быть загружено в корзину GCS, если оно > 5 мин. аудио = речь.RecognitionAudio(uri="gs://path/to/my/audio.wav") конфигурация = речь.RecognitionConfig( language_code="en-US" # Автоматически транскрибировать знаки препинания enable_automatic_punctuation = Верно, enable_word_time_offsets = Верно, речь_контексты=[ # Увеличьте вероятность распознавания этих слов: {"фразы": ["градиентный спуск", "машина опорных векторов"], "увеличение": 15} ], ненормативная лексика = Верно, use_enhanced="видео", модель = "видео") res = client.long_running_recognize(config=config, audio=audio).result() API возвращает расшифрованный текст вместе с отметками времени на уровне слов в формате JSON. В качестве примера я записал это видео. Вы можете увидеть JSON, возвращаемый API, в этой сути. Вывод также позволяет нам быстро проверить работоспособность: Что я на самом деле сказал: «Разработчики программного обеспечения. Мы не известны своим рок-стилем, не так ли? Или это мы? Сегодня я покажу вам, как я использовал машинное обучение, чтобы стать более модным, черпая вдохновение у инфлюенсеров». Что думает API Я сказал: «Разработчики программного обеспечения. Мы не известны своим роком и стилем. Мы или мы сегодня? Я покажу вам, как я использую мл, чтобы сделать новые тренды более модными, черпая вдохновение у инфлюенсеров». По моему опыту, речь идет о качестве, которое вы можете ожидать при расшифровке высококачественного английского аудио. Обратите внимание, что пунктуация немного нарушена. Если вы довольны тем, что зрители улавливают суть видео, этого, вероятно, достаточно, хотя легко вручную исправить стенограммы, если вы говорите на исходном языке. Теперь мы можем использовать выходные данные API для создания (непереведенных) субтитров. На самом деле, если вы запустите мой скрипт с флагом `–srt`, он сделает именно это за вас (srt — это тип файла для скрытых титров): python dubber.py my_movie_file.mp4 "en" outputDirectory --srt --targetLangs["es"] Машинный перевод Теперь, когда у нас есть стенограммы видео, мы можем использовать Translate API, чтобы… ммм… перевести их. Вот тут-то и начинается немного 🤪. Наша цель такова: мы хотим иметь возможность переводить слова в исходном видео, а затем воспроизводить их примерно в тот же момент времени, чтобы мой «дублированный» голос говорил в соответствии с моим реальным голосом. Проблема, однако, в том, что переводы не дословные. В предложении, переведенном с английского на японский, порядок слов может быть перепутан. Он может содержать меньше слов, больше слов, другие слова или (как в случае с идиомами) совершенно другую формулировку. Один из способов обойти это — перевести все предложений , а затем попытаться выровнять временные рамки этих предложений. Но даже это усложняется, потому что как обозначить отдельное предложение? В английском мы можем разделить слова по знакам препинания, например: "Привет! Меня зовут Дейл. Что случилось?" --> ["Привет", "Меня зовут Дейл", "Как дела"] Но пунктуация зависит от языка (в английском нет ¿), а в некоторых языках предложения вообще не разделяются знаками препинания. Кроме того, в реальной жизни мы часто не говорим целыми предложениями. Знаешь? Еще одна проблема, затрудняющая перевод расшифровок, заключается в том, что чем больше контекста вы вводите в модель перевода, тем более качественный перевод вы можете ожидать. Так, например, если я переведу следующее предложение на французский: «Мне грустно, но мне нравится и розовый». Я получу перевод: «Je me sens bleu, mais j’aime aussi le rose». Это точно. Но если я разделю это предложение на две части («Мне грустно» и «Но я тоже люблю розовый») и переведу каждую часть отдельно, я получу: «Je me sens triste, mais j’aime aussi le rose» , то есть «Мне грустно, но я тоже люблю розовый». Все это говорит о том, что чем больше мы нарезаем текст перед отправкой в Translate API, тем хуже будут качество переводов (хотя их будет проще временно выровнять с видео). В конечном счете, стратегия, которую я выбрал, состояла в том, чтобы разделять произносимые слова каждый раз, когда говорящий делал паузу в разговоре более одной секунды. Вот пример того, как это выглядело: { "ru": "Разработчики ПО.", "время_начала": 0,2, "конечное_время": 1,5, }, { "ru": "Мы не известны своим роком и стилем. Так ли это", "время_начала": 1,6, "конец_время": 4.4, }, { "ru": "или мы", "время начала": 5, "конец_время": 6.2, }, Это, естественно, привело к некоторым неуклюжим переводам (например, «or are we» — странный фрагмент для перевода), но я обнаружил, что это работает достаточно хорошо. Вот как эта логика выглядит в коде. Боковая панель: я также заметил, что точность временных меток, возвращаемых API преобразования речи в текст, была значительно ниже для языков, отличных от английского, что еще больше снизило качество дублирования не с английского на английский. И последнее. Если вы уже знаете, как должны быть переведены определенные слова (например, мое имя «Дейл» всегда следует переводить просто как «Дейл»), вы можете улучшить качество перевода, воспользовавшись функцией «глоссария» API перевода. Передовой. Я написал сообщение в блоге об этом здесь. API-интерфейс медиа-перевода Как оказалось, Google Cloud работает над новым API-интерфейсом, который точно решает проблему перевода произносимых слов. Он называется Media Translation API и выполняет перевод аудио напрямую (т. е. без посредника расшифрованного текста). Я не смог использовать этот API в этом проекте, потому что он еще не возвращает временные метки (инструмент в настоящее время находится в стадии бета-тестирования), но я думаю, что было бы здорово использовать его в будущих итерациях! Преобразование текста в речь А теперь самое интересное — подбор компьютерных голосов! Если вы читали о моем конвертере PDF-файлов в аудиокниги, то знаете, что я люблю свой забавно звучащий компьютерный голос. Чтобы сгенерировать звук для дубляжа, я использовал Google Cloud Text-to-Speech API. API TTS может генерировать множество разных голосов на разных языках с разными акцентами, которые вы можете найти и поиграть здесь. «Стандартные» голоса могут звучать немного, э-э, 9.0089 жестяной, , если вы понимаете, о чем я, но голоса WaveNet, которые генерируются высококачественными нейронными сетями, звучат прилично по-человечески. Здесь я столкнулся с другой проблемой, которую не предвидел: что, если компьютерный голос говорит намного медленнее, чем оригинальный динамик видео, так что сгенерированный аудиофайл получается слишком длинным? Тогда дубляж будет невозможно выровнять по исходному видео. Или что, если перевод более подробный, чем исходная формулировка, что приводит к той же проблеме? Чтобы решить эту проблему, я поэкспериментировал с параметром SpeakingRate , доступным в API преобразования текста в речь. Это позволяет ускорить или замедлить компьютерный голос: # Создает экземпляр клиента клиент = текст в речь. TextToSpeechClient() # Установить текстовый ввод для синтеза Synthesis_input = texttospeech.SynthesisInput(text="Hello World") voice = texttospeech.VoiceSelectionParams( language_code = код языка, имя = имя голоса ) # Выберите тип аудиофайла, который вы хотите вернуть audio_config = текст в речь.AudioConfig( audio_encoding = texttospeech.AudioEncoding.MP3, # Ускорить или замедлить речь говорящий_рейт = говорящийСкорость ) # Выполнить запрос преобразования текста в речь на текстовом вводе с выбранным # параметры голоса и тип аудиофайла ответ = client.synthesize_speech( ввод = ввод_синтеза, голос = голос, audio_config = audio_config ) Таким образом, если компьютеру потребовалось на больше времени, чем на , чтобы произнести предложение, чем оригинальному говорящему на видео, я увеличивал SpeakingRate до тех пор, пока компьютер и человек не занимали примерно одинаковое количество времени. Звучит немного сложно? Вот как выглядит код: def speakUnderDuration(text, languageCode, durationSecs, voiceName=None): """Произносить текст в течение определенного времени. Если звук уже укладывается в duratinSecs, никаких изменений вноситься не будет. Аргументы: text (String): текст для произнесения languageCode (String): код языка, т.е. "en" durationSecs (int): лимит времени в секундах voiceName (строка, необязательно): см. https://cloud.google.com/text-to-speech/docs/voices. Возвращает: bytes : Аудио в формате wav """ # Во-первых, сгенерируйте звук с SpeakingRate = 1 baseAudio = говорить (текст, код языка, имя_голоса = имя_голоса) # Сохраняем аудио во временный файл f = tempfile.NamedTemporaryFile(mode="w+b") f.write(baseAudio) f.flush() # Получить продолжительность выборки baseDuration = AudioSegment.from_mp3(f.name).duration_seconds е.закрыть() # Насколько быстрым был сгенерированный звук по сравнению с оригиналом? отношение = базовая продолжительность / продолжительность в секундах # если звук подходит, вернуть его если соотношение <= 1: возврат базыАудио # Если базовый звук слишком длинный, чтобы поместиться в сегмент, увеличьте # скорость речи соотношение = раунд (отношение, 1) # скорость речи должна быть <= 4 если отношение > 4: соотношение = 4 вернуть говорить (текст, languageCode, voiceName=voiceName, SpeakingRate=ratio) Это решило проблему выравнивания аудио и видео, но иногда это приводило к тому, что компьютерные динамики в моих дубляжах были немного неловко быстрыми. Но это проблема для V2. Оно того стоило? Знаете выражение «Играть в глупые игры, выигрывать глупые призы?» Кажется, что каждый проект машинного обучения, который я создаю здесь, является чем-то вроде труда любви, но на этот раз мне нравится мой глупый приз: возможность генерировать неограниченное количество странных, роботизированных, неуклюжих дубляжей аниме, которые иногда довольно приличны. Посмотрите мои результаты здесь: Кто первый? Эбботт и Костелло Эбботт: Что ж, Костелло, я еду с тобой в Нью-Йорк. Знаешь, Баки Харрис, менеджер «Янки», дал мне работу тренера, пока ты в команде. Костелло: Слушай, Эббот, если ты тренер, ты должен знать всех игроков. Эббот: Конечно знаю. Костелло: Ну, ты знаешь, я никогда не встречался с парнями. Так что вам придется назвать мне их имена, и тогда я узнаю, кто играет в команде. Abbott: О, я назову вам их имена, но вы знаете, мне кажется, что они дают этим нынешним игрокам в мяч очень странные имена. Костелло: Ты имеешь в виду смешные имена? Эбботт: Странные имена, ласкательные прозвища… например, Диззи Дин… Костелло: Его брат Даффи. Эббот: Даффи Дин… Костелло: И их кузен-француз. Эббот: Французский? Костелло: Гуфи. Эббот: Глупый Дин. Ну, посмотрим, у нас по сумкам, Кто на первом, Что на втором, Не знаю, на третьем… Костелло: Вот что я хочу выяснить. Эббот: Я говорю, кто на первом, что на втором, я не знаю, на третьем. Костелло: Вы менеджер? Эбботт: Да. Костелло: Ты тоже будешь тренером? Эбботт: Да. Костелло: И вы не знаете имен парней? Эббот: Ну, я должен. Костелло: Тогда кто первый? Эбботт: Да. Костелло: Я имею в виду имя парня. Эббот: Кто. Костелло: Парень на первом. Эббот: Кто. Костелло: Игрок с первой базы. Эббот: Кто. Костелло: Парень, играющий… Эббот: Кто первый! Костелло: Я спрашиваю ВАС, кто первый. Эббот: Это имя человека. Костелло: Так кого зовут? Эбботт: Да. Костелло: Ну, давай, скажи мне. Эббот: Вот и все. Костелло: Это кто? Эбботт: Да. ПАУЗА Костелло: Слушай, тебе нужен первый игрок с низов? Эббот: Конечно. Костелло: Кто играет первым? Эббот: Верно. Костелло: Когда вы ежемесячно платите первому игроку с низов, кто получает деньги? Эбботт: Каждый доллар. Костелло: Все, что я пытаюсь выяснить, это имя парня на первой базе. Эббот: Кто. Костелло: Парень, который получает… Эббот: Вот и все. Костелло: Кто получит деньги. .. Эббот: Да, каждый доллар. Иногда его жена приходит и забирает его. Костелло: Чья жена? Эбботт: Да. ПАУЗА Эббот: Что в этом плохого? Костелло: Слушай, все, что я хочу знать, это то, что когда ты подписываешь первого игрока с низов, как он подписывает свое имя? Эббот: Кто. Костелло: Парень. Эббот: Кто. Костелло: Как он подписывает… Эббот: Вот как он это подписывает. Костелло: Кто? Эбботт: Да. ПАУЗА Костелло: Все, что я пытаюсь выяснить, это как зовут парня на первой базе. Эббот: Нет. Что на второй базе. Костелло: Я не спрашиваю, кто на втором месте. Эббот: Кто первый. Костелло: Одна база за раз! Эббот: Ну, не меняйте игроков. Костелло: Я никого не меняю! Эббот: Успокойся, приятель. Костелло: Я только спрашиваю тебя, кто этот парень на первой базе? Эббот: Верно. Костелло: Хорошо. Эббот: Хорошо. ПАУЗА Костелло: Как зовут парня на первой базе? Эббот: Нет. Что на втором. Костелло: Я не спрашиваю, кто на втором месте. Эббот: Кто первый. Костелло: Не знаю. Эббот: Он на третьем, мы не о нем. Костелло: Как я попал на третью базу? Эббот: Почему вы упомянули его имя. Костелло: Если бы я упомянул имя третьего игрока с низов, я бы сказал, что он играет третьим? Эббот: Нет. Кто играет первым. Костелло: Что будет первым? Эббот: Что на втором? Костелло: Не знаю. Эббот: Он третий. Костелло: Ну вот, снова третье место! ПАУЗА Костелло: Оставайся на третьей базе и не уходи с нее. Эббот: Хорошо, что вы хотите знать? Костелло: Кто сейчас играет на третьей базе? Эббот: Почему вы настаиваете на том, чтобы поставить Who на третью базу? Костелло: Что я надену на третье? Эббот: Нет. Что на втором. Костелло: Тебе не нужен кто на втором месте? Эббот: Кто на первом. Костелло: Не знаю. Эббот и Костелло вместе: третья база! ПАУЗА Костелло: Слушай, ты должен выйти за пределы поля? Эббот: Конечно. Костелло: Имя левого полевого игрока? Эббот: Почему. Костелло: Я просто решил спросить тебя. Эббот: Ну, я просто подумал, что должен тебе сказать. Костелло: Тогда скажи мне, кто играет на левом поле. Эббот: Кто играет первым. Костелло: Я не… держись подальше от приусадебного участка! Я хочу знать, как зовут парня в левом поле? Эббот: Нет, что на втором. Костелло: Я не спрашиваю, кто на втором месте. Эббот: Кто первый! Костелло: Не знаю. Эббот и Костелло вместе: третья база! ПАУЗА Костелло: Имя левого полевого игрока? Эббот: Почему. Костелло: Потому что! Эбботт: О, он в центре поля. ПАУЗА Костелло: Слушай, ты должен быть питчером в этой команде? Эббот: Конечно. Костелло: Имя питчера? Эбботт: Завтра. Костелло: Ты не хочешь говорить мне сегодня? Эббот: Я говорю вам сейчас. Костелло: Тогда вперед. Эббот: Завтра! Костелло: Который час? Эббот: Который час? Костелло: Во сколько завтра ты скажешь мне, кто подает? Эббот: Теперь слушай. Кто не качает. Костелло: Я тебе руку сломаю, ты говоришь, кто первый! Я хочу знать, как зовут питчера? Эббот: Что на втором? Костелло: Не знаю. Эббот и Костелло вместе: третья база! ПАУЗА Костелло: Нужен ловец? Эббот: Конечно. Костелло: Имя ловца? Эббот: Сегодня. Костелло: Сегодняшняя и завтрашняя качки. Эббот: Теперь ты понял. Костелло: Все, что у нас есть, это пара дней в команде. ПАУЗА Костелло: Ты же знаешь, я тоже ловец. Эббот: Так мне говорят. Костелло: Я встаю за тарелку, чтобы ловить рыбу, Завтра в моей команде будет подача, и встанет сильный нападающий. Теперь сильный нападающий бьет по мячу. Когда он бьет по мячу, я, будучи хорошим кетчером, выброшу этого парня с первой базы. Итак, я беру мяч и бросаю его кому? Эббот: Это первое, что вы сказали правильно. Костелло: Я даже не знаю, о чем говорю! ПАУЗА Эббот: Это все, что вам нужно сделать. Костелло: Забросить мяч на первую базу. Эббот: Да! Костелло: У кого он есть? Эбботт: Естественно. ПАУЗА Костелло: Слушай, если я брошу мяч на первую базу, кто-нибудь должен его получить. Теперь у кого есть? Эбботт: Естественно. Костелло: Кто? Эбботт: Естественно. Костелло: Естественно? Эбботт: Естественно. Костелло: Итак, я беру мяч и бросаю его Естественно. Эббот: Нет, ты не бросаешь мяч Кому.