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

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

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

Совет

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

Совет

Попробуйте Azure Speech в Foundry Tools Toolkit, чтобы легко создавать и запускать примеры субтитров в Visual Studio Code.

Необходимые условия

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

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

  • Вам нужно установить пакет распространения Microsoft Visual C++ для Visual Studio 2015, 2017, 2019 и 2022 на вашу платформу. При первом установке этого пакета может потребоваться перезагрузка.
  • В Linux необходимо использовать целевую архитектуру x64.
  1. Установите версию Python версии 3.10 или более поздней. Сначала проверьте руководство по установке пакета SDK для получения дополнительных требований
  2. Кроме того, необходимо установить GStreamer для сжатого входного звука.

Задание переменных среды

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

Важно

Мы рекомендуем Microsoft Entra ID проверку подлинности с помощью управляемых удостоверений для ресурсов Azure, чтобы избежать хранения учетных данных в приложениях, работающих в облаке.

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

Дополнительные сведения о безопасности служб ИИ см. в разделе Аутентификация запросов к службам Azure AI.

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

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

Примечание

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

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

Создание подписей из речи

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

  1. Скачайте или скопируйте из scenarios/python/console/captioning/ с GitHub в локальный каталог.
  2. Откройте командную строку в том же каталоге, что и captioning.py.
  3. Выполните следующую команду, чтобы установить Speech 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: ключ ресурса Foundry. Переопределяет переменную среды SPEECH_KEY. Необходимо задать переменную среды (рекомендуется) или использовать опцию --key.
  • --region REGION: ваш регион ресурса Foundry. Переопределяет переменную окружения SPEECH_REGION. Необходимо задать переменную среды (рекомендуется) или использовать параметр --region. Примеры: westus, northeurope

Важно

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

Дополнительные сведения о безопасности служб ИИ см. в разделе Аутентификация запросов к службам Azure AI.

Варианты ввода включают:

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

Параметры языка включают:

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

Варианты распознавания включают:

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

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

К параметрам точности относятся:

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

  • --help: показать эту помощь и остановить
  • --output FILE: вывод заголовков в указанный file. Этот флаг является обязательным.
  • --srt: вывод субтитров в формате SRT (SubRip Text). Формат по умолчанию — 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: допустимые значения: необработанные, удаление, маска. Дополнительные сведения см. в статьях о принципах фильтрации ненормативной лексики .
  • --threshold NUMBER: задайте стабильное пороговое значение частичного результата. Значение по умолчанию — 3. Этот параметр применим только при использовании флага realTime . Дополнительные сведения см. в разделе "Получение частичных результатов ".

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

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

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

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

Совет

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

Совет

Попробуйте Azure Speech в Foundry Tools Toolkit, чтобы легко создавать и запускать примеры субтитров в Visual Studio Code.

Необходимые условия

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

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

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

Задание переменных среды

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

Важно

Мы рекомендуем Microsoft Entra ID проверку подлинности с помощью управляемых удостоверений для ресурсов Azure, чтобы избежать хранения учетных данных в приложениях, работающих в облаке.

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

Дополнительные сведения о безопасности служб ИИ см. в разделе Аутентификация запросов к службам Azure AI.

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

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

Примечание

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

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

Создание подписей из речи

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

  1. Скопируйте scenarios/csharp/dotnetcore/captioning/ файлы примеров из GitHub. Если у вас установлен Git, откройте командную строку и выполните команду git clone, чтобы скачать репозиторий примеров Speech 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 текст) — hh:mm:ss,fff. Дополнительные сведения см. в формате вывода субтитров.

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

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

Параметры подключения:

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

Важно

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

Дополнительные сведения о безопасности служб ИИ см. в разделе Аутентификация запросов к службам Azure AI.

Варианты ввода включают:

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

Параметры языка включают:

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

Варианты распознавания включают:

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

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

К параметрам точности относятся:

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

  • --help: показать эту помощь и остановить
  • --output FILE: вывод заголовков в указанный file. Этот флаг является обязательным.
  • --srt: вывод субтитров в формате SRT (SubRip Text). Формат по умолчанию — 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: допустимые значения: необработанные, удаление, маска. Дополнительные сведения см. в статьях о принципах фильтрации ненормативной лексики .
  • --threshold NUMBER: задайте стабильное пороговое значение частичного результата. Значение по умолчанию — 3. Этот параметр применим только при использовании флага realTime . Дополнительные сведения см. в разделе "Получение частичных результатов ".

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

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

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

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

Совет

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

Совет

Попробуйте Azure Speech в Foundry Tools Toolkit, чтобы легко создавать и запускать примеры субтитров в Visual Studio Code.

Необходимые условия

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

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

