Краткое руководство: создание субтитров с помощью преобразования речи в текст

Справочная документация | Пакет (NuGet) | Дополнительные примеры в GitHub

В этом кратком руководстве вы запустите консольное приложение для создания субтитров путем преобразования речи в текст.

Совет

Попробуйте в Speech Studio и выберите пример видеоклипа для просмотра результатов в режиме реального времени или автономной обработки подпись результатов.

Необходимые компоненты

Настройка среды

Пакет SDK для службы "Речь" доступен в виде пакета NuGet и реализует .NET Standard 2.0. Вы установите пакет SDK службы "Речь" далее в этом руководстве, но сначала проверка руководство по установке пакета SDK для дополнительных требований.

Кроме того, необходимо установить GStreamer для входного аудиопотока в сжатом формате.

Настройка переменных среды

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

Совет

Не включайте ключ непосредственно в код и никогда не публикуйте его. Дополнительные варианты проверки подлинности, такие как Azure Key Vault, см. в статье "Безопасность служб искусственного интеллекта Azure".

Чтобы задать переменную среды для ключа ресурса "Речь", откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  • Чтобы задать SPEECH_KEY переменную среды, замените ключ одним из ключей ресурса.
  • Чтобы задать SPEECH_REGION переменную среды, замените регион одним из регионов для ресурса.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Примечание.

Если вам нужно получить доступ только к переменным среды в текущей консоли, можно задать переменную set среды вместо setx.

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

Создание субтитров на основе речевых данных

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

  1. Скопируйте сценарии,csharp/dotnetcore/подпись ing/примеры файлов из GitHub. Если вы установили Git, откройте командную строку и выполните git clone команду, чтобы скачать репозиторий примеров пакета SDK службы "Речь".
    git clone https://github.com/Azure-Samples/cognitive-services-speech-sdk.git
    
  2. Откройте командную строку и перейдите в каталог проекта.
    cd <your-local-path>/scenarios/csharp/dotnetcore/captioning/captioning/
    
  3. Создайте проект с помощью интерфейса командной строки .NET.
    dotnet build
    
  4. Запустите приложение с подходящими аргументами командной строки. Список доступных параметров см. в сведениях об использовании и аргументах. Пример:
    dotnet run --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Внимание

    Убедитесь, что пути, заданные значениями --input и --output, допустимы. В противном случае путь необходимо изменить.

    Убедитесь, что вы устанавливаете SPEECH_KEY переменные среды и SPEECH_REGION среды, как описано выше. В противном случае используйте --key аргументы и --region аргументы.

Проверка результатов

При использовании realTime параметра в приведенном выше примере частичные результаты событий Recognizing включаются в выходные данные. В этом примере только последнее Recognized событие включает запятые. Запятые не являются единственными различиями между Recognizing событиями и Recognized событиями. Дополнительные сведения см. в разделе "Получение частичных результатов".

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

При использовании --offline параметра результаты стабильны из окончательного Recognized события. Частичные результаты не включаются в выходные данные:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

Выходной формат интервала времени SRT (subRip Text) имеет формат hh:mm:ss,fff. Дополнительные сведения см. в формате вывода субтитров.

Использование и аргументы

Использование: captioning --input <input file>

Доступны следующие параметры подключения:

  • --key: ключ вашего ресурса службы "Речь". Переопределяет переменную среды SPEECH_KEY. Необходимо задать переменную среды (рекомендуется) или использовать --key этот параметр.
  • --region REGION: регион вашего ресурса службы "Речь". Переопределяет переменную среды SPEECH_REGION. Необходимо задать переменную среды (рекомендуется) или использовать --region этот параметр. Примеры: westus, northeurope

Доступны следующие параметры входных данных:

  • --input FILE: входной звук из файла. По умолчанию в качестве источника входных данных используется микрофон.
  • --format FORMAT: использовать формат сжатого звука. Допустимо только с --file. Допустимые значения: alaw, any, flac, mp3, mulaw и ogg_opus. Значение по умолчанию — any. Чтобы использовать файл wav, не указывайте формат. Этот параметр недоступен в примере субтитров JavaScript. Для сжатых звуковых форматов, таких как MP4, установите GStreamer и ознакомьтесь с правилами использования сжатых входных звуковых данных.

Доступны следующие параметры языка:

  • --language LANG: укажите язык с помощью одного из соответствующих поддерживаемых языков. Это используется при разрыве подпись в линии. Значение по умолчанию: en-US.

Доступны следующие параметры распознавания:

  • --offline: выходные результаты в автономном режиме. Переопределяет --realTime. Выходной режим по умолчанию находится в автономном режиме.
  • --realTime: вывод результатов в режиме реального времени.

Выходные данные в режиме реального времени включают Recognizing результаты событий. Выходные данные по умолчанию — это Recognized только результаты событий. Они всегда записываются в консоль, а не в выходной файл. Параметр --quiet переопределяет этот режим работы. Дополнительные сведения см. в разделе Получение результатов распознавания речи.

Доступны следующие параметры точности:

Доступны следующие параметры выходных данных:

  • --help: показать эту справку и остановить выполнение.
  • --output FILE: выводить субтитры в указанный объект file. Этот флаг является обязательным.
  • --srt: выводить субтитры в формате SRT (текст SubRip). Формат по умолчанию — WebVTT (текстовые дорожки веб-видео). Дополнительные сведения о форматах файлов субтитров SRT и WebVTT см. в разделе Формат выходных данных субтитров.
  • --maxLineLength LENGTH: задайте максимальное количество символов в строке для подпись значение LENGTH. Минимальное значение — 20. Значение по умолчанию — 37 (30 для китайского).
  • --lines LINES: задайте количество строк для подпись в LINES. Минимальное значение — 1. По умолчанию используется значение 2.
  • --delay MILLISECONDS: Сколько миллисекундах задерживают отображение каждого подпись, чтобы имитировать опыт в режиме реального времени. Этот параметр применим только при использовании флага realTime . Минимальное значение — 0,0. Значение по умолчанию — 1000.
  • --remainTime MILLISECONDS: Сколько миллисекундах подпись должны оставаться на экране, если он не заменен другим. Минимальное значение — 0,0. Значение по умолчанию — 1000.
  • --quiet: подавлять вывод в консоль, за исключением ошибок.
  • --profanity OPTION: допустимые значения: raw, remove, mask. Дополнительные сведения см. в описании основных понятий фильтра ненормативной лексики.
  • --threshold NUMBER: установить стабильное пороговое значение частичных результатов. Значение по умолчанию — 3. Этот параметр применим только при использовании флага realTime . Дополнительные сведения см. в описании основных понятий получения частичных результатов.

Очистка ресурсов

Для удаления созданного ресурса службы "Речь" можно использовать портал Azure или интерфейс командной строки (CLI) Azure.

Справочная документация | Пакет (NuGet) | Дополнительные примеры в GitHub

В этом кратком руководстве вы запустите консольное приложение для создания субтитров путем преобразования речи в текст.

Совет

Попробуйте в Speech Studio и выберите пример видеоклипа для просмотра результатов в режиме реального времени или автономной обработки подпись результатов.

Необходимые компоненты

Настройка среды

Пакет SDK для службы "Речь" доступен в виде пакета NuGet и реализует .NET Standard 2.0. Затем вы устанавливаете пакет SDK службы "Речь" в этом руководстве, но сначала проверка руководство по установке пакета SDK для дополнительных требований

Кроме того, необходимо установить GStreamer для входного аудиопотока в сжатом формате.

Настройка переменных среды

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

Совет

Не включайте ключ непосредственно в код и никогда не публикуйте его. Дополнительные варианты проверки подлинности, такие как Azure Key Vault, см. в статье "Безопасность служб искусственного интеллекта Azure".

Чтобы задать переменную среды для ключа ресурса "Речь", откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  • Чтобы задать SPEECH_KEY переменную среды, замените ключ одним из ключей ресурса.
  • Чтобы задать SPEECH_REGION переменную среды, замените регион одним из регионов для ресурса.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Примечание.

Если вам нужно получить доступ только к переменным среды в текущей консоли, можно задать переменную set среды вместо setx.

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

Создание субтитров на основе речевых данных

Выполните следующие действия, чтобы создать и запустить пример кода подпись краткого руководства с помощью Visual Studio Community 2022 в Windows.

  1. Скачайте или скопируйте примеры файлов из каталога scenarios/cpp/windows/captioning/ в GitHub в локальный каталог.

  2. captioning.sln Откройте файл решения в Visual Studio Community 2022.

  3. Установите пакет SDK для службы "Речь" в своем проекте с помощью диспетчера пакетов NuGet.

    Install-Package Microsoft.CognitiveServices.Speech
    
  4. Откройте Проект>Свойства>Общие. Задайте для параметра Конфигурация значение All configurations. Задайте для параметра Стандарт языка C++ значение ISO C++17 Standard (/std:c++17).

  5. Выберите Создать>Диспетчер конфигураций.

    • В 64-разрядной версии Windows установите для параметра Активная платформа решения значение x64.
    • В 32-разрядной версии Windows установите для параметра Активная платформа решения значение x86.
  6. Выберите Проект>Свойства>Отладка. Укажите аргументы командной строки в аргументах команды. Список доступных параметров см. в сведениях об использовании и аргументах. Рассмотрим пример:

    --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Внимание

    Убедитесь, что пути, заданные значениями --input и --output, допустимы. В противном случае путь необходимо изменить.

    Убедитесь, что вы устанавливаете SPEECH_KEY переменные среды и SPEECH_REGION среды, как описано выше. В противном случае используйте --key аргументы и --region аргументы.

  7. Создайте и запустите консольное приложение.

Проверка результатов

При использовании realTime параметра в приведенном выше примере частичные результаты событий Recognizing включаются в выходные данные. В этом примере только последнее Recognized событие включает запятые. Запятые не являются единственными различиями между Recognizing событиями и Recognized событиями. Дополнительные сведения см. в разделе "Получение частичных результатов".

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

При использовании --offline параметра результаты стабильны из окончательного Recognized события. Частичные результаты не включаются в выходные данные:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

Выходной формат интервала времени SRT (subRip Text) имеет формат hh:mm:ss,fff. Дополнительные сведения см. в формате вывода субтитров.

Использование и аргументы

Использование: captioning --input <input file>

Доступны следующие параметры подключения:

  • --key: ключ вашего ресурса службы "Речь". Переопределяет переменную среды SPEECH_KEY. Необходимо задать переменную среды (рекомендуется) или использовать --key этот параметр.
  • --region REGION: регион вашего ресурса службы "Речь". Переопределяет переменную среды SPEECH_REGION. Необходимо задать переменную среды (рекомендуется) или использовать --region этот параметр. Примеры: westus, northeurope

Доступны следующие параметры входных данных:

  • --input FILE: входной звук из файла. По умолчанию в качестве источника входных данных используется микрофон.
  • --format FORMAT: использовать формат сжатого звука. Допустимо только с --file. Допустимые значения: alaw, any, flac, mp3, mulaw и ogg_opus. Значение по умолчанию — any. Чтобы использовать файл wav, не указывайте формат. Этот параметр недоступен в примере субтитров JavaScript. Для сжатых звуковых форматов, таких как MP4, установите GStreamer и ознакомьтесь с правилами использования сжатых входных звуковых данных.

Доступны следующие параметры языка:

  • --language LANG: укажите язык с помощью одного из соответствующих поддерживаемых языков. Это используется при разрыве подпись в линии. Значение по умолчанию: en-US.

Доступны следующие параметры распознавания:

  • --offline: выходные результаты в автономном режиме. Переопределяет --realTime. Выходной режим по умолчанию находится в автономном режиме.
  • --realTime: вывод результатов в режиме реального времени.

Выходные данные в режиме реального времени включают Recognizing результаты событий. Выходные данные по умолчанию — это Recognized только результаты событий. Они всегда записываются в консоль, а не в выходной файл. Параметр --quiet переопределяет этот режим работы. Дополнительные сведения см. в разделе Получение результатов распознавания речи.

Доступны следующие параметры точности:

Доступны следующие параметры выходных данных:

  • --help: показать эту справку и остановить выполнение.
  • --output FILE: выводить субтитры в указанный объект file. Этот флаг является обязательным.
  • --srt: выводить субтитры в формате SRT (текст SubRip). Формат по умолчанию — WebVTT (текстовые дорожки веб-видео). Дополнительные сведения о форматах файлов субтитров SRT и WebVTT см. в разделе Формат выходных данных субтитров.
  • --maxLineLength LENGTH: задайте максимальное количество символов в строке для подпись значение LENGTH. Минимальное значение — 20. Значение по умолчанию — 37 (30 для китайского).
  • --lines LINES: задайте количество строк для подпись в LINES. Минимальное значение — 1. По умолчанию используется значение 2.
  • --delay MILLISECONDS: Сколько миллисекундах задерживают отображение каждого подпись, чтобы имитировать опыт в режиме реального времени. Этот параметр применим только при использовании флага realTime . Минимальное значение — 0,0. Значение по умолчанию — 1000.
  • --remainTime MILLISECONDS: Сколько миллисекундах подпись должны оставаться на экране, если он не заменен другим. Минимальное значение — 0,0. Значение по умолчанию — 1000.
  • --quiet: подавлять вывод в консоль, за исключением ошибок.
  • --profanity OPTION: допустимые значения: raw, remove, mask. Дополнительные сведения см. в описании основных понятий фильтра ненормативной лексики.
  • --threshold NUMBER: установить стабильное пороговое значение частичных результатов. Значение по умолчанию — 3. Этот параметр применим только при использовании флага realTime . Дополнительные сведения см. в описании основных понятий получения частичных результатов.

Очистка ресурсов

Для удаления созданного ресурса службы "Речь" можно использовать портал Azure или интерфейс командной строки (CLI) Azure.

Справочная документация | Пакет (Go) | Дополнительные примеры в GitHub

В этом кратком руководстве вы запустите консольное приложение для создания субтитров путем преобразования речи в текст.

Совет

Попробуйте в Speech Studio и выберите пример видеоклипа для просмотра результатов в режиме реального времени или автономной обработки подпись результатов.

Необходимые компоненты

Настройка среды

Проверьте, наличие каких-либо действий по установке для конкретной платформы.

Кроме того, необходимо установить GStreamer для входного аудиопотока в сжатом формате.

Создание субтитров на основе речевых данных

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

  1. Скачайте или скопируйте примеры файлов из каталога scenarios/go/captioning/ в GitHub в локальный каталог.

  2. Откройте командную строку в том же каталоге, где находится файл captioning.go.

  3. Выполните указанные ниже команды, чтобы создать файл go.mod со ссылкой на компоненты пакета SDK службы "Речь", размещенные в GitHub.

    go mod init captioning
    go get github.com/Microsoft/cognitive-services-speech-sdk-go
    
  4. Выполните сборку модуля GO.

    go build
    
  5. Запустите приложение с подходящими аргументами командной строки. Список доступных параметров см. в сведениях об использовании и аргументах. Рассмотрим пример:

    go run captioning --key YourSubscriptionKey --region YourServiceRegion --input caption.this.mp4 --format any --output caption.output.txt --srt --recognizing --threshold 5 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Замените YourSubscriptionKey на ключ ресурса службы "Речь", а YourServiceRegion — на регион ресурса службы "Речь", например westus или northeurope. Убедитесь, что пути, заданные значениями --input и --output, допустимы. В противном случае путь необходимо изменить.

    Внимание

    Обязательно удалите ключ из кода, когда завершите работу, и ни в коем случае не публикуйте его в открытом доступе. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным, например Azure Key Vault. Дополнительные сведения см. в статье по безопасности служб ИИ Azure.

Проверка результатов

Выходной файл с полными субтитрами записывается в каталог caption.output.txt. Промежуточные результаты отображаются в консоли:

00:00:00,180 --> 00:00:01,600
Welcome to

00:00:00,180 --> 00:00:01,820
Welcome to applied

00:00:00,180 --> 00:00:02,420
Welcome to applied mathematics

00:00:00,180 --> 00:00:02,930
Welcome to applied mathematics course

00:00:00,180 --> 00:00:03,100
Welcome to applied Mathematics course 2

00:00:00,180 --> 00:00:03,230
Welcome to applied Mathematics course 201.

Выходной формат интервала времени SRT (subRip Text) имеет формат hh:mm:ss,fff. Дополнительные сведения см. в формате вывода субтитров.

Использование и аргументы

Использование: go run captioning.go helper.go --key <key> --region <region> --input <input file>

Доступны следующие параметры подключения:

  • --key: ключ вашего ресурса службы "Речь".
  • --region REGION: регион вашего ресурса службы "Речь". Примеры: westus, northeurope

Доступны следующие параметры входных данных:

  • --input FILE: входной звук из файла. По умолчанию в качестве источника входных данных используется микрофон.
  • --format FORMAT: использовать формат сжатого звука. Допустимо только с --file. Допустимые значения: alaw, any, flac, mp3, mulaw и ogg_opus. Значение по умолчанию — any. Чтобы использовать файл wav, не указывайте формат. Этот параметр недоступен в примере субтитров JavaScript. Для сжатых звуковых форматов, таких как MP4, установите GStreamer и ознакомьтесь с правилами использования сжатых входных звуковых данных.

Доступны следующие параметры языка:

  • --languages LANG1,LANG2: включить идентификацию языка для указанных языков. Например: en-US,ja-JP. Этот параметр доступен только для примеров субтитров на C++, C# и Python. Дополнительные сведения см. в разделе Идентификация языка.

Доступны следующие параметры распознавания:

  • --recognizing: выводить результаты событий Recognizing. По умолчанию выводятся только результаты событий Recognized. Они всегда записываются в консоль, а не в выходной файл. Параметр --quiet переопределяет этот режим работы. Дополнительные сведения см. в разделе Получение результатов распознавания речи.

Доступны следующие параметры точности:

Доступны следующие параметры выходных данных:

  • --help: показать эту справку и остановить выполнение.
  • --output FILE: выводить субтитры в указанный объект file. Этот флаг является обязательным.
  • --srt: выводить субтитры в формате SRT (текст SubRip). Формат по умолчанию — WebVTT (текстовые дорожки веб-видео). Дополнительные сведения о форматах файлов субтитров SRT и WebVTT см. в разделе Формат выходных данных субтитров.
  • --quiet: подавлять вывод в консоль, за исключением ошибок.
  • --profanity OPTION: допустимые значения: raw, remove, mask. Дополнительные сведения см. в описании основных понятий фильтра ненормативной лексики.
  • --threshold NUMBER: установить стабильное пороговое значение частичных результатов. Значение по умолчанию — 3. Дополнительные сведения см. в описании основных понятий получения частичных результатов.

Очистка ресурсов

Для удаления созданного ресурса службы "Речь" можно использовать портал Azure или интерфейс командной строки (CLI) Azure.

Справочная документация | Дополнительные примеры в GitHub

В этом кратком руководстве вы запустите консольное приложение для создания субтитров путем преобразования речи в текст.

Совет

Попробуйте в Speech Studio и выберите пример видеоклипа для просмотра результатов в режиме реального времени или автономной обработки подпись результатов.

Необходимые компоненты

Настройка среды

Прежде чем что-либо сделать, необходимо установить пакет SDK службы "Речь". Пример в этом кратком руководстве работает с Microsoft Build openJDK 17

  1. Установите Apache Maven. Затем выполните команду mvn -v , чтобы подтвердить успешную установку.
  2. Создайте файл pom.xml в корне проекта и скопируйте в него следующий файл:
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.microsoft.cognitiveservices.speech.samples</groupId>
        <artifactId>quickstart-eclipse</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <build>
            <sourceDirectory>src</sourceDirectory>
            <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                <source>1.8</source>
                <target>1.8</target>
                </configuration>
            </plugin>
            </plugins>
        </build>
        <dependencies>
            <dependency>
            <groupId>com.microsoft.cognitiveservices.speech</groupId>
            <artifactId>client-sdk</artifactId>
            <version>1.37.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Установите пакет SDK службы "Речь" и зависимости.
    mvn clean dependency:copy-dependencies
    
  4. Кроме того, необходимо установить GStreamer для входного аудиопотока в сжатом формате.

Настройка переменных среды

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

Совет

Не включайте ключ непосредственно в код и никогда не публикуйте его. Дополнительные варианты проверки подлинности, такие как Azure Key Vault, см. в статье "Безопасность служб искусственного интеллекта Azure".

Чтобы задать переменную среды для ключа ресурса "Речь", откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  • Чтобы задать SPEECH_KEY переменную среды, замените ключ одним из ключей ресурса.
  • Чтобы задать SPEECH_REGION переменную среды, замените регион одним из регионов для ресурса.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Примечание.

Если вам нужно получить доступ только к переменным среды в текущей консоли, можно задать переменную set среды вместо setx.

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

Создание субтитров на основе речевых данных

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

  1. Скопируйте сценарии/java/jre/подпись ing/примеры файлов из GitHub в каталог проекта. Файл pom.xml, созданный при настройке среды, также должен находиться в этом каталоге.
  2. Откройте командную строку и выполните указанную ниже команду, чтобы скомпилировать файлы проекта.
    javac Captioning.java -cp ".;target\dependency\*" -encoding UTF-8
    
  3. Запустите приложение с подходящими аргументами командной строки. Список доступных параметров см. в сведениях об использовании и аргументах. Пример:
    java -cp ".;target\dependency\*" Captioning --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Внимание

    Убедитесь, что пути, заданные значениями --input и --output, допустимы. В противном случае путь необходимо изменить.

    Убедитесь, что вы устанавливаете SPEECH_KEY переменные среды и SPEECH_REGION среды, как описано выше. В противном случае используйте --key аргументы и --region аргументы.

Проверка результатов

При использовании realTime параметра в приведенном выше примере частичные результаты событий Recognizing включаются в выходные данные. В этом примере только последнее Recognized событие включает запятые. Запятые не являются единственными различиями между Recognizing событиями и Recognized событиями. Дополнительные сведения см. в разделе "Получение частичных результатов".

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

При использовании --offline параметра результаты стабильны из окончательного Recognized события. Частичные результаты не включаются в выходные данные:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

Выходной формат интервала времени SRT (subRip Text) имеет формат hh:mm:ss,fff. Дополнительные сведения см. в формате вывода субтитров.

Использование и аргументы

Использование: java -cp ".;target\dependency\*" Captioning --input <input file>

Доступны следующие параметры подключения:

  • --key: ключ вашего ресурса службы "Речь". Переопределяет переменную среды SPEECH_KEY. Необходимо задать переменную среды (рекомендуется) или использовать --key этот параметр.
  • --region REGION: регион вашего ресурса службы "Речь". Переопределяет переменную среды SPEECH_REGION. Необходимо задать переменную среды (рекомендуется) или использовать --region этот параметр. Примеры: westus, northeurope

Доступны следующие параметры входных данных:

  • --input FILE: входной звук из файла. По умолчанию в качестве источника входных данных используется микрофон.
  • --format FORMAT: использовать формат сжатого звука. Допустимо только с --file. Допустимые значения: alaw, any, flac, mp3, mulaw и ogg_opus. Значение по умолчанию — any. Чтобы использовать файл wav, не указывайте формат. Этот параметр недоступен в примере субтитров JavaScript. Для сжатых звуковых форматов, таких как MP4, установите GStreamer и ознакомьтесь с правилами использования сжатых входных звуковых данных.

Доступны следующие параметры языка:

  • --language LANG: укажите язык с помощью одного из соответствующих поддерживаемых языков. Это используется при разрыве подпись в линии. Значение по умолчанию: en-US.

Доступны следующие параметры распознавания:

  • --offline: выходные результаты в автономном режиме. Переопределяет --realTime. Выходной режим по умолчанию находится в автономном режиме.
  • --realTime: вывод результатов в режиме реального времени.

Выходные данные в режиме реального времени включают Recognizing результаты событий. Выходные данные по умолчанию — это Recognized только результаты событий. Они всегда записываются в консоль, а не в выходной файл. Параметр --quiet переопределяет этот режим работы. Дополнительные сведения см. в разделе Получение результатов распознавания речи.

Доступны следующие параметры точности:

Доступны следующие параметры выходных данных:

  • --help: показать эту справку и остановить выполнение.
  • --output FILE: выводить субтитры в указанный объект file. Этот флаг является обязательным.
  • --srt: выводить субтитры в формате SRT (текст SubRip). Формат по умолчанию — WebVTT (текстовые дорожки веб-видео). Дополнительные сведения о форматах файлов субтитров SRT и WebVTT см. в разделе Формат выходных данных субтитров.
  • --maxLineLength LENGTH: задайте максимальное количество символов в строке для подпись значение LENGTH. Минимальное значение — 20. Значение по умолчанию — 37 (30 для китайского).
  • --lines LINES: задайте количество строк для подпись в LINES. Минимальное значение — 1. По умолчанию используется значение 2.
  • --delay MILLISECONDS: Сколько миллисекундах задерживают отображение каждого подпись, чтобы имитировать опыт в режиме реального времени. Этот параметр применим только при использовании флага realTime . Минимальное значение — 0,0. Значение по умолчанию — 1000.
  • --remainTime MILLISECONDS: Сколько миллисекундах подпись должны оставаться на экране, если он не заменен другим. Минимальное значение — 0,0. Значение по умолчанию — 1000.
  • --quiet: подавлять вывод в консоль, за исключением ошибок.
  • --profanity OPTION: допустимые значения: raw, remove, mask. Дополнительные сведения см. в описании основных понятий фильтра ненормативной лексики.
  • --threshold NUMBER: установить стабильное пороговое значение частичных результатов. Значение по умолчанию — 3. Этот параметр применим только при использовании флага realTime . Дополнительные сведения см. в описании основных понятий получения частичных результатов.

Очистка ресурсов

Для удаления созданного ресурса службы "Речь" можно использовать портал Azure или интерфейс командной строки (CLI) Azure.

Справочная документация | Пакет (npm) | Дополнительные примеры в GitHub | Исходный код библиотеки

В этом кратком руководстве вы запустите консольное приложение для создания субтитров путем преобразования речи в текст.

Совет

Попробуйте в Speech Studio и выберите пример видеоклипа для просмотра результатов в режиме реального времени или автономной обработки подпись результатов.

Необходимые компоненты

Настройка среды

Сначала необходимо установить пакет SDK службы "Речь" для JavaScript. Если вам только нужно имя пакета для установки, выполните команду npm install microsoft-cognitiveservices-speech-sdk. Подробные инструкции по установке см. в статье Руководство по установке пакета SDK.

Создание субтитров на основе речевых данных

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

  1. Скопируйте примеры файлов из каталога scenarios/javascript/node/captioning/ в GitHub в каталог проекта.

  2. Откройте командную строку в том же каталоге, где находится файл Captioning.js.

  3. Установите пакет SDK службы "Речь" для JavaScript:

    npm install microsoft-cognitiveservices-speech-sdk
    
  4. Запустите приложение с подходящими аргументами командной строки. Список доступных параметров см. в сведениях об использовании и аргументах. Рассмотрим пример:

    node captioning.js --key YourSubscriptionKey --region YourServiceRegion --input caption.this.wav --output caption.output.txt --srt --recognizing --threshold 5 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Замените YourSubscriptionKey на ключ ресурса службы "Речь", а YourServiceRegion — на регион ресурса службы "Речь", например westus или northeurope. Убедитесь, что пути, заданные значениями --input и --output, допустимы. В противном случае путь необходимо изменить.

    Примечание.

    Пакет SDK службы "Речь" для JavaScript не поддерживает сжатый входной звук. Необходимо использовать WAV-файл, как показано в примере.

    Внимание

    Обязательно удалите ключ из кода, когда завершите работу, и ни в коем случае не публикуйте его в открытом доступе. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным, например Azure Key Vault. Дополнительные сведения см. в статье по безопасности служб ИИ Azure.

Проверка результатов

Выходной файл с полными субтитрами записывается в каталог caption.output.txt. Промежуточные результаты отображаются в консоли:

00:00:00,180 --> 00:00:01,600
Welcome to

00:00:00,180 --> 00:00:01,820
Welcome to applied

00:00:00,180 --> 00:00:02,420
Welcome to applied mathematics

00:00:00,180 --> 00:00:02,930
Welcome to applied mathematics course

00:00:00,180 --> 00:00:03,100
Welcome to applied Mathematics course 2

00:00:00,180 --> 00:00:03,230
Welcome to applied Mathematics course 201.

Выходной формат интервала времени SRT (subRip Text) имеет формат hh:mm:ss,fff. Дополнительные сведения см. в формате вывода субтитров.

Использование и аргументы

Использование: node captioning.js --key <key> --region <region> --input <input file>

Доступны следующие параметры подключения:

  • --key: ключ вашего ресурса службы "Речь".
  • --region REGION: регион вашего ресурса службы "Речь". Примеры: westus, northeurope

Доступны следующие параметры входных данных:

  • --input FILE: входной звук из файла. По умолчанию в качестве источника входных данных используется микрофон.
  • --format FORMAT: использовать формат сжатого звука. Допустимо только с --file. Допустимые значения: alaw, any, flac, mp3, mulaw и ogg_opus. Значение по умолчанию — any. Чтобы использовать файл wav, не указывайте формат. Этот параметр недоступен в примере субтитров JavaScript. Для сжатых звуковых форматов, таких как MP4, установите GStreamer и ознакомьтесь с правилами использования сжатых входных звуковых данных.

Доступны следующие параметры языка:

  • --languages LANG1,LANG2: включить идентификацию языка для указанных языков. Например: en-US,ja-JP. Этот параметр доступен только для примеров субтитров на C++, C# и Python. Дополнительные сведения см. в разделе Идентификация языка.

Доступны следующие параметры распознавания:

  • --recognizing: выводить результаты событий Recognizing. По умолчанию выводятся только результаты событий Recognized. Они всегда записываются в консоль, а не в выходной файл. Параметр --quiet переопределяет этот режим работы. Дополнительные сведения см. в разделе Получение результатов распознавания речи.

Доступны следующие параметры точности:

Доступны следующие параметры выходных данных:

  • --help: показать эту справку и остановить выполнение.
  • --output FILE: выводить субтитры в указанный объект file. Этот флаг является обязательным.
  • --srt: выводить субтитры в формате SRT (текст SubRip). Формат по умолчанию — WebVTT (текстовые дорожки веб-видео). Дополнительные сведения о форматах файлов субтитров SRT и WebVTT см. в разделе Формат выходных данных субтитров.
  • --quiet: подавлять вывод в консоль, за исключением ошибок.
  • --profanity OPTION: допустимые значения: raw, remove, mask. Дополнительные сведения см. в описании основных понятий фильтра ненормативной лексики.
  • --threshold NUMBER: установить стабильное пороговое значение частичных результатов. Значение по умолчанию — 3. Дополнительные сведения см. в описании основных понятий получения частичных результатов.

Очистка ресурсов

Для удаления созданного ресурса службы "Речь" можно использовать портал Azure или интерфейс командной строки (CLI) Azure.

Справочная документация | Пакет (скачивание) | Дополнительные примеры в GitHub

Пакет SDK службы "Речь" для Objective-C поддерживает результаты распознавания намерений при создании субтитров, но мы еще не включили в эту статью руководство по использованию этого пакета SDK. Выберите другой язык программирования, чтобы приступить к работе и ознакомиться с основными понятиями, или обратитесь к справочнику и примерам для языка Objective-C, ссылки на которые приведены в начале этой статьи.

Справочная документация | Пакет (скачивание) | Дополнительные примеры в GitHub

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

Справочная документация | Пакет (PyPi) | Дополнительные примеры в GitHub

В этом кратком руководстве вы запустите консольное приложение для создания субтитров путем преобразования речи в текст.

Совет

Попробуйте в Speech Studio и выберите пример видеоклипа для просмотра результатов в режиме реального времени или автономной обработки подпись результатов.

Необходимые компоненты

Настройка среды

Пакет SDK для Python доступен в виде модуля индекса пакетов Python (PyPI). Пакет SDK для службы "Речь" (Python) совместим с Windows, Linux и macOS.

  1. Установите версию Python с версии 3.10 или более поздней версии. Сначала ознакомьтесь со статьей Руководство по установке пакета SDK, чтобы узнать о дополнительных требованиях.
  2. Кроме того, необходимо установить GStreamer для входного аудиопотока в сжатом формате.

Настройка переменных среды

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

Совет

Не включайте ключ непосредственно в код и никогда не публикуйте его. Дополнительные варианты проверки подлинности, такие как Azure Key Vault, см. в статье "Безопасность служб искусственного интеллекта Azure".

Чтобы задать переменную среды для ключа ресурса "Речь", откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  • Чтобы задать SPEECH_KEY переменную среды, замените ключ одним из ключей ресурса.
  • Чтобы задать SPEECH_REGION переменную среды, замените регион одним из регионов для ресурса.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Примечание.

Если вам нужно получить доступ только к переменным среды в текущей консоли, можно задать переменную set среды вместо setx.

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

Создание субтитров на основе речевых данных

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

  1. Скачайте или скопируйте примеры файлов из каталога scenarios/python/console/captioning/ в GitHub в локальный каталог.
  2. Откройте командную строку в том же каталоге, где находится файл captioning.py.
  3. Выполните следующую команду, чтобы установить пакет SDK службы "Речь":
    pip install azure-cognitiveservices-speech
    
  4. Запустите приложение с подходящими аргументами командной строки. Список доступных параметров см. в сведениях об использовании и аргументах. Пример:
    python captioning.py --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Внимание

    Убедитесь, что пути, заданные значениями --input и --output, допустимы. В противном случае путь необходимо изменить.

    Убедитесь, что вы устанавливаете SPEECH_KEY переменные среды и SPEECH_REGION среды, как описано выше. В противном случае используйте --key аргументы и --region аргументы.

Проверка результатов

При использовании realTime параметра в приведенном выше примере частичные результаты событий Recognizing включаются в выходные данные. В этом примере только последнее Recognized событие включает запятые. Запятые не являются единственными различиями между Recognizing событиями и Recognized событиями. Дополнительные сведения см. в разделе "Получение частичных результатов".

1
00:00:00,170 --> 00:00:00,380
The

2
00:00:00,380 --> 00:00:01,770
The rainbow

3
00:00:01,770 --> 00:00:02,560
The rainbow has seven

4
00:00:02,560 --> 00:00:03,820
The rainbow has seven colors

5
00:00:03,820 --> 00:00:05,050
The rainbow has seven colors red

6
00:00:05,050 --> 00:00:05,850
The rainbow has seven colors red
orange

7
00:00:05,850 --> 00:00:06,440
The rainbow has seven colors red
orange yellow

8
00:00:06,440 --> 00:00:06,730
The rainbow has seven colors red
orange yellow green

9
00:00:06,730 --> 00:00:07,160
orange, yellow, green, blue,
indigo and Violet.

При использовании --offline параметра результаты стабильны из окончательного Recognized события. Частичные результаты не включаются в выходные данные:

1
00:00:00,170 --> 00:00:05,540
The rainbow has seven colors, red,
orange, yellow, green, blue,

2
00:00:05,540 --> 00:00:07,160
indigo and Violet.

Выходной формат интервала времени SRT (subRip Text) имеет формат hh:mm:ss,fff. Дополнительные сведения см. в формате вывода субтитров.

Использование и аргументы

Использование: python captioning.py --input <input file>

Доступны следующие параметры подключения:

  • --key: ключ вашего ресурса службы "Речь". Переопределяет переменную среды SPEECH_KEY. Необходимо задать переменную среды (рекомендуется) или использовать --key этот параметр.
  • --region REGION: регион вашего ресурса службы "Речь". Переопределяет переменную среды SPEECH_REGION. Необходимо задать переменную среды (рекомендуется) или использовать --region этот параметр. Примеры: westus, northeurope

Доступны следующие параметры входных данных:

  • --input FILE: входной звук из файла. По умолчанию в качестве источника входных данных используется микрофон.
  • --format FORMAT: использовать формат сжатого звука. Допустимо только с --file. Допустимые значения: alaw, any, flac, mp3, mulaw и ogg_opus. Значение по умолчанию — any. Чтобы использовать файл wav, не указывайте формат. Этот параметр недоступен в примере субтитров JavaScript. Для сжатых звуковых форматов, таких как MP4, установите GStreamer и ознакомьтесь с правилами использования сжатых входных звуковых данных.

Доступны следующие параметры языка:

  • --language LANG: укажите язык с помощью одного из соответствующих поддерживаемых языков. Это используется при разрыве подпись в линии. Значение по умолчанию: en-US.

Доступны следующие параметры распознавания:

  • --offline: выходные результаты в автономном режиме. Переопределяет --realTime. Выходной режим по умолчанию находится в автономном режиме.
  • --realTime: вывод результатов в режиме реального времени.

Выходные данные в режиме реального времени включают Recognizing результаты событий. Выходные данные по умолчанию — это Recognized только результаты событий. Они всегда записываются в консоль, а не в выходной файл. Параметр --quiet переопределяет этот режим работы. Дополнительные сведения см. в разделе Получение результатов распознавания речи.

Доступны следующие параметры точности:

Доступны следующие параметры выходных данных:

  • --help: показать эту справку и остановить выполнение.
  • --output FILE: выводить субтитры в указанный объект file. Этот флаг является обязательным.
  • --srt: выводить субтитры в формате SRT (текст SubRip). Формат по умолчанию — WebVTT (текстовые дорожки веб-видео). Дополнительные сведения о форматах файлов субтитров SRT и WebVTT см. в разделе Формат выходных данных субтитров.
  • --maxLineLength LENGTH: задайте максимальное количество символов в строке для подпись значение LENGTH. Минимальное значение — 20. Значение по умолчанию — 37 (30 для китайского).
  • --lines LINES: задайте количество строк для подпись в LINES. Минимальное значение — 1. По умолчанию используется значение 2.
  • --delay MILLISECONDS: Сколько миллисекундах задерживают отображение каждого подпись, чтобы имитировать опыт в режиме реального времени. Этот параметр применим только при использовании флага realTime . Минимальное значение — 0,0. Значение по умолчанию — 1000.
  • --remainTime MILLISECONDS: Сколько миллисекундах подпись должны оставаться на экране, если он не заменен другим. Минимальное значение — 0,0. Значение по умолчанию — 1000.
  • --quiet: подавлять вывод в консоль, за исключением ошибок.
  • --profanity OPTION: допустимые значения: raw, remove, mask. Дополнительные сведения см. в описании основных понятий фильтра ненормативной лексики.
  • --threshold NUMBER: установить стабильное пороговое значение частичных результатов. Значение по умолчанию — 3. Этот параметр применим только при использовании флага realTime . Дополнительные сведения см. в описании основных понятий получения частичных результатов.

Очистка ресурсов

Для удаления созданного ресурса службы "Речь" можно использовать портал Azure или интерфейс командной строки (CLI) Azure.

В этом кратком руководстве вы запустите консольное приложение для создания субтитров путем преобразования речи в текст.

Совет

Попробуйте в Speech Studio и выберите пример видеоклипа для просмотра результатов в режиме реального времени или автономной обработки подпись результатов.

Необходимые компоненты

Настройка среды

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

  1. Выполните следующую команду .NET CLI, чтобы установить интерфейс командной строки службы "Речь".

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Выполните следующие команды, чтобы настроить ключ ресурса службы "Речь" и регион. Замените ключом ресурса "Речь" и замените SUBSCRIPTION-KEYREGION регионом ресурсов службы "Речь".

    spx config @key --set SUBSCRIPTION-KEY
    spx config @region --set REGION
    

Кроме того, необходимо установить GStreamer для входного аудиопотока в сжатом формате.

Создание субтитров на основе речевых данных

С помощью интерфейса командной строки службы "Речь" можно выводить субтитры в формате SRT (текст SubRip) и WebVTT (текстовые дорожки веб-видео) для любого мультимедийных данных, содержащих звук.

Чтобы распознать звук из файла и вывести субтитры в формате WebVtt (vtt) и SRT (srt), выполните указанные ниже действия.

  1. Убедитесь, что в указанном каталоге есть входной файл под названием caption.this.mp4.

  2. Выполните следующую команду, чтобы вывести субтитры из видеофайла:

    spx recognize --file caption.this.mp4 --format any --output vtt file - --output srt file - --output each file - @output.each.detailed --property SpeechServiceResponse_StablePartialResultThreshold=5 --profanity masked --phrases "Constoso;Jessie;Rehaan"
    

    Субтитры SRT и WebVTT будут выведены в консоль, как показано ниже:

    1
    00:00:00,180 --> 00:00:03,230
    Welcome to applied Mathematics course 201.
    WEBVTT
    
    00:00:00.180 --> 00:00:03.230
    Welcome to applied Mathematics course 201.
    {
      "ResultId": "561a0ea00cc14bb09bd294357df3270f",
      "Duration": "00:00:03.0500000"
    }
    

Использование и аргументы

Ниже приведены сведения о необязательных аргументах для предыдущей команды:

Очистка ресурсов

Для удаления созданного ресурса службы "Речь" можно использовать портал Azure или интерфейс командной строки (CLI) Azure.

Следующие шаги