Использование видеотрансляции

Справочная документация | Примеры

В этой статье вы узнаете, как использовать перевод видео с помощью Azure Speech в инструментах Foundry на портале Microsoft Foundry.

Подсказка

Попробуйте выполнить видеотрансляции на портале Microsoft Foundry перед использованием API. Используйте REST API видеотрансляции для интеграции видеотрансляции в приложения. Дополнительные сведения об API см. в разделе REST API перевода видео.

Предпосылки

Попробуйте видео-перевод

Чтобы проверить демонстрацию видеоперевода, выполните следующие действия.

  1. Перейдите в каталог моделей на портале Microsoft Foundry.

  2. Введите и выполните поиск по запросу "Azure-AI-Speech" в поле поиска каталога.

    Скриншот каталога моделей в портале Microsoft Foundry.

  3. Выберите Azure-AI-Speech, и вас направят на страницу Azure-AI-Speech.

  4. Выберите возможности "Речь" по сценарию>"Видеотрансляции".

    Снимок экрана: фильтрация возможностей службы

  5. В разделе "Пример" справа выберите личный или стандартный голос.

  6. Нажмите кнопку воспроизведения , чтобы услышать переведенный звук. Выберите исходную вкладку видео, чтобы воспроизвести исходный звук.

    Снимок экрана: выбор типа голоса на новой странице проекта.

    Параметры типа голосовой связи:

    • Стандартный голос: служба автоматически выбирает наиболее подходящий стандартный голос, сопоставляя голос говорящего в видео со стандартными голосами.
    • Личный голос: используйте личный голос, соответствующий голосу динамиков в видео.

    Примечание.

    Чтобы использовать личный голос через API, необходимо подать заявку на доступ.

Создание проекта преобразования видео

Чтобы создать проект преобразования видео, выполните следующие действия.

  1. Перейдите в каталог моделей на портале Microsoft Foundry.

  2. Введите и выполните поиск по запросу "Azure-AI-Speech" в поле поиска каталога.

    Скриншот каталога моделей в портале Microsoft Foundry.

  3. Выберите Azure-AI-Speech, и вас направят на страницу Azure-AI-Speech.

  4. Выберите возможности "Речь" по сценарию>"Видеотрансляции".

    Снимок экрана: фильтрация возможностей службы

  5. Выберите «Перейти в "Speech playground"».

  6. Выберите "Мои видео>", чтобы отправить видео.

    Снимок экрана: кнопка

  7. На странице "Отправить видео" выберите тип голосовой связи.

    Снимок экрана: выбор типа голоса на новой странице проекта.

    Параметры типа голосовой связи:

    • Стандартный голос: служба автоматически выбирает наиболее подходящий стандартный голос, сопоставляя голос говорящего в видео со стандартными голосами.
    • Личный голос: используйте личный голос, соответствующий голосу динамиков в видео.

    Примечание.

    Чтобы использовать личный голос, необходимо подать заявку на доступ.

  8. Отправьте видеофайл, перетаскивая видеофайл или выбрав его вручную. Видео должно быть в формате .mp4, менее 5 ГБ и короче 4 часа.

  9. Укажите количество докладчиков, язык видео и перевод на язык.

  10. Выберите поля, чтобы подтвердить сведения о ценах и код поведения.

  11. Нажмите кнопку Далее: Дополнительные параметры , если вы хотите настроить дополнительные параметры.

    Снимок экрана: предоставление сведений о видео на новой странице проекта.

  12. При необходимости можно настроить следующие параметры:

    • Lexicon file: этот параметр позволяет добавлять пользовательские слова или фразы, которые система должна распознавать и произносить правильно. Вы можете создать лексикон-файл в средстве создания звукового содержимого в Speech Studio и выбрать его здесь.
    • Встраивание субтитров: В этом пункте вы можете добавить субтитры к видео. Файл субтитров может быть в формате WebVTT или JSON. Пример файла WebVTT для ссылки можно скачать, выбрав "Скачать пример VTT-файла".

    Снимок экрана: предоставление сведений о лексиконе и субтитрах при создании нового проекта.

    Если вы хотите использовать собственные файлы субтитров, выберите Субтитры>Загрузить свои собственные. Вы можете отправить исходный файл субтитров или целевой файл субтитров.

    • Автоматические субтитры: результаты как исходного, так и целевого языкового субтитров.
    • Отправка субтитров исходного языка: результаты как исходных, так и целевых субтитров языка.
    • Отправка субтитров на целевом языке: приводит только к субтитрам целевого языка.
  13. Выберите Создать.

После завершения отправки на Хранилище BLOB-объектов Azure можно проверить состояние обработки на вкладке проекта.

После создания проекта можно выбрать проект, чтобы просмотреть подробные параметры и внести корректировки в соответствии с вашими предпочтениями.

Проверка и настройка параметров голоса

Выберите "Мои видео" , и вы увидите видео, помеченное состоянием "Успешно ".

Снимок экрана: выбор успешно переведенного видео.

Выберите видео, чтобы просмотреть вкладки "Переведенные " и "Исходные " в разделе "Видео". Вы можете сравнить исходные и переведенные видео, выбрав соответствующую вкладку. Переведенное видео создается автоматически, и его можно воспроизвести, чтобы проверить качество перевода.

Снимок экрана просмотра сведений о переведенном видео.

В правой части видео можно просмотреть исходный скрипт и переведенный скрипт. При наведении указателя мыши на каждую часть исходного скрипта видео автоматически переходит к соответствующему сегменту исходного видео, а при наведении указателя мыши на каждую часть переведенного скрипта видео автоматически переходит к соответствующему переведенному сегменту.

Вы можете внести несколько изменений в видео, включая настройку параметров голоса, добавление или удаление сегментов и изменение интервала времени скриптов. Плата взимается только после нажатия кнопки "Применить изменения ", чтобы применить изменения. Вы можете нажать кнопку "Сохранить", чтобы сохранить работу без каких-либо расходов.

Если вы сталкиваетесь с сегментами с "неопознанным" именем голоса, это может быть связано с тем, что система не могла точно распознать голос, особенно в ситуациях, когда голоса спикеров перекрываются. В таких случаях рекомендуется вручную изменить имя голоса.

Снимок экрана: один сегмент с неопознанным именем голоса.

Перевод на другой язык

Вы можете сохранить текущий проект перевода и перевести исходное видео на другой язык.

  1. Выберите мои видео и выберите плитку для перевода видео.
  2. Выберите +Создать язык.
  3. На новой странице перевода на новую языковую страницу, которая появится, выберите новый язык перевода и тип голосовой связи. После перевода видео создается автоматически новый проект.

REST API видеотрансляции упрощает интеграцию видеотрансляции с приложениями. Она поддерживает отправку, управление и уточнение видеотрансляций с несколькими итерациями для непрерывного улучшения. Из этой статьи вы узнаете, как использовать видеотрансляции с помощью REST API.

Предпосылки

Подсказка

Перед началом работы ознакомьтесь с обзором видеотрансляции , чтобы понять комплексный процесс перевода видео.

Рабочий процесс

Ниже приведены шаги для получения преобразованного видео с помощью REST API:

  1. Создайте перевод и автоматически создайте первую итерацию. Периодически проверяйте состояние операции до тех пор, пока она не достигнет Succeeded или Failed.
  2. Скачайте переведенное видео и субтитры.
  3. При необходимости создайте дополнительные итерации для улучшения качества перевода.

Шаг 1. Создание перевода и автоматическое создание первой итерации

Внимание

Если autoCreateFirstIteration становится true (рекомендуется), создание перевода автоматически запускает процесс перевода с первого цикла. Переводы и итерации, созданные с помощью REST API, не синхронизируются с порталом, и наоборот.

Чтобы создать видеоперевод, вам нужно сформировать путь и тело запроса HTTP PUT в соответствии со следующими инструкциями:

  • Укажите displayName: отображаемое имя перевода. Это понятное имя, которое помогает определить перевод.

  • Укажите description: краткое описание перевода. Это необязательно, но может быть полезно в целях документации.

  • sourceLocaleУкажите: язык исходного видео. Это язык, который говорится в видеофайле.

  • targetLocaleУкажите: язык, в который нужно перевести видео. Это целевой язык для перевода.

  • Укажите voiceKind: тип голоса, который вы хотите использовать для перевода. Вы можете выбрать между PlatformVoice и PersonalVoice. Для PlatformVoiceэтого система автоматически выбирает наиболее подходящий стандартный голос, сопоставляя голос говорящего в видео со стандартными голосами. Для PersonalVoice система предлагает модель, которая создает высококачественное воспроизведение голоса за несколько секунд.

    Примечание.

    Чтобы использовать личный голос, необходимо подать заявку на доступ.

  • Укажите speakerCount: количество динамиков в видео. Это необязательный параметр, и его можно задать в значение 1, если вы не уверены.

  • Укажите subtitleMaxCharCountPerSegment: максимальное число символов, разрешенных для каждого сегмента субтитров. Это необязательный параметр, и его можно задать в значение 30, если вы не уверены.

  • Укажите exportSubtitleInVideo: логическое значение, указывающее, следует ли экспортировать субтитры в видео. Это необязательный параметр, и его можно задать true , если вы хотите включить субтитры в видео.

  • Укажите autoCreateFirstIteration: логическое значение, указывающее, следует ли автоматически создавать первую итерацию при создании перевода. Это рекомендуется для повышения производительности. Если задано значение true, процесс перевода запускается немедленно, не требуя отдельного вызова итерации создания.

  • Укажите firstIterationInput: если autoCreateFirstIteration задано trueзначение, можно указать входные параметры для первой итерации, например enableVideoSpeedAdjustment, subtitleFontSizeи webvttFile. Это необязательно.

  • videoFileUrlУкажите: URL-адрес видеофайла, который требуется перевести. Видео должно быть в формате .mp4, менее 5 ГБ и короче 4 часа. Видео можно отправить в Хранилище BLOB-объектов Azure, а затем использовать URL-адрес Blob. Для тестирования можно использовать пример видеофайла, предоставленного Microsoft по адресу https://ai.azure.com/speechassetscache/ttsvoice/VideoTranslation/PublicDoc/SampleData/es-ES-TryOutOriginal.mp4.

Для проверки подлинности и авторизации необходимо включить в запрос следующие заголовки и идентификаторы путей:

  • Operation-Id Задайте заголовок: Operation-Id должен быть уникальным для каждой операции, например, при создании каждой итерации. Замените Your-Operation-Id уникальным идентификатором для этой операции.
  • Замените Your-Translation-Id в пути. Идентификатор перевода должен быть уникальным среди всех переводов для ресурса "Речь". Замените Your-Translation-Id выбранным идентификатором перевода. Этот идентификатор используется для ссылки на перевод в последующих вызовах API.
  • Замените YourSpeechResourceKey ключом ресурса "Речь" и YourSpeechResourceRegion регионом ресурса "Речь".
curl -v -X PUT -H "Ocp-Apim-Subscription-Key: YourSpeechResourceKey" -H "Operation-Id: Your-Operation-Id-1" -H "Content-Type: application/json" -d '{
  "displayName": "My translation object",
  "description": "My translation object for video translation iterations",
  "input": {
    "sourceLocale": "es-ES",
    "targetLocale": "en-US",
    "voiceKind": "PlatformVoice",
    "speakerCount": 1,
    "subtitleMaxCharCountPerSegment": 50,
    "exportSubtitleInVideo": false,
    "enableLipSync": false,
    "autoCreateFirstIteration": true,
    "firstIterationInput": {
      "enableOcrCorrectionFromSubtitle": true,
      "subtitleFontSize": 10
    },
    "videoFileUrl": "https://ai.azure.com/speechassetscache/ttsvoice/VideoTranslation/PublicDoc/SampleData/es-ES-TryOutOriginal.mp4"
  }
}' "https://YourSpeechResourceRegion.api.cognitive.microsoft.com/videotranslation/translations/Your-Translation-Id?api-version=2026-03-01"

Внимание

Если вы пытаетесь использовать существующий идентификатор перевода с разными параметрами, API вернет ошибку. Идентификатор перевода должен быть уникальным для каждого перевода. Вы можете внести изменения в существующий перевод, создав дополнительные итерации.

Вы должны получить ответ в следующем формате:

{
  "input": {
    "sourceLocale": "es-ES",
    "targetLocale": "en-US",
    "voiceKind": "PlatformVoice",
    "speakerCount": 1,
    "subtitleMaxCharCountPerSegment": 50,
    "exportSubtitleInVideo": false,
    "enableLipSync": false,
    "autoCreateFirstIteration": true,
    "firstIterationInput": {
      "enableOcrCorrectionFromSubtitle": true,
      "subtitleFontSize": 10
    }
  },
  "status": "NotStarted",
  "lastActionDateTime": "2026-02-06T19:13:35.669Z",
  "id": "Your-Translation-Id",
  "displayName": "My translation object",
  "description": "My translation object for video translation iterations",
  "createdDateTime": "2026-02-06T19:13:35.669Z",
  "expiresDateTime": "2026-03-09T19:13:35.669Z"
}

Примечание.

Начиная с API версии 2026-03-01, ответ перевода содержит expiresDateTime свойство, указывающее, когда истекает срок действия данных перевода. Политика хранения зависит от версии API, используемой для создания перевода:

  • API версии 2026-03-01 или более поздней: длительность хранения составляет 31 дней с последнего действия.
  • API версии 2025-05-20 или более ранних версий: длительность хранения составляет 300 дней с последнего действия.

Вы можете использовать указанный идентификатор операции и периодически вызывать API Получить операцию по идентификатору операции до тех пор, пока возвращенное состояние не станет Succeeded или Failed. Эта операция позволяет отслеживать ход создания итерационного процесса. Свойство состояния должно переходить от NotStarted к Running, а затем, наконец, к Succeeded или Failed.

Шаг 2. Скачивание переведенного видео и субтитров

Вы можете скачать переведенное видео и субтитры, как только статус итерации станет Succeeded. Преобразованное видео и субтитры доступны в теле ответа API получения итерации по ее идентификатору.

Чтобы получить сведения о конкретной итерации по идентификатору, используйте HTTP-запрос GET. Замените YourSpeechResourceKey на ключ вашего речевого ресурса, YourSpeechResourceRegion на регион вашего речевого ресурса, Your-Translation-Id на идентификатор перевода, который хотите проверить, и Your-Iteration-Id на идентификатор итерации, который хотите проверить.

curl -v -X GET -H "Ocp-Apim-Subscription-Key: YourSpeechResourceKey" "https://YourSpeechResourceRegion.api.cognitive.microsoft.com/videotranslation/translations/Your-Translation-Id/iterations/Your-Iteration-Id?api-version=2026-03-01"  

Вы должны получить ответ в следующем формате:

{
  "input": {
    "speakerCount": 1,
    "subtitleMaxCharCountPerSegment": 30,
    "exportSubtitleInVideo": true
  },
  "result": {
    "translatedVideoFileUrl": "https://cvoiceprodeus.blob.core.windows.net/YourTranslatedVideoFileUrl",
    "sourceLocaleSubtitleWebvttFileUrl": "https://cvoiceprodeus.blob.core.windows.net/YourSourceLocaleSubtitleWebvttFileUrl",
    "targetLocaleSubtitleWebvttFileUrl": "https://cvoiceprodeus.blob.core.windows.net/YourTargetLocaleSubtitleWebvttFileUrl",
    "metadataJsonWebvttFileUrl": "https://cvoiceprodeus.blob.core.windows.net/YourMetadataJsonWebvttFileUrl",
  },
  "status": "Succeeded",
  "lastActionDateTime": "2026-02-06T19:17:06.270Z",
  "id": "Your-Iteration-Id-7",
  "createdDateTime": "2026-02-06T19:15:38.723Z"
}

Скачивание из URL-адресов результатов

Текст ответа содержит следующие URL-адреса для скачивания переведенного видео и субтитров:

  • translatedVideoFileUrl: URL-адрес преобразованного видеофайла. Вы можете скачать переведенное видео из этого URL-адреса.
  • sourceLocaleSubtitleWebvttFileUrl: URL файла WebVTT для исходного языка. С этого URL-адреса можно скачать файл WebVTT.
  • targetLocaleSubtitleWebvttFileUrl: URL-адрес файла WebVTT для целевого языкового стандарта. С этого URL-адреса можно скачать файл WebVTT.
  • metadataJsonWebvttFileUrl: URL-адрес файла JSON WebVTT метаданных. Файл JSON WebVTT метаданных можно скачать из этого URL-адреса.

Ниже приведены примеры форматов для файлов субтитров:

sourceLocaleSubtitleWebvttFileUrl

WEBVTT

00:00:00.320 --> 00:00:03.880
Microsoft ha estado 25 años comprometido con El Salvador.

00:00:03.960 --> 00:00:08.440
Microsoft es hablar de innovación y es hablar del presente y futuro del Salvador.

00:00:09.080 --> 00:00:15.840
Son 25 años y contando los que como marca Microsoft ha logrado cumplir con cada 1 de sus objetivos en El País.

00:00:16.040 --> 00:00:23.400
Nos apoyamos muchísimo en su liderazgo, en su tecnología de punta y en su innovación continua.

00:00:23.800 --> 00:00:29.760
Microsoft le permite a Nico ser parte de un ecosistema tecnológico a nivel mundial más que un aliado para nosotros,

00:00:29.760 --> 00:00:33.880
más que un socio, realmente es un amigo, un amigo estratégico,

00:00:34.840 --> 00:00:39.800
incondicional, teniendo en cuenta y como principal razón de ser nuestra misión y visión,

00:00:40.080 --> 00:00:45.400
permitiendo que los salvadoreños puedan percatarse de su potencial. 25 años de experiencia.

00:00:45.680 --> 00:00:50.480
25 años impulsando, innovando y mejorando en cada una de nuestras facetas.

00:00:50.880 --> 00:00:58.080
Nuestra misión sigue intacta, empoderar a todas las personas y organizaciones del planeta a lograr más felices.

00:00:58.080 --> 00:01:01.240
25, Microsoft felices. 25, El Salvador.

00:01:01.480 --> 00:01:05.920
Juntos seguiremos innovando y progresando un mejor bienestar con tecnología.

WebVTT со свойствами JSON

Файл WebVTT со свойствами JSON содержит метаданные о процессе перевода. Каждый сегмент субтитров содержит свойства, предоставляющие дополнительные сведения о переводе. Ниже приведена разбивка свойств:

  • globalMetadata: в этом разделе содержатся метаданные о докладчиках в видео. Свойство "говорящие" — это объект, содержащий информацию о каждом участнике. Каждый динамик определяется уникальным идентификатором (например, "Динамик0"). Свойство defaultSsmlProperties содержит свойства SSML по умолчанию для голоса говорящего.
  • id: это уникальный идентификатор для каждого сегмента субтитров. Он помогает определить конкретный сегмент текста в файле WebVTT.
  • speakerId: это свойство указывает идентификатор говорящего для соответствующего сегмента субтитров. Он должен соответствовать идентификатору говорящего, определенному в разделе "globalMetadata".
  • ssmlProperties: этот раздел содержит свойства, связанные с голосом говорящего. Он может включать такие свойства, как voiceName и VoiceKind. "voiceName" — это имя голоса, используемого для синтеза, и "voiceKind" указывает, является ли это голос платформы или личный голос.
  • sourceLocaleText: это свойство содержит исходный текст на исходном языке. Если вы вносите изменения только в sourceLocaleText, система будет переводить обновленный sourceLocaleText и использовать новый перевод для синтеза. При внесении изменений как в sourceLocaleText, так и в translatedText, система будет игнорировать изменения sourceLocaleText и воспользуется обновленным translatedText для синтеза.
  • translatedText: это свойство содержит переведенный текст на целевом языке. Он представляет текст, который будет синтезирован в переведенном видео. При внесении изменений в translatedText система будет использовать обновленный преобразованный текст для синтеза.

Шаг 3. Создание дополнительных итераций (необязательно)

Дополнительные итерации можно создать для улучшения качества перевода. Процесс аналогичен созданию первой итерации.

Параметр webvttFile не требуется при создании первой итерации. Однако начиная со второй итерации необходимо указать webvttFile параметр в процессе итерации. Необходимо скачать файл WebVTT, внести необходимые изменения и отправить его в Azure BLOB-хранилище. Необходимо указать URL объекта BLOB.

Чтобы начать перевод видео или обновить итерацию для существующего перевода, необходимо создать путь запроса HTTP PUT и текст в соответствии со следующими инструкциями:

  • Укажите обязательный webvttFile входной параметр. Параметр webvttFile требуется начиная со второй итерации. Необходимо скачать последний файл webvtt, внести необходимые изменения, а затем загрузить его в хранилище Blob в Azure. Необходимо указать URL объекта BLOB. Файл субтитров может быть в формате WebVTT или JSON.
  • Укажите adjustWebvttAlignment: при предоставлении файла WebVTT система автоматически настраивает смещение сегмента и длительность для улучшения выравнивания по умолчанию (true). Задайте для этого свойства значение false , если вы не хотите, чтобы время сегментирования изменилось во время перевода.
  • При необходимости можно указать новые параметры для новой итерации, например speakerCount, subtitleMaxCharCountPerSegmentи exportSubtitleInVideo.

Для проверки подлинности и авторизации необходимо включить в запрос следующие заголовки и идентификаторы путей:

  • Operation-Id Задайте заголовок: Operation-Id должен быть уникальным для каждой операции, например, при создании каждой итерации. Замените Your-Operation-Id уникальным идентификатором для этой операции.
  • Замените Your-Translation-Id в пути. Используйте тот же идентификатор перевода, который вы указали при создании перевода. Идентификатор перевода остается неизменным.
  • Укажите новое iterationId по пути. Идентификатор итерации должен быть уникальным для каждой операции. Замените Your-Iteration-Id-2 идентификатором итерации по вашему выбору.
  • Замените YourSpeechResourceKey ключом ресурса "Речь" и YourSpeechResourceRegion регионом ресурса "Речь".
curl -v -X PUT -H "Ocp-Apim-Subscription-Key: YourSpeechResourceKey" \
-H "Operation-Id: Your-Operation-Id" \
-H "Content-Type: application/json" \
-d '{
  "input": {
    "webvttFile": {
      "url": "https://YourBlobStorageUrl/YourWebVTTFile.vtt"
    }
  }
}' "https://YourSpeechResourceRegion.api.cognitive.microsoft.com/videotranslation/translations/Your-Translation-Id/iterations/Your-Iteration-Id-2?api-version=2026-03-01"

Вы должны получить ответ в следующем формате:

{
  "input": {
    "webvttFile": {
      "url": "https://YourBlobStorageUrl/YourWebVTTFile.vtt"
    }
  },
  "status": "NotStarted",
  "lastActionDateTime": "2026-02-06T19:15:38.722Z",
  "id": "Your-Iteration-Id-2",
  "createdDateTime": "2026-02-06T19:15:38.722Z"
}

Вы можете использовать указанный идентификатор операции и периодически вызывать API Получить операцию по идентификатору операции до тех пор, пока возвращенное состояние не станет Succeeded или Failed. Эта операция позволяет отслеживать ход создания итерационного процесса. Свойство состояния должно переходить от NotStarted к Running, а затем, наконец, к Succeeded или Failed.

Получение операции по идентификатору операции

Проверьте состояние операции с помощью идентификатора операции. Идентификатор операции является уникальным для каждой операции, поэтому вы можете отслеживать каждую операцию отдельно. Идентификатор операции действителен до удаления перевода.

  • Укажите тот же Operation-Id , который использовался при создании перевода. В примере Your-Operation-Id-1 используется. Замените Your-Operation-Id-1 выбранным идентификатором операции.
  • Замените YourSpeechResourceKey ключом ресурса "Речь" и YourSpeechResourceRegion регионом ресурса "Речь".
curl -v -X GET -H "Ocp-Apim-Subscription-Key: YourSpeechResourceKey" "https://YourSpeechResourceRegion.api.cognitive.microsoft.com/videotranslation/operations/Your-Operation-Id-1?api-version=2026-03-01" 

Вы должны получить ответ в следующем формате:

{
  "id": "Your-Operation-Id-1",
  "status": "Running"
}

Удаление перевода по идентификатору перевода

Удалите конкретный перевод, обозначенный translationId. Эта операция также удаляет все итерации, связанные с этим переводом.

Замените YourSpeechResourceKey ключом ресурса Речь, YourSpeechResourceRegion регионом ресурса Речь и Your-Translation-Id идентификатором перевода, который требуется удалить.

Примечание.

Начиная с API версии 2026-03-01, срок хранения данных включен. Для переводов, созданных с помощью API версии 2026-03-01 и более поздних версий, срок хранения данных составляет 31 дней. Для переводов, созданных с помощью API версии 2025-05-20 и более ранних версий, срок хранения данных составляет 300 дней. Если история перевода не удалена вручную, служба автоматически сохраняет её в соответствии с этими политиками хранения.

curl -v -X DELETE -H "Ocp-Apim-Subscription-Key: YourSpeechResourceKey" "https://YourSpeechResourceRegion.api.cognitive.microsoft.com/videotranslation/translations/Your-Translation-Id?api-version=2026-03-01" 

Заголовки ответа содержат HTTP/1.1 204 No Content, если запрос на удаление выполнен успешно.

Операции REST API

Для перевода видео можно использовать следующие операции REST API:

Операция Метод Вызов REST API
Создание перевода PUT /translations/{translationId}
Перечисление переводов GET /translations
Получение перевода по идентификатору перевода GET /translations/{translationId}
Создание итерации PUT /translations/{translationId}/iterations/{iterationId}
Список итераций GET /translations/{translationId}/iterations
Получить итерацию по идентификатору итерации GET /translations/{translationId}/iterations/{iterationId}
Получение операции по её идентификатору GET /operations/{operationId}
Удаление перевода по идентификатору перевода DELETE /translations/{translationId}

Примеры кода см. в разделе GitHub.

В этом разделе приведены примеры для других вызовов API преобразования видео, которые подробно не описаны ранее.

Список переводов

Чтобы перечислить все видеотрансляции, отправленные и обработанные в учетной записи ресурса, сделайте HTTP-запрос GET, как показано в следующем примере. Замените YourSpeechResourceKey ключом ресурса "Речь" и YourSpeechResourceRegion регионом ресурса "Речь".

curl -v -X GET -H "Ocp-Apim-Subscription-Key: YourSpeechResourceKey" "https://YourSpeechResourceRegion.api.cognitive.microsoft.com/videotranslation/translations?api-version=2026-03-01"

Получение перевода по идентификатору перевода

Эта операция извлекает подробные сведения о конкретном переводе, определяемом его уникальным translationId. Замените YourSpeechResourceKey ключом ресурса службы "Речь", YourSpeechResourceRegion регионом ресурса "Речь" и Your-Translation-Id идентификатором перевода, который требуется проверить.

curl -v -X GET -H "Ocp-Apim-Subscription-Key: YourSpeechResourceKey" "https://YourSpeechResourceRegion.api.cognitive.microsoft.com/videotranslation/translations/Your-Translation-Id?api-version=2026-03-01" 

Список итераций

Перечислить все итерации для определенного перевода. Этот запрос содержит все итерации без подробных сведений. Замените YourSpeechResourceKey ключом ресурса службы "Речь", YourSpeechResourceRegion регионом ресурса "Речь" и Your-Translation-Id идентификатором перевода, который требуется проверить.

curl -v -X GET -H "Ocp-Apim-Subscription-Key: YourSpeechResourceKey" "https://YourSpeechResourceRegion.api.cognitive.microsoft.com/videotranslation/translations/Your-Translation-Id/iterations?api-version=2026-03-01"  

Коды состояния HTTP

В разделе подробно описаны коды ответов HTTP и сообщения из REST API видеотрансляции.

HTTP 200 OK

HTTP 200 OK указывает, что запрос выполнен успешно.

Ошибка HTTP 204

Ошибка HTTP 204 указывает, что запрос выполнен успешно, но ресурс не существует. Например:

  • Вы попытались получить или удалить перевод, который не существует.
  • Вы успешно удалили перевод.

Ошибка HTTP 400

Ниже приведены примеры, которые могут привести к ошибке 400:

  • Указанный исходный или целевой языковой стандарт не входит в число поддерживаемых локалей.
  • Вы пытались использовать ресурс F0 для речи, но регион поддерживает только ценовую категорию ресурсов Стандартная речь.

Ошибка HTTP 500

Ошибка внутреннего сервера HTTP 500 указывает на сбой запроса. Текст ответа содержит сообщение об ошибке.

В этой статье вы узнаете, как использовать видеоперевод с Azure Speech в Foundry Tools в Speech Studio.

Предпосылки

Создание проекта преобразования видео

Чтобы создать проект преобразования видео, выполните следующие действия.

  1. Войдите в службу Speech Studio.

  2. Выберите подписку и ресурс службы "Речь" для работы.

  3. Выберите Перевод видео.

  4. На странице "Создание проектов и управление ими" выберите "Создать проект".

  5. На странице "Создать проект " выберите тип голосовой связи.

    Снимок экрана: выбор типа голоса на новой странице проекта.

    Параметры типа голосовой связи:

    • Стандартный голос: служба автоматически выбирает наиболее подходящий стандартный голос, сопоставляя голос говорящего в видео со стандартными голосами.
    • Личный голос: используйте личный голос, соответствующий голосу динамиков в видео.

    Примечание.

    Чтобы использовать личный голос, необходимо подать заявку на доступ.

  6. Отправьте видеофайл, перетаскивая видеофайл или выбрав его вручную. Видео должно быть в формате .mp4, менее 5 ГБ и короче 4 часа.

  7. Укажите имя проекта, количество говорящих, язык видео и язык, на который нужно перевести.

  8. Выберите поля, чтобы подтвердить сведения о ценах и код поведения.

  9. Нажмите кнопку Далее: Дополнительные параметры , если вы хотите настроить дополнительные параметры.

    Снимок экрана: предоставление сведений о видео на новой странице проекта.

  10. При необходимости можно настроить следующие параметры:

    • Lexicon file: этот параметр позволяет добавлять пользовательские слова или фразы, которые система должна распознавать и произносить правильно. Вы можете создать лексикон-файл в средстве создания звукового содержимого в Speech Studio и выбрать его здесь.
    • Встраивание субтитров: В этом пункте вы можете добавить субтитры к видео. Файл субтитров может быть в формате WebVTT или JSON. Пример файла WebVTT для ссылки можно скачать, выбрав "Скачать пример VTT-файла".

    Снимок экрана: предоставление сведений о лексиконе и субтитрах при создании нового проекта.

    Если вы хотите использовать собственные файлы субтитров, выберите Субтитры>Загрузить свои собственные. Вы можете отправить исходный файл субтитров или целевой файл субтитров.

    • Автоматические субтитры: результаты как исходного, так и целевого языкового субтитров.
    • Отправка субтитров исходного языка: результаты как исходных, так и целевых субтитров языка.
    • Отправка субтитров на целевом языке: приводит только к субтитрам целевого языка.
  11. Выберите Создать.

После завершения отправки на Хранилище BLOB-объектов Azure можно проверить состояние обработки на вкладке проекта.

После создания проекта можно выбрать проект, чтобы просмотреть подробные параметры и внести корректировки в соответствии с вашими предпочтениями.

Проверка и настройка параметров голоса

На странице сведений о проекте вы увидите вкладки "Переведенные " и "Исходные " в разделе "Видео". Вы можете сравнить исходные и переведенные видео, выбрав соответствующую вкладку. Переведенное видео создается автоматически, и его можно воспроизвести, чтобы проверить качество перевода.

В правой части видео можно просмотреть исходный скрипт и переведенный скрипт. При наведении указателя мыши на каждую часть исходного скрипта видео автоматически переходит к соответствующему сегменту исходного видео, а при наведении указателя мыши на каждую часть переведенного скрипта видео автоматически переходит к соответствующему переведенному сегменту.

Вы также можете добавлять или удалять сегменты по мере необходимости. Если вы хотите добавить сегмент, убедитесь, что новая метка времени сегмента не перекрывается с предыдущим и следующим сегментом, а время окончания сегмента должно быть больше времени начала. Правильный формат метки времени должен быть hh:mm:ss.ms. В противном случае нельзя применить изменения.

Вы можете настроить интервал времени скриптов непосредственно с помощью звуковой волны под видео. Изменения будут применены после нажатия кнопки "Применить изменения".

Если вы сталкиваетесь с сегментами с "неопознанным" именем голоса, это может быть связано с тем, что система не могла точно распознать голос, особенно в ситуациях, когда голоса спикеров перекрываются. В таких случаях рекомендуется вручную изменить имя голоса.

Снимок экрана: один сегмент с неопознанным именем голоса.

Если вы хотите настроить голос, выберите параметры голосовой связи, чтобы внести некоторые изменения. На странице параметров голоса можно настроить тип голоса, пол и голос. Выберите образец голоса справа от Голос, чтобы определить выбор голоса. Если отсутствует голос, можно добавить новое имя голоса, нажав кнопку "Добавить динамик". После изменения параметров нажмите кнопку "Обновить".

Снимок экрана: настройка параметров голоса на странице параметров голоса.

Вы можете внести несколько изменений в видео, включая настройку параметров голоса, добавление или удаление сегментов и изменение интервала времени скриптов. Плата взимается только после нажатия кнопки "Применить изменения ", чтобы применить изменения. Вы можете нажать кнопку "Сохранить", чтобы сохранить работу без каких-либо расходов.

Снимок экрана: кнопка

Перевод на другой язык

Вы можете сохранить текущий проект перевода и перевести исходное видео на другой язык.

  1. Откройте проект.
  2. Выберите +Создать язык.
  3. На новой странице перевода , которая появится, выберите новый переведенный язык и тип голоса. После перевода видео создается автоматически новый проект.