Compartir a través de


Inicio rápido: Creación de subtítulos con conversión de voz en texto

Documentación de referencia | Paquete (NuGet) | Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación de consola para crear subtítulos con conversión de voz en texto.

Sugerencia

Pruebe Speech Studio y elija un clip de vídeo de ejemplo para ver los resultados de subtítulos procesados en tiempo real o sin conexión.

Sugerencia

Pruebe el toolkit de Voz de Azure AI para compilar y ejecutar fácilmente ejemplos de subtítulos en Visual Studio Code.

Requisitos previos

Configuración del entorno

El SDK de Voz está disponible como paquete NuGet e implementa .NET Standard 2.0. La instalación del SDK de Voz se describe en una sección más adelante de esta guía; primero consulte la SDK installation guide, (guía de instalación del SDK), para conocer otros requisitos.

También debe instalar GStreamer para el audio de entrada comprimido.

Establecimiento de variables de entorno

Debe autenticar la aplicación para acceder a los servicios de Azure AI. En este artículo se muestra cómo usar variables de entorno para almacenar las credenciales. A continuación, puede acceder a las variables de entorno desde el código para autenticar la aplicación. Para producción, use una manera más segura de almacenar y acceder a sus credenciales.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales con sus aplicaciones que se ejecutan en la nube.

Si usa una clave de API, almacénela de forma segura en otro lugar, como en Azure Key Vault. No incluya la clave de API directamente en el código ni la exponga nunca públicamente.

Para más información sobre la seguridad de los servicios de AI, consulte Autenticación de solicitudes a los servicios de Azure AI.

Para establecer las variables de entorno de su clave de recursos de voz y de su región, abra una ventana de la consola y siga las instrucciones correspondientes a su sistema operativo y a su entorno de desarrollo.

  • Para establecer la variable de entorno de SPEECH_KEY, reemplace su clave por una de las claves del recurso.
  • Para establecer la variable de entorno de SPEECH_REGION, reemplace su región por una de las regiones del recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Nota:

Si solo necesita acceder a las variables de entorno en la consola actual, puede establecer la variable de entorno con set en vez de setx.

Después de agregar las variables de entorno, puede que tenga que reiniciar cualquier programa que necesite leer las variables de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Creación de subtítulos a partir de voz

Siga estos pasos para compilar y ejecutar el código de inicio rápido de subtítulos de ejemplo.

  1. Copie los archivos de ejemplo de scenarios/csharp/dotnetcore/captioning/ de GitHub. Si tiene Git instalado, abra un símbolo del sistema y ejecute el comando git clone para descargar el repositorio de ejemplos del SDK de Voz.
    git clone https://github.com/Azure-Samples/cognitive-services-speech-sdk.git
    
  2. Abra un símbolo del sistema y cambie al directorio del proyecto.
    cd <your-local-path>/scenarios/csharp/dotnetcore/captioning/captioning/
    
  3. Compile el proyecto con la CLI de .NET.
    dotnet build
    
  4. Ejecute la aplicación con los argumentos de la línea de comandos preferidos. Consulte uso y argumentos para ver las opciones disponibles. Aquí tiene un ejemplo:
    dotnet run --input caption.this.mp4 --format any --output caption.output.txt --srt --realTime --threshold 5 --delay 0 --profanity mask --phrases "Contoso;Jessie;Rehaan"
    

    Importante

    Asegúrese de que las rutas de acceso especificadas por --input y --output sean válidas. De lo contrario, deberá cambiar las rutas de acceso.

    Asegúrese de establecer las variables de entorno SPEECH_KEY y SPEECH_REGION como se ha descrito anteriormente. De lo contrario, use los argumentos --key y --region.

Comprobar los resultados

Al usar la opción realTime del ejemplo anterior, los resultados parciales de los eventos Recognizing se incluyen en la salida. En este ejemplo, solo se incluyen comas en el evento final Recognized. Los eventos Recognizing y Recognized no solo se diferencian en el uso de comas. Para obtener más información, consulte Get partial results, (Obtención de resultados parciales).

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.

Al usarse la opción --offline, los resultados son estables desde el evento final Recognized. En la salida no se incluyen los resultados parciales:

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.

El formato de salida del intervalo de tiempo de SRT (SubRip Text) es hh:mm:ss,fff. Para más información, consulte Caption output format, (Formato de salida de subtítulos).

Uso y argumentos

Uso: captioning --input <input file>

Las opciones de conexión incluyen:

  • --key: clave del recurso de Voz. Invalida la variable de entorno SPEECH_KEY. Se debe establecer la variable de entorno (opción recomendada) o usar la opción --key.
  • --region REGION: región del recurso de Voz. Invalida la variable de entorno SPEECH_REGION. Se debe establecer la variable de entorno (opción recomendada) o usar la opción --region. Ejemplos: westus, northeurope

Importante

Si usa una clave de API, almacénela de forma segura en otro lugar, como en Azure Key Vault. No incluya la clave de API directamente en el código ni la exponga nunca públicamente.

Para más información sobre la seguridad de los servicios de AI, consulte Autenticación de solicitudes a los servicios de Azure AI.

Otras entradas incluyen:

  • --input FILE: audio de entrada del archivo. La entrada predeterminada es el micrófono.
  • --format FORMAT: use el formato de audio comprimido. Solo es válido con --file. Los valores válidos son alaw, any, flac, mp3, mulaw y ogg_opus. El valor predeterminado es any. Para usar un archivo wav, no especifique el formato. Esta opción no está disponible con el ejemplo de subtítulos de JavaScript. Para archivos de audio comprimidos como MP4, instale GStreamer y consulte Cómo usar audio de entrada comprimido.

Entre las opciones de idioma se incluyen:

  • --language LANG: especifique un idioma que use una de las configuraciones regionales correspondientes. Se emplea al dividir los subtítulos en líneas. El valor predeterminado es en-US.

Las opciones de reconocimiento incluyen:

  • --offline: resultados sin conexión de salida. Invalida --realTime. El modo de salida predeterminado no tiene conexión.
  • --realTime: resultados en tiempo real de salida.

En la salida en tiempo real se incluyen los resultados de eventos Recognizing. En la salida sin conexión predeterminada solo se incluyen resultados del evento Recognized. Siempre se escriben en la consola, nunca en un archivo de salida. La opción --quiet invalida esto. Para obtener más información, consulte Obtención de resultados de reconocimiento de voz.

Entre las opciones de precisión se incluyen:

Las opciones de entrada incluyen:

  • --help: mostrar esta ayuda y detener
  • --output FILE: subtítulos de salida para el file especificado. Se requiere esta marca.
  • --srt: subtítulos de salida en formato SRT (texto de SubRip). El formato predeterminado es WebVTT (pistas de texto de vídeo web). Para obtener más información sobre los formatos de archivo de subtítulo de SRT y WebVTT, consulte Formato de salida del subtítulo.
  • --maxLineLength LENGTH: establezca el número máximo de caracteres por línea para un subtítulo en LENGTH. El valor mínimo es 20. El valor predeterminado es 37 (30 para chino).
  • --lines LINES: establezca el número de líneas de un subtítulo en LINES. El valor mínimo es 1. El valor predeterminado es 2.
  • --delay MILLISECONDS: el número de MILISEGUNDOS que se retrasará la presentación de cada subtítulo para imitar una experiencia en tiempo real. La opción solo se aplicará al usar la marca realTime. El valor mínimo es 0.0. El valor predeterminado es 1000.
  • --remainTime MILLISECONDS: el número de MILISEGUNDOS durante los cuales un subtítulo permanece en la pantalla si no se reemplaza por otro. El valor mínimo es 0.0. El valor predeterminado es 1000.
  • --quiet: suprima la salida de la consola, excepto los errores.
  • --profanity OPTION: valores válidos: raw, remove, mask. Para obtener más información, consulte Conceptos de filtro de palabras soeces.
  • --threshold NUMBER: establece un umbral de resultado parcial estable. El valor predeterminado es 3. La opción solo se aplicará al usar la marca realTime. Para obtener más información, consulte Obtención de conceptos de resultados parciales.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referencia | Paquete (NuGet) | Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación de consola para crear subtítulos con conversión de voz en texto.

Sugerencia

Pruebe Speech Studio y elija un clip de vídeo de ejemplo para ver los resultados de subtítulos procesados en tiempo real o sin conexión.

Sugerencia

Pruebe el toolkit de Voz de Azure AI para compilar y ejecutar fácilmente ejemplos de subtítulos en Visual Studio Code.

Requisitos previos

Configuración del entorno

El SDK de Voz está disponible como paquete NuGet e implementa .NET Standard 2.0. La instalación del SDK de Voz se describe en una sección más adelante de esta guía; primero consulte la SDK installation guide, (guía de instalación del SDK), para conocer otros requisitos

También debe instalar GStreamer para el audio de entrada comprimido.

Establecimiento de variables de entorno

Debe autenticar la aplicación para acceder a los servicios de Azure AI. En este artículo se muestra cómo usar variables de entorno para almacenar las credenciales. A continuación, puede acceder a las variables de entorno desde el código para autenticar la aplicación. Para producción, use una manera más segura de almacenar y acceder a sus credenciales.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales con sus aplicaciones que se ejecutan en la nube.

Si usa una clave de API, almacénela de forma segura en otro lugar, como en Azure Key Vault. No incluya la clave de API directamente en el código ni la exponga nunca públicamente.

Para más información sobre la seguridad de los servicios de AI, consulte Autenticación de solicitudes a los servicios de Azure AI.

Para establecer las variables de entorno de su clave de recursos de voz y de su región, abra una ventana de la consola y siga las instrucciones correspondientes a su sistema operativo y a su entorno de desarrollo.

  • Para establecer la variable de entorno de SPEECH_KEY, reemplace su clave por una de las claves del recurso.
  • Para establecer la variable de entorno de SPEECH_REGION, reemplace su región por una de las regiones del recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Nota:

Si solo necesita acceder a las variables de entorno en la consola actual, puede establecer la variable de entorno con set en vez de setx.

Después de agregar las variables de entorno, puede que tenga que reiniciar cualquier programa que necesite leer las variables de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Creación de subtítulos a partir de voz

Complete estos pasos para compilar y ejecutar el código de inicio rápido de subtítulos de ejemplo con Visual Studio Community 2022 en Windows.

  1. Descargue o copie los archivos de ejemplo scenarios/cpp/windows/captioning/ de GitHub en un directorio local.

  2. Abra el archivo de solución en Visual Studio Community 2022 captioning.sln.

  3. Instale el SDK de Voz en el proyecto con el administrador de paquetes NuGet.

    Install-Package Microsoft.CognitiveServices.Speech
    
  4. Abra Proyecto>Propiedades>General. Establezca Configuración en All configurations. Establezca Estándar de lenguaje C++ en ISO C++17 Standard (/std:c++17).

  5. Abra Compilar>Administrador de configuración.

    • En una instalación de Windows de 64 bits, establezca Plataforma de solución activas en x64.
    • En una instalación de Windows de 32 bits, establezca Plataforma de solución activas en x86.
  6. Abra Proyecto>Propiedades>Depuración. Escriba los argumentos de la línea de comandos preferidos en Argumentos de comandos. Consulte uso y argumentos para ver las opciones disponibles. A continuación se muestra un ejemplo:

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

    Importante

    Asegúrese de que las rutas de acceso especificadas por --input y --output sean válidas. De lo contrario, deberá cambiar las rutas de acceso.

    Asegúrese de establecer las variables de entorno SPEECH_KEY y SPEECH_REGION como se ha descrito anteriormente. De lo contrario, use los argumentos --key y --region.

  7. Compilación y ejecución de la aplicación de consola.

Comprobar los resultados

Al usar la opción realTime del ejemplo anterior, los resultados parciales de los eventos Recognizing se incluyen en la salida. En este ejemplo, solo se incluyen comas en el evento final Recognized. Los eventos Recognizing y Recognized no solo se diferencian en el uso de comas. Para obtener más información, consulte Get partial results, (Obtención de resultados parciales).

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.

Al usarse la opción --offline, los resultados son estables desde el evento final Recognized. En la salida no se incluyen los resultados parciales:

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.

El formato de salida del intervalo de tiempo de SRT (SubRip Text) es hh:mm:ss,fff. Para más información, consulte Caption output format, (Formato de salida de subtítulos).

Uso y argumentos

Uso: captioning --input <input file>

Las opciones de conexión incluyen:

  • --key: clave del recurso de Voz. Invalida la variable de entorno SPEECH_KEY. Se debe establecer la variable de entorno (opción recomendada) o usar la opción --key.
  • --region REGION: región del recurso de Voz. Invalida la variable de entorno SPEECH_REGION. Se debe establecer la variable de entorno (opción recomendada) o usar la opción --region. Ejemplos: westus, northeurope

Importante

Si usa una clave de API, almacénela de forma segura en otro lugar, como en Azure Key Vault. No incluya la clave de API directamente en el código ni la exponga nunca públicamente.

Para más información sobre la seguridad de los servicios de AI, consulte Autenticación de solicitudes a los servicios de Azure AI.

Otras entradas incluyen:

  • --input FILE: audio de entrada del archivo. La entrada predeterminada es el micrófono.
  • --format FORMAT: use el formato de audio comprimido. Solo es válido con --file. Los valores válidos son alaw, any, flac, mp3, mulaw y ogg_opus. El valor predeterminado es any. Para usar un archivo wav, no especifique el formato. Esta opción no está disponible con el ejemplo de subtítulos de JavaScript. Para archivos de audio comprimidos como MP4, instale GStreamer y consulte Cómo usar audio de entrada comprimido.

Entre las opciones de idioma se incluyen:

  • --language LANG: especifique un idioma que use una de las configuraciones regionales correspondientes. Se emplea al dividir los subtítulos en líneas. El valor predeterminado es en-US.

Las opciones de reconocimiento incluyen:

  • --offline: resultados sin conexión de salida. Invalida --realTime. El modo de salida predeterminado no tiene conexión.
  • --realTime: resultados en tiempo real de salida.

En la salida en tiempo real se incluyen los resultados de eventos Recognizing. En la salida sin conexión predeterminada solo se incluyen resultados del evento Recognized. Siempre se escriben en la consola, nunca en un archivo de salida. La opción --quiet invalida esto. Para obtener más información, consulte Obtención de resultados de reconocimiento de voz.

Entre las opciones de precisión se incluyen:

Las opciones de entrada incluyen:

  • --help: mostrar esta ayuda y detener
  • --output FILE: subtítulos de salida para el file especificado. Se requiere esta marca.
  • --srt: subtítulos de salida en formato SRT (texto de SubRip). El formato predeterminado es WebVTT (pistas de texto de vídeo web). Para obtener más información sobre los formatos de archivo de subtítulo de SRT y WebVTT, consulte Formato de salida del subtítulo.
  • --maxLineLength LENGTH: establezca el número máximo de caracteres por línea para un subtítulo en LENGTH. El valor mínimo es 20. El valor predeterminado es 37 (30 para chino).
  • --lines LINES: establezca el número de líneas de un subtítulo en LINES. El valor mínimo es 1. El valor predeterminado es 2.
  • --delay MILLISECONDS: el número de MILISEGUNDOS que se retrasará la presentación de cada subtítulo para imitar una experiencia en tiempo real. La opción solo se aplicará al usar la marca realTime. El valor mínimo es 0.0. El valor predeterminado es 1000.
  • --remainTime MILLISECONDS: el número de MILISEGUNDOS durante los cuales un subtítulo permanece en la pantalla si no se reemplaza por otro. El valor mínimo es 0.0. El valor predeterminado es 1000.
  • --quiet: suprima la salida de la consola, excepto los errores.
  • --profanity OPTION: valores válidos: raw, remove, mask. Para obtener más información, consulte Conceptos de filtro de palabras soeces.
  • --threshold NUMBER: establece un umbral de resultado parcial estable. El valor predeterminado es 3. La opción solo se aplicará al usar la marca realTime. Para obtener más información, consulte Obtención de conceptos de resultados parciales.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referencia | Paquete (Go) | Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación de consola para crear subtítulos con conversión de voz en texto.

Sugerencia

Pruebe Speech Studio y elija un clip de vídeo de ejemplo para ver los resultados de subtítulos procesados en tiempo real o sin conexión.

Sugerencia

Pruebe el toolkit de Voz de Azure AI para compilar y ejecutar fácilmente ejemplos de subtítulos en Visual Studio Code.

Requisitos previos

Configuración del entorno

Compruebe si hay algún paso de instalación específico de la plataforma.

También debe instalar GStreamer para el audio de entrada comprimido.

Creación de subtítulos a partir de voz

Siga estos pasos para compilar y ejecutar el código de inicio rápido de subtítulos de ejemplo.

  1. Descargue o copie los archivos de ejemplo scenarios/go/captioning/ de GitHub en un directorio local.

  2. Abra un símbolo del sistema en el directorio como captioning.go.

  3. Ejecute los siguientes comandos para crear un archivo go.mod que vincule a los componentes hospedados de SDK de Voz en GitHub:

    go mod init captioning
    go get github.com/Microsoft/cognitive-services-speech-sdk-go
    
  4. Compile el módulo GO.

    go build
    
  5. Ejecute la aplicación con los argumentos de la línea de comandos preferidos. Consulte uso y argumentos para ver las opciones disponibles. A continuación se muestra un ejemplo:

    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"
    

    Reemplace YourSubscriptionKey por la clave de recurso de Voz y YourServiceRegion por la región del recurso de Voz, como westus o northeurope. Asegúrese de que las rutas de acceso especificadas por --input y --output sean válidas. De lo contrario, deberá cambiar las rutas de acceso.

    Importante

    Recuerde quitar la clave del código cuando haya terminado y no hacerla nunca pública. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas, como Azure Key Vault. Consulte el artículo Seguridad de servicios de Azure AI para obtener más información.

Comprobar los resultados

El archivo de salida con subtítulos completos se escribe en caption.output.txt. Los resultados intermedios se muestran en la consola:

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.

El formato de salida del intervalo de tiempo de SRT (SubRip Text) es hh:mm:ss,fff. Para más información, consulte Caption output format, (Formato de salida de subtítulos).

Uso y argumentos

Uso: go run captioning.go helper.go --key <key> --region <region> --input <input file>

Las opciones de conexión incluyen:

  • --key: clave del recurso de Voz.
  • --region REGION: región del recurso de Voz. Ejemplos: westus, northeurope

Otras entradas incluyen:

  • --input FILE: audio de entrada del archivo. La entrada predeterminada es el micrófono.
  • --format FORMAT: use el formato de audio comprimido. Solo es válido con --file. Los valores válidos son alaw, any, flac, mp3, mulaw y ogg_opus. El valor predeterminado es any. Para usar un archivo wav, no especifique el formato. Esta opción no está disponible con el ejemplo de subtítulos de JavaScript. Para archivos de audio comprimidos como MP4, instale GStreamer y consulte Cómo usar audio de entrada comprimido.

Entre las opciones de idioma se incluyen:

  • --languages LANG1,LANG2: habilite la identificación del idioma para los idiomas especificados. Por ejemplo: en-US,ja-JP. Esta opción solo está disponible con los ejemplos de subtítulos de C++, C# y Python. Para obtener más información, consulte Identificación de idiomas.

Las opciones de reconocimiento incluyen:

  • --recognizing: resultados del evento Recognizing de salida. La salida predeterminada es solo resultados del evento Recognized. Siempre se escriben en la consola, nunca en un archivo de salida. La opción --quiet invalida esto. Para obtener más información, consulte Obtención de resultados de reconocimiento de voz.

Entre las opciones de precisión se incluyen:

Las opciones de entrada incluyen:

  • --help: mostrar esta ayuda y detener
  • --output FILE: subtítulos de salida para el file especificado. Se requiere esta marca.
  • --srt: subtítulos de salida en formato SRT (texto de SubRip). El formato predeterminado es WebVTT (pistas de texto de vídeo web). Para obtener más información sobre los formatos de archivo de subtítulo de SRT y WebVTT, consulte Formato de salida del subtítulo.
  • --quiet: suprima la salida de la consola, excepto los errores.
  • --profanity OPTION: valores válidos: raw, remove, mask. Para obtener más información, consulte Conceptos de filtro de palabras soeces.
  • --threshold NUMBER: establece un umbral de resultado parcial estable. El valor predeterminado es 3. Para obtener más información, consulte Obtención de conceptos de resultados parciales.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referencia | Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación de consola para crear subtítulos con conversión de voz en texto.

Sugerencia

Pruebe Speech Studio y elija un clip de vídeo de ejemplo para ver los resultados de subtítulos procesados en tiempo real o sin conexión.

Sugerencia

Pruebe el toolkit de Voz de Azure AI para compilar y ejecutar fácilmente ejemplos de subtítulos en Visual Studio Code.

Requisitos previos

Configuración del entorno

En primer lugar, deberá instalar el SDK de Voz. El ejemplo de este inicio rápido funciona con Microsoft Build de OpenJDK 17

  1. Instalación de Apache Maven. A continuación, ejecute mvn -v para confirmar que la instalación se ha realizado correctamente.
  2. Cree un nuevo archivo pom.xml en la raíz del proyecto y copie lo siguiente en él:
    <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.42.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Instale el SDK de Voz y las dependencias.
    mvn clean dependency:copy-dependencies
    
  4. También debe instalar GStreamer para el audio de entrada comprimido.

Establecimiento de variables de entorno

Debe autenticar la aplicación para acceder a los servicios de Azure AI. En este artículo se muestra cómo usar variables de entorno para almacenar las credenciales. A continuación, puede acceder a las variables de entorno desde el código para autenticar la aplicación. Para producción, use una manera más segura de almacenar y acceder a sus credenciales.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales con sus aplicaciones que se ejecutan en la nube.

Si usa una clave de API, almacénela de forma segura en otro lugar, como en Azure Key Vault. No incluya la clave de API directamente en el código ni la exponga nunca públicamente.

Para más información sobre la seguridad de los servicios de AI, consulte Autenticación de solicitudes a los servicios de Azure AI.

Para establecer las variables de entorno de su clave de recursos de voz y de su región, abra una ventana de la consola y siga las instrucciones correspondientes a su sistema operativo y a su entorno de desarrollo.

  • Para establecer la variable de entorno de SPEECH_KEY, reemplace su clave por una de las claves del recurso.
  • Para establecer la variable de entorno de SPEECH_REGION, reemplace su región por una de las regiones del recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Nota:

Si solo necesita acceder a las variables de entorno en la consola actual, puede establecer la variable de entorno con set en vez de setx.

Después de agregar las variables de entorno, puede que tenga que reiniciar cualquier programa que necesite leer las variables de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Creación de subtítulos a partir de voz

Siga estos pasos para compilar y ejecutar el código de inicio rápido de subtítulos de ejemplo.

  1. Copie los archivos de ejemplo scenarios/java/jre/captioning/ de GitHub al directorio de su proyecto. El pom.xml archivo que creó en la configuración del entorno también debe estar en este directorio.
  2. Abra un símbolo del sistema y ejecute este comando para compilar los archivos del proyecto.
    javac Captioning.java -cp ".;target\dependency\*" -encoding UTF-8
    
  3. Ejecute la aplicación con los argumentos de la línea de comandos preferidos. Consulte uso y argumentos para ver las opciones disponibles. Aquí tiene un ejemplo:
    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"
    

    Importante

    Asegúrese de que las rutas de acceso especificadas por --input y --output sean válidas. De lo contrario, deberá cambiar las rutas de acceso.

    Asegúrese de establecer las variables de entorno SPEECH_KEY y SPEECH_REGION como se ha descrito anteriormente. De lo contrario, use los argumentos --key y --region.

Comprobar los resultados

Al usar la opción realTime del ejemplo anterior, los resultados parciales de los eventos Recognizing se incluyen en la salida. En este ejemplo, solo se incluyen comas en el evento final Recognized. Los eventos Recognizing y Recognized no solo se diferencian en el uso de comas. Para obtener más información, consulte Get partial results, (Obtención de resultados parciales).

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.

Al usarse la opción --offline, los resultados son estables desde el evento final Recognized. En la salida no se incluyen los resultados parciales:

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.

El formato de salida del intervalo de tiempo de SRT (SubRip Text) es hh:mm:ss,fff. Para más información, consulte Caption output format, (Formato de salida de subtítulos).

Uso y argumentos

Uso: java -cp ".;target\dependency\*" Captioning --input <input file>

Las opciones de conexión incluyen:

  • --key: clave del recurso de Voz. Invalida la variable de entorno SPEECH_KEY. Se debe establecer la variable de entorno (opción recomendada) o usar la opción --key.
  • --region REGION: región del recurso de Voz. Invalida la variable de entorno SPEECH_REGION. Se debe establecer la variable de entorno (opción recomendada) o usar la opción --region. Ejemplos: westus, northeurope

Importante

Si usa una clave de API, almacénela de forma segura en otro lugar, como en Azure Key Vault. No incluya la clave de API directamente en el código ni la exponga nunca públicamente.

Para más información sobre la seguridad de los servicios de AI, consulte Autenticación de solicitudes a los servicios de Azure AI.

Otras entradas incluyen:

  • --input FILE: audio de entrada del archivo. La entrada predeterminada es el micrófono.
  • --format FORMAT: use el formato de audio comprimido. Solo es válido con --file. Los valores válidos son alaw, any, flac, mp3, mulaw y ogg_opus. El valor predeterminado es any. Para usar un archivo wav, no especifique el formato. Esta opción no está disponible con el ejemplo de subtítulos de JavaScript. Para archivos de audio comprimidos como MP4, instale GStreamer y consulte Cómo usar audio de entrada comprimido.

Entre las opciones de idioma se incluyen:

  • --language LANG: especifique un idioma que use una de las configuraciones regionales correspondientes. Se emplea al dividir los subtítulos en líneas. El valor predeterminado es en-US.

Las opciones de reconocimiento incluyen:

  • --offline: resultados sin conexión de salida. Invalida --realTime. El modo de salida predeterminado no tiene conexión.
  • --realTime: resultados en tiempo real de salida.

En la salida en tiempo real se incluyen los resultados de eventos Recognizing. En la salida sin conexión predeterminada solo se incluyen resultados del evento Recognized. Siempre se escriben en la consola, nunca en un archivo de salida. La opción --quiet invalida esto. Para obtener más información, consulte Obtención de resultados de reconocimiento de voz.

Entre las opciones de precisión se incluyen:

Las opciones de entrada incluyen:

  • --help: mostrar esta ayuda y detener
  • --output FILE: subtítulos de salida para el file especificado. Se requiere esta marca.
  • --srt: subtítulos de salida en formato SRT (texto de SubRip). El formato predeterminado es WebVTT (pistas de texto de vídeo web). Para obtener más información sobre los formatos de archivo de subtítulo de SRT y WebVTT, consulte Formato de salida del subtítulo.
  • --maxLineLength LENGTH: establezca el número máximo de caracteres por línea para un subtítulo en LENGTH. El valor mínimo es 20. El valor predeterminado es 37 (30 para chino).
  • --lines LINES: establezca el número de líneas de un subtítulo en LINES. El valor mínimo es 1. El valor predeterminado es 2.
  • --delay MILLISECONDS: el número de MILISEGUNDOS que se retrasará la presentación de cada subtítulo para imitar una experiencia en tiempo real. La opción solo se aplicará al usar la marca realTime. El valor mínimo es 0.0. El valor predeterminado es 1000.
  • --remainTime MILLISECONDS: el número de MILISEGUNDOS durante los cuales un subtítulo permanece en la pantalla si no se reemplaza por otro. El valor mínimo es 0.0. El valor predeterminado es 1000.
  • --quiet: suprima la salida de la consola, excepto los errores.
  • --profanity OPTION: valores válidos: raw, remove, mask. Para obtener más información, consulte Conceptos de filtro de palabras soeces.
  • --threshold NUMBER: establece un umbral de resultado parcial estable. El valor predeterminado es 3. La opción solo se aplicará al usar la marca realTime. Para obtener más información, consulte Obtención de conceptos de resultados parciales.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referencia | Paquete (npm) | Ejemplos adicionales en GitHub | Código fuente de la biblioteca

En este inicio rápido, ejecutará una aplicación de consola para crear subtítulos con conversión de voz en texto.

Sugerencia

Pruebe Speech Studio y elija un clip de vídeo de ejemplo para ver los resultados de subtítulos procesados en tiempo real o sin conexión.

Sugerencia

Pruebe el toolkit de Voz de Azure AI para compilar y ejecutar fácilmente ejemplos de subtítulos en Visual Studio Code.

Requisitos previos

Configuración del entorno

En primer lugar, deberá instalar el SDK de Voz para JavaScript. Si solo desea el nombre del paquete que se va a instalar, ejecute npm install microsoft-cognitiveservices-speech-sdk. Para obtener instrucciones de instalación guiadas, consulte la guía de instalación del SDK.

Creación de subtítulos a partir de voz

Siga estos pasos para compilar y ejecutar el código de inicio rápido de subtítulos de ejemplo.

  1. Copie los archivos de ejemplo scenarios/javascript/node/captioning/ de GitHub en el directorio del proyecto.

  2. Abra un símbolo del sistema en el directorio como Captioning.js.

  3. Instale el SDK de Voz para JavaScript:

    npm install microsoft-cognitiveservices-speech-sdk
    
  4. Ejecute la aplicación con los argumentos de la línea de comandos preferidos. Consulte uso y argumentos para ver las opciones disponibles. A continuación se muestra un ejemplo:

    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"
    

    Reemplace YourSubscriptionKey por la clave de recurso de Voz y YourServiceRegion por la región del recurso de Voz, como westus o northeurope. Asegúrese de que las rutas de acceso especificadas por --input y --output sean válidas. De lo contrario, deberá cambiar las rutas de acceso.

    Nota:

    El SDK de Voz para JavaScript no admite el audio de entrada comprimido. Debe usar un archivo WAV como se muestra en el ejemplo.

    Importante

    Recuerde quitar la clave del código cuando haya terminado y no hacerla nunca pública. En el caso de producción, use una forma segura de almacenar sus credenciales y acceder a ellas, como Azure Key Vault. Consulte el artículo Seguridad de servicios de Azure AI para obtener más información.

Comprobar los resultados

El archivo de salida con subtítulos completos se escribe en caption.output.txt. Los resultados intermedios se muestran en la consola:

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.

El formato de salida del intervalo de tiempo de SRT (SubRip Text) es hh:mm:ss,fff. Para más información, consulte Caption output format, (Formato de salida de subtítulos).

Uso y argumentos

Uso: node captioning.js --key <key> --region <region> --input <input file>

Las opciones de conexión incluyen:

  • --key: clave del recurso de Voz.
  • --region REGION: región del recurso de Voz. Ejemplos: westus, northeurope

Otras entradas incluyen:

  • --input FILE: audio de entrada del archivo. La entrada predeterminada es el micrófono.
  • --format FORMAT: use el formato de audio comprimido. Solo es válido con --file. Los valores válidos son alaw, any, flac, mp3, mulaw y ogg_opus. El valor predeterminado es any. Para usar un archivo wav, no especifique el formato. Esta opción no está disponible con el ejemplo de subtítulos de JavaScript. Para archivos de audio comprimidos como MP4, instale GStreamer y consulte Cómo usar audio de entrada comprimido.

Entre las opciones de idioma se incluyen:

  • --languages LANG1,LANG2: habilite la identificación del idioma para los idiomas especificados. Por ejemplo: en-US,ja-JP. Esta opción solo está disponible con los ejemplos de subtítulos de C++, C# y Python. Para obtener más información, consulte Identificación de idiomas.

Las opciones de reconocimiento incluyen:

  • --recognizing: resultados del evento Recognizing de salida. La salida predeterminada es solo resultados del evento Recognized. Siempre se escriben en la consola, nunca en un archivo de salida. La opción --quiet invalida esto. Para obtener más información, consulte Obtención de resultados de reconocimiento de voz.

Entre las opciones de precisión se incluyen:

Las opciones de entrada incluyen:

  • --help: mostrar esta ayuda y detener
  • --output FILE: subtítulos de salida para el file especificado. Se requiere esta marca.
  • --srt: subtítulos de salida en formato SRT (texto de SubRip). El formato predeterminado es WebVTT (pistas de texto de vídeo web). Para obtener más información sobre los formatos de archivo de subtítulo de SRT y WebVTT, consulte Formato de salida del subtítulo.
  • --quiet: suprima la salida de la consola, excepto los errores.
  • --profanity OPTION: valores válidos: raw, remove, mask. Para obtener más información, consulte Conceptos de filtro de palabras soeces.
  • --threshold NUMBER: establece un umbral de resultado parcial estable. El valor predeterminado es 3. Para obtener más información, consulte Obtención de conceptos de resultados parciales.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Documentación de referencia | Paquete (descarga) | Ejemplos adicionales en GitHub

El SDK de Voz para Objective-C admite la obtención de resultados de reconocimiento de voz para subtítulos, aunque no tenemos ninguna guía disponible aún. Seleccione otro lenguaje de programación para empezar a trabajar y conocer los conceptos, o consulte la referencia de Objective-C y los ejemplos vinculados desde el principio de este artículo.

Documentación de referencia | Paquete (descarga) | Ejemplos adicionales en GitHub

El SDK de Voz para Swift admite la obtención de resultados de reconocimiento de voz para subtítulos, aunque no tenemos ninguna guía disponible aún. Seleccione otro lenguaje de programación para empezar a trabajar y conocer los conceptos, o consulte la referencia de Swift y los ejemplos vinculados desde el principio de este artículo.

Documentación de referencia | Paquete (PyPi) | Ejemplos adicionales en GitHub

En este inicio rápido, ejecutará una aplicación de consola para crear subtítulos con conversión de voz en texto.

Sugerencia

Pruebe Speech Studio y elija un clip de vídeo de ejemplo para ver los resultados de subtítulos procesados en tiempo real o sin conexión.

Sugerencia

Pruebe el toolkit de Voz de Azure AI para compilar y ejecutar fácilmente ejemplos de subtítulos en Visual Studio Code.

Requisitos previos

Configuración del entorno

El SDK de Voz para Python está disponible como módulo de índice de paquetes de Python (PyPI). El SDK de Voz para Python es compatible con Windows, Linux y macOS.

  1. Instale una versión de Python desde la 3.10 en adelante. Primero consulte la guía de instalación del SDK para conocer más requisitos
  2. También debe instalar GStreamer para el audio de entrada comprimido.

Establecimiento de variables de entorno

Debe autenticar la aplicación para acceder a los servicios de Azure AI. En este artículo se muestra cómo usar variables de entorno para almacenar las credenciales. A continuación, puede acceder a las variables de entorno desde el código para autenticar la aplicación. Para producción, use una manera más segura de almacenar y acceder a sus credenciales.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales con sus aplicaciones que se ejecutan en la nube.

Si usa una clave de API, almacénela de forma segura en otro lugar, como en Azure Key Vault. No incluya la clave de API directamente en el código ni la exponga nunca públicamente.

Para más información sobre la seguridad de los servicios de AI, consulte Autenticación de solicitudes a los servicios de Azure AI.

Para establecer las variables de entorno de su clave de recursos de voz y de su región, abra una ventana de la consola y siga las instrucciones correspondientes a su sistema operativo y a su entorno de desarrollo.

  • Para establecer la variable de entorno de SPEECH_KEY, reemplace su clave por una de las claves del recurso.
  • Para establecer la variable de entorno de SPEECH_REGION, reemplace su región por una de las regiones del recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Nota:

Si solo necesita acceder a las variables de entorno en la consola actual, puede establecer la variable de entorno con set en vez de setx.

Después de agregar las variables de entorno, puede que tenga que reiniciar cualquier programa que necesite leer las variables de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Creación de subtítulos a partir de voz

Siga estos pasos para compilar y ejecutar el código de inicio rápido de subtítulos de ejemplo.

  1. Descargue o copie los archivos de ejemplo scenarios/python/console/captioning/ de GitHub en un directorio local.
  2. Abra un símbolo del sistema en el directorio como captioning.py.
  3. Ejecute este comando para instalar el SDK de voz:
    pip install azure-cognitiveservices-speech
    
  4. Ejecute la aplicación con los argumentos de la línea de comandos preferidos. Consulte uso y argumentos para ver las opciones disponibles. Aquí tiene un ejemplo:
    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"
    

    Importante

    Asegúrese de que las rutas de acceso especificadas por --input y --output sean válidas. De lo contrario, deberá cambiar las rutas de acceso.

    Asegúrese de establecer las variables de entorno SPEECH_KEY y SPEECH_REGION como se ha descrito anteriormente. De lo contrario, use los argumentos --key y --region.

Comprobar los resultados

Al usar la opción realTime del ejemplo anterior, los resultados parciales de los eventos Recognizing se incluyen en la salida. En este ejemplo, solo se incluyen comas en el evento final Recognized. Los eventos Recognizing y Recognized no solo se diferencian en el uso de comas. Para obtener más información, consulte Get partial results, (Obtención de resultados parciales).

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.

Al usarse la opción --offline, los resultados son estables desde el evento final Recognized. En la salida no se incluyen los resultados parciales:

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.

El formato de salida del intervalo de tiempo de SRT (SubRip Text) es hh:mm:ss,fff. Para más información, consulte Caption output format, (Formato de salida de subtítulos).

Uso y argumentos

Uso: python captioning.py --input <input file>

Las opciones de conexión incluyen:

  • --key: clave del recurso de Voz. Invalida la variable de entorno SPEECH_KEY. Se debe establecer la variable de entorno (opción recomendada) o usar la opción --key.
  • --region REGION: región del recurso de Voz. Invalida la variable de entorno SPEECH_REGION. Se debe establecer la variable de entorno (opción recomendada) o usar la opción --region. Ejemplos: westus, northeurope

Importante

Si usa una clave de API, almacénela de forma segura en otro lugar, como en Azure Key Vault. No incluya la clave de API directamente en el código ni la exponga nunca públicamente.

Para más información sobre la seguridad de los servicios de AI, consulte Autenticación de solicitudes a los servicios de Azure AI.

Otras entradas incluyen:

  • --input FILE: audio de entrada del archivo. La entrada predeterminada es el micrófono.
  • --format FORMAT: use el formato de audio comprimido. Solo es válido con --file. Los valores válidos son alaw, any, flac, mp3, mulaw y ogg_opus. El valor predeterminado es any. Para usar un archivo wav, no especifique el formato. Esta opción no está disponible con el ejemplo de subtítulos de JavaScript. Para archivos de audio comprimidos como MP4, instale GStreamer y consulte Cómo usar audio de entrada comprimido.

Entre las opciones de idioma se incluyen:

  • --language LANG: especifique un idioma que use una de las configuraciones regionales correspondientes. Se emplea al dividir los subtítulos en líneas. El valor predeterminado es en-US.

Las opciones de reconocimiento incluyen:

  • --offline: resultados sin conexión de salida. Invalida --realTime. El modo de salida predeterminado no tiene conexión.
  • --realTime: resultados en tiempo real de salida.

En la salida en tiempo real se incluyen los resultados de eventos Recognizing. En la salida sin conexión predeterminada solo se incluyen resultados del evento Recognized. Siempre se escriben en la consola, nunca en un archivo de salida. La opción --quiet invalida esto. Para obtener más información, consulte Obtención de resultados de reconocimiento de voz.

Entre las opciones de precisión se incluyen:

Las opciones de entrada incluyen:

  • --help: mostrar esta ayuda y detener
  • --output FILE: subtítulos de salida para el file especificado. Se requiere esta marca.
  • --srt: subtítulos de salida en formato SRT (texto de SubRip). El formato predeterminado es WebVTT (pistas de texto de vídeo web). Para obtener más información sobre los formatos de archivo de subtítulo de SRT y WebVTT, consulte Formato de salida del subtítulo.
  • --maxLineLength LENGTH: establezca el número máximo de caracteres por línea para un subtítulo en LENGTH. El valor mínimo es 20. El valor predeterminado es 37 (30 para chino).
  • --lines LINES: establezca el número de líneas de un subtítulo en LINES. El valor mínimo es 1. El valor predeterminado es 2.
  • --delay MILLISECONDS: el número de MILISEGUNDOS que se retrasará la presentación de cada subtítulo para imitar una experiencia en tiempo real. La opción solo se aplicará al usar la marca realTime. El valor mínimo es 0.0. El valor predeterminado es 1000.
  • --remainTime MILLISECONDS: el número de MILISEGUNDOS durante los cuales un subtítulo permanece en la pantalla si no se reemplaza por otro. El valor mínimo es 0.0. El valor predeterminado es 1000.
  • --quiet: suprima la salida de la consola, excepto los errores.
  • --profanity OPTION: valores válidos: raw, remove, mask. Para obtener más información, consulte Conceptos de filtro de palabras soeces.
  • --threshold NUMBER: establece un umbral de resultado parcial estable. El valor predeterminado es 3. La opción solo se aplicará al usar la marca realTime. Para obtener más información, consulte Obtención de conceptos de resultados parciales.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

En este inicio rápido, ejecutará una aplicación de consola para crear subtítulos con conversión de voz en texto.

Sugerencia

Pruebe Speech Studio y elija un clip de vídeo de ejemplo para ver los resultados de subtítulos procesados en tiempo real o sin conexión.

Sugerencia

Pruebe el toolkit de Voz de Azure AI para compilar y ejecutar fácilmente ejemplos de subtítulos en Visual Studio Code.

Requisitos previos

Configuración del entorno

Siga estos pasos y consulte el inicio rápido de la CLI de Voz para conocer los otros requisitos de la plataforma.

  1. Ejecute el siguiente comando de la CLI de .NET para instalar la CLI de Voz:

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Configure la clave de recurso de Voz y la región mediante la ejecución de los siguientes comandos. Reemplace SUBSCRIPTION-KEY por la clave del recurso de Voz y REGION por la región del recurso de Voz.

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

También debe instalar GStreamer para el audio de entrada comprimido.

Creación de subtítulos a partir de voz

Con la CLI de Voz, puede generar subtítulos SRT (texto de SubRip) y WebVTT (pistas de texto de vídeo web) desde cualquier tipo de medio que contenga audio.

Para reconocer el audio de un archivo y generar los subtítulos de WebVtt (vtt) y SRT (srt), siga estos pasos.

  1. Asegúrese de que tiene un archivo de entrada denominado caption.this.mp4 en la ruta de acceso.

  2. Ejecute el siguiente comando para generar subtítulos del archivo de vídeo:

    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"
    

    Los subtítulos de SRT y WebVTT se envían a la consola, como se muestra aquí:

    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"
    }
    

Uso y argumentos

Estos son los detalles sobre los argumentos opcionales del comando anterior:

  • --file caption.this.mp4 --format any: audio de entrada del archivo. La entrada predeterminada es el micrófono. Para archivos de audio comprimidos como MP4, instale GStreamer y consulte Cómo usar audio de entrada comprimido.
  • --output vtt file - y --output srt file -: genera subtítulos de WebVTT y SRT en la salida estándar. Para obtener más información sobre los formatos de archivo de subtítulo de SRT y WebVTT, consulte Formato de salida del subtítulo. Para más información sobre el argumento --output, consulte Opciones de salida de la CLI de Voz.
  • @output.each.detailed: genera resultados de eventos con texto, desplazamiento y duración. Para obtener más información, consulte Obtención de resultados de reconocimiento de voz.
  • --property SpeechServiceResponse_StablePartialResultThreshold=5: puede solicitar que el servicio de Voz devuelva menos eventos Recognizing que sean más precisos. En este ejemplo, el servicio voz debe confirmar el reconocimiento de una palabra al menos cinco veces antes de devolverle los resultados parciales. Para obtener más información, consulte Obtención de conceptos de resultados parciales.
  • --profanity masked: puede especificar si desea ocultar, quitar o mostrar palabras soeces en los resultados del reconocimiento. Para obtener más información, consulte Conceptos de filtro de palabras soeces.
  • --phrases "Constoso;Jessie;Rehaan": puede especificar una lista de frases que se van a reconocer, como Contoso, Jessie y Rehaan. Para obtener más información, consulte Mejorar el reconocimiento con la lista de frases.

Limpieza de recursos

Puede usar Azure Portal o la Interfaz de la línea de comandos (CLI) de Azure para quitar el recurso de Voz que creó.

Pasos siguientes