Создание подписей из речи

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

  1. Скопируйте образцы файлов из каталога из GitHub в каталог вашего проекта.

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

  3. Установите пакет SDK для работы с речью для JavaScript:

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

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

    Замените YourSpeechResoureKey на ключ вашего ресурса речевых технологий и YourServiceRegion на регион вашего ресурса речевых технологий, например, westus или northeurope. Убедитесь, что пути, указанные --input и --output допустимы. В противном случае необходимо изменить пути.

    Примечание

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

    Важно

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

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

Выходной файл с полными заголовками записывается в 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 текст) — hh:mm:ss,fff. Дополнительные сведения см. в формате вывода субтитров.

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

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

Параметры подключения:

  • --key: ключ ресурса Foundry.
  • --region REGION: регион ресурса Foundry. Примеры: westus, northeurope

Варианты ввода включают:

  • --input FILE: входной звук из файла. Входные данные по умолчанию — микрофон.
  • --format FORMAT: используйте сжатый формат звука. Допустимо только с --file. Допустимые значения: alaw, , anyflac, mp3mulawи 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 Text). Формат по умолчанию — WebVTT (текстовые дорожки веб-видео). Дополнительные сведения о форматах файлов заголовков SRT и WebVTT см. в формате вывода заголовка.
  • --quiet: скрывать вывод консоли, кроме сообщений об ошибках.
  • --profanity OPTION: допустимые значения: необработанное, удаление, маска. Дополнительные сведения см. в статьях о принципах фильтрации ненормативной лексики .
  • --threshold NUMBER: задайте стабильное пороговое значение частичного результата. Значение по умолчанию — 3. Дополнительные сведения см. в разделе "Получение частичных результатов ".

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

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

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

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

Совет

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

Совет

Попробуйте Azure Speech в Foundry Tools Toolkit, чтобы легко создавать и запускать примеры субтитров в Visual Studio Code.

Необходимые условия

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

Прежде чем что-либо сделать, необходимо установить Speech SDK. Пример в этом кратком руководстве работает с Microsoft Build of 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.43.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Установите SDK для распознавания речи и его зависимости.
    mvn clean dependency:copy-dependencies
    
  4. Кроме того, необходимо установить GStreamer для сжатого входного звука.

Задание переменных среды

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

Важно

Мы рекомендуем Microsoft Entra ID проверку подлинности с помощью управляемых удостоверений для ресурсов Azure, чтобы избежать хранения учетных данных в приложениях, работающих в облаке.

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

Дополнительные сведения о безопасности служб ИИ см. в разделе Аутентификация запросов к службам Azure AI.

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

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

Примечание

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

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

Создание подписей из речи

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

  1. Скопируйте образцы scenarios/java/jre/captioning/ из 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: ключ ресурса Foundry. Переопределяет переменную среды SPEECH_KEY. Необходимо задать переменную среды (рекомендуется) или использовать опцию --key.
  • --region REGION: регион ресурса Foundry. Переопределяет переменную среды SPEECH_REGION. Необходимо задать переменную среды (рекомендуется) или использовать параметр --region. Примеры: westus, northeurope

Важно

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

Дополнительные сведения о безопасности служб ИИ см. в разделе Аутентификация запросов к службам Azure AI.

Варианты ввода включают:

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

Параметры языка включают:

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

Варианты распознавания включают:

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

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

К параметрам точности относятся:

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

  • --help: показать эту помощь и прервать
  • --output FILE: вывод заголовков в указанный file. Этот флаг является обязательным.
  • --srt: выходные субтитры в формате SRT (SubRip Text). Формат по умолчанию — 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: допустимые значения: необработанные, удаление, маска. Дополнительные сведения см. в статьях о принципах фильтрации ненормативной лексики .
  • --threshold NUMBER: задайте стабильное пороговое значение частичного результата. Значение по умолчанию — 3. Этот параметр применим только при использовании флага realTime . Дополнительные сведения см. в разделе "Получение частичных результатов ".

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

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

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

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

Совет

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

Совет

Попробуйте Azure Speech в Foundry Tools Toolkit, чтобы легко создавать и запускать примеры субтитров в Visual Studio Code.

Необходимые условия

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

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

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

Задание переменных среды

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

Важно

Мы рекомендуем Microsoft Entra ID проверку подлинности с помощью управляемых удостоверений для ресурсов Azure, чтобы избежать хранения учетных данных в приложениях, работающих в облаке.

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

Дополнительные сведения о безопасности служб ИИ см. в разделе Аутентификация запросов к службам Azure AI.

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

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

Примечание

Если вам нужно получить доступ только к переменным среды в текущей консоли, можно задать переменную 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. Установите Speech SDK в проекте с помощью диспетчера пакетов NuGet.

    Install-Package Microsoft.CognitiveServices.Speech
    
  4. Откройте Project>Properties>General. Задайте Конфигурацию на All configurations. Установите Стандарт языка C++ на ISO C++17 Standard (/std:c++17).

  5. Откройте Build>Configuration Manager.

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

    --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 текст) — hh:mm:ss,fff. Дополнительные сведения см. в формате вывода субтитров.

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

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

Параметры подключения:

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

Важно

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

Дополнительные сведения о безопасности служб ИИ см. в разделе Аутентификация запросов к службам Azure AI.

Варианты ввода включают:

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

Параметры языка включают:

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

Варианты распознавания включают:

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

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

К параметрам точности относятся:

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

  • --help: показать эту помощь и завершить
  • --output FILE: заголовки вывода в указанный file. Этот флаг является обязательным.
  • --srt: вывод субтитров в формате SRT (SubRip Text). Формат по умолчанию — 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: допустимые значения: необработанные, удаление, маска. Дополнительные сведения см. в статьях о принципах фильтрации ненормативной лексики .
  • --threshold NUMBER: задайте стабильное пороговое значение частичного результата. Значение по умолчанию — 3. Этот параметр применим только при использовании флага realTime . Дополнительные сведения см. в разделе "Получение частичных результатов ".

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

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

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

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

Совет

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

Совет

Попробуйте Azure Speech в Foundry Tools Toolkit, чтобы легко создавать и запускать примеры субтитров в Visual Studio Code.

Необходимые условия

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

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

Кроме того, необходимо установить 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 YourSpeechResoureKey --region YourServiceRegion --input caption.this.mp4 --format any --output caption.output.txt --srt --recognizing --threshold 5 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

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

    Важно

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

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

Выходной файл с полными субтитрами записывается в 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: ключ ресурса Foundry.
  • --region REGION: регион ресурса Foundry. Примеры: westus, northeurope

Варианты ввода включают:

  • --input FILE: входной звук из файла. Входные данные по умолчанию — микрофон.
  • --format FORMAT: используйте сжатый формат звука. Допустимо только с --file. Допустимые значения: alaw, , anyflac, mp3mulawи 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 Text). Формат по умолчанию — WebVTT (текстовые дорожки веб-видео). Дополнительные сведения о форматах файлов заголовков SRT и WebVTT см. в формате вывода заголовка.
  • --quiet: подавлять выходные данные консоли, кроме ошибок.
  • --profanity OPTION: допустимые значения: необработанные, удаление, маска. Дополнительные сведения см. в статьях о принципах фильтрации ненормативной лексики .
  • --threshold NUMBER: задайте стабильное пороговое значение частичного результата. Значение по умолчанию — 3. Дополнительные сведения см. в разделе "Получение частичных результатов ".

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

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

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

Доступность

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

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

Совет

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

Совет

Попробуйте Azure Speech в Foundry Tools Toolkit, чтобы легко создавать и запускать примеры субтитров в Visual Studio Code.

Необходимые условия

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

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

  1. Выполните следующую команду .NET CLI, чтобы установить Speech CLI.

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

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

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

Создание подписей из речи

С помощью речевого CLI можно выводить субтитры SRT (SubRip Text) и WebVTT (Web Video Text Tracks) из любого типа медиафайлов, содержащих звук.

Чтобы распознать звук из файла и выводить заголовки 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"
    }
    

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

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

  • --file caption.this.mp4 --format any: входной звук из файла. Входные данные по умолчанию — микрофон. Для сжатых звуковых файлов, таких как MP4, установите GStreamer и узнайте , как использовать сжатый входной звук.
  • --output vtt file - и --output srt file -: выводит заголовки WebVTT и SRT в стандартные выходные данные. Дополнительные сведения о форматах файлов заголовков SRT и WebVTT см. в формате вывода заголовка. Дополнительные сведения о аргументе см. в --output строки службы "Речь".
  • @output.each.detailed: выводит результаты событий с текстом, смещением и длительностью. Дополнительные сведения см. в разделе "Получение результатов распознавания речи".
  • --property SpeechServiceResponse_StablePartialResultThreshold=5: вы можете запросить, чтобы служба распознавания речи возвращала меньше более точных Recognizing событий. В этом примере служба речи должна неоднократно подтвердить распознавание слова, по крайней мере, пять раз, прежде чем вернуть вам частичные результаты. Дополнительные сведения см. в разделе "Получение частичных результатов ".
  • --profanity masked: можно указать, следует ли маскировать, удалять или отображать ненормативную лексику в результатах распознавания. Дополнительные сведения см. в статьях о принципах фильтрации ненормативной лексики .
  • --phrases "Constoso;Jessie;Rehaan": можно указать список фраз, которые необходимо распознать, например Contoso, Jessie и Rehaan. Дополнительные сведения см. в разделе "Улучшение распознавания с помощью списка фраз".

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

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

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

Доступность

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

Дальнейшие действия