Guia de início rápido: criar legendas com conversão de fala em texto

Documentação de referência | Pacotes (NuGet) | Exemplos adicionais no GitHub

Neste guia de início rápido, você vai executar um aplicativo de console para criar legendas com a conversão de fala em texto.

Dica

Experimente o Speech Studio: escolha um videoclipe de exemplo para ver os resultados da legenda processada em tempo real ou offline.

Pré-requisitos

Configurar o ambiente

O SDK de Fala está disponível como um pacote NuGet e implementa o .NET Standard 2.0. Você instalará o SDK de Fala posteriormente neste guia, mas primeiro verifique o guia de instalação do SDK para conhecer os demais requisitos.

Você também precisa instalar o GStreamer para entrada de áudio compactado.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Criar legendas da fala

Siga estas etapas para criar e executar o exemplo de código de início rápido de legendagem.

  1. Copie os arquivos de exemplos scenarios/csharp/dotnetcore/captioning/ do GitHub. Se tiver o Git instalado, abra um prompt de comando e execute o comando git clone para baixar o repositório de exemplos do SDK de Fala.
    git clone https://github.com/Azure-Samples/cognitive-services-speech-sdk.git
    
  2. Abra um prompt de comando e altere para o diretório do projeto.
    cd <your-local-path>/scenarios/csharp/dotnetcore/captioning/captioning/
    
  3. Crie o projeto com a CLI do .NET.
    dotnet build
    
  4. Execute o aplicativo com seus argumentos de linha de comando preferenciais. Confira o uso e os argumentos das opções disponíveis. Veja um exemplo:
    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

    Verifique se os caminhos especificados por --input e --output são válidos. Caso contrário, altere os caminhos.

    Defina as variáveis de ambiente SPEECH_KEY e SPEECH_REGION conforme descrito acima. Caso contrário, use os argumentos --key e --region.

Verificar os resultados

Ao usar a opção realTime no exemplo acima, os resultados parciais dos eventos Recognizing serão incluídos na saída. Neste exemplo, somente o evento Recognized final inclui as vírgulas. As vírgulas não são as únicas diferenças entre os eventos Recognizing e Recognized. Para obter mais informações, consulte Obter resultados parciais.

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.

Ao usar a opção --offline, os resultados serão estáveis a partir do eventoRecognized final. Os resultados parciais não são incluídos na saída:

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.

O formato de saída do intervalo de horários do SRT (Texto SubRip) é hh:mm:ss,fff. Para obter mais informações, consulte Formato de saída da legenda.

Uso e argumentos

Uso: captioning --input <input file>

As opções de conexão incluem:

  • --key: chave do recurso de Fala. Substitui a variável de ambiente SPEECH_KEY. Será necessário definir a variável de ambiente (recomendada) ou usar a opção --key.
  • --region REGION: região do recurso de Fala. Substitui a variável de ambiente SPEECH_REGION. Será necessário definir a variável de ambiente (recomendada) ou usar a opção --region. Exemplos: westus, northeurope

As opções de entrada incluem:

  • --input FILE: entrada de áudio de arquivo. A entrada padrão é o microfone.
  • --format FORMAT: usar o formato de áudio compactado. Válido somente com --file. Os valores válidos são: alaw, any, flac, mp3, mulaw e ogg_opus. O valor padrão é any. Para usar um arquivo wav, não especifique o formato. Essa opção não está disponível com o exemplo de legendagem JavaScript. Para arquivos de áudio compactados, como MP4, instale o GStreamer e confira Como usar uma entrada de áudio compactado.

As opções de idioma incluem:

  • --language LANG: especifica um idioma usando uma das localidades com suporte correspondentes. Isso é usado ao interromper as legendas em linhas. O valor padrão é en-US.

As opções de reconhecimento incluem:

  • --offline: saída de resultados offline. Substitui --realTime. O modo de saída padrão é offline.
  • --realTime: saída de resultados em tempo real.

A saída em tempo real inclui resultados de eventos Recognizing. A saída offline padrão é somente resultados de eventos Recognized. Essas opções são sempre gravadas no console, nunca em um arquivo de saída. A opção --quiet substitui essa. Para obter mais informações, confira Obter resultados do reconhecimento de fala.

As opções de precisão incluem:

As opções de saída incluem:

  • --help: mostrar esta ajuda e parar
  • --output FILE: emitir as legendas para o file especificado. Este sinalizador é necessário.
  • --srt: emitir as legendas no formato SRT (Texto SubRip). O formato padrão é WebVTT (Web Video Text Tracks). Para obter mais informações sobre formatos de arquivo de legenda SRT e WebVTT, confira Formato de saída de legenda.
  • --maxLineLength LENGTH: definir o número máximo de caracteres por linha para uma legenda como LENGTH. O mínimo é 20. O padrão é 37 (30 para chinês).
  • --lines LINES: definir o número de linhas de uma legenda para LINES. O mínimo é 1. O padrão é 2.
  • --delay MILLISECONDS: quantos MILLISECONDS para atrasar a exibição de cada legenda, para simular uma experiência em tempo real. Essa opção será aplicável somente quando você usar o sinalizador realTime. O mínimo é 0.0. O padrão é 1000.
  • --remainTime MILLISECONDS: quantos MILLISECONDS uma legenda deverá permanecer na tela se não for substituída por outra. O mínimo é 0.0. O padrão é 1000.
  • --quiet: suprimir a saída do console, exceto erros.
  • --profanity OPTION: valores válidos: bruto, remover, mascarar. Para obter mais informações, confira os conceitos de Filtro de profanação.
  • --threshold NUMBER: definir o limite de resultado parcial estável. O valor padrão é 3. Essa opção será aplicável somente quando você usar o sinalizador realTime. Para obter mais informações, confira os conceitos de Obter resultados parciais.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacotes (NuGet) | Exemplos adicionais no GitHub

Neste guia de início rápido, você vai executar um aplicativo de console para criar legendas com a conversão de fala em texto.

Dica

Experimente o Speech Studio: escolha um videoclipe de exemplo para ver os resultados da legenda processada em tempo real ou offline.

Pré-requisitos

Configurar o ambiente

O SDK de Fala está disponível como um pacote NuGet e implementa o .NET Standard 2.0. Você instalará o SDK de Fala posteriormente neste guia, mas primeiro verifique o guia de instalação do SDK para conhecer os demais requisitos.

Você também precisa instalar o GStreamer para entrada de áudio compactado.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Criar legendas da fala

Siga essas etapas para criar e executar o exemplo de código de início rápido de legendagem com o Visual Studio Community 2022 no Windows.

  1. Baixe ou copie os arquivos de exemplo scenarios/cpp/windows/captioning/ do GitHub em um diretório local.

  2. Abra o arquivo de solução captioning.sln no Visual Studio Community 2022.

  3. Instale o SDK de Fala no novo projeto com o gerenciador de pacotes NuGet.

    Install-Package Microsoft.CognitiveServices.Speech
    
  4. Abra Projeto>Propriedades>Geral. Defina Configuração como All configurations. Defina Padrão de Linguagem C++ como ISO C++17 Standard (/std:c++17).

  5. Abra Compilar>Configuration Manager.

    • Em uma instalação de Windows de 64 bits, defina a plataforma de solução ativa como x64.
    • Em uma instalação de Windows de 32 bits, defina a plataforma de solução ativa como x86.
  6. Abra Projeto>Propriedades>Depuração. Insira os argumentos de linha de comando preferenciais em Argumentos de Comando. Confira o uso e os argumentos das opções disponíveis. Veja um exemplo:

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

    Importante

    Verifique se os caminhos especificados por --input e --output são válidos. Caso contrário, altere os caminhos.

    Defina as variáveis de ambiente SPEECH_KEY e SPEECH_REGION conforme descrito acima. Caso contrário, use os argumentos --key e --region.

  7. Compile e execute o aplicativo de console.

Verificar os resultados

Ao usar a opção realTime no exemplo acima, os resultados parciais dos eventos Recognizing serão incluídos na saída. Neste exemplo, somente o evento Recognized final inclui as vírgulas. As vírgulas não são as únicas diferenças entre os eventos Recognizing e Recognized. Para obter mais informações, consulte Obter resultados parciais.

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.

Ao usar a opção --offline, os resultados serão estáveis a partir do eventoRecognized final. Os resultados parciais não são incluídos na saída:

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.

O formato de saída do intervalo de horários do SRT (Texto SubRip) é hh:mm:ss,fff. Para obter mais informações, consulte Formato de saída da legenda.

Uso e argumentos

Uso: captioning --input <input file>

As opções de conexão incluem:

  • --key: chave do recurso de Fala. Substitui a variável de ambiente SPEECH_KEY. Será necessário definir a variável de ambiente (recomendada) ou usar a opção --key.
  • --region REGION: região do recurso de Fala. Substitui a variável de ambiente SPEECH_REGION. Será necessário definir a variável de ambiente (recomendada) ou usar a opção --region. Exemplos: westus, northeurope

As opções de entrada incluem:

  • --input FILE: entrada de áudio de arquivo. A entrada padrão é o microfone.
  • --format FORMAT: usar o formato de áudio compactado. Válido somente com --file. Os valores válidos são: alaw, any, flac, mp3, mulaw e ogg_opus. O valor padrão é any. Para usar um arquivo wav, não especifique o formato. Essa opção não está disponível com o exemplo de legendagem JavaScript. Para arquivos de áudio compactados, como MP4, instale o GStreamer e confira Como usar uma entrada de áudio compactado.

As opções de idioma incluem:

  • --language LANG: especifica um idioma usando uma das localidades com suporte correspondentes. Isso é usado ao interromper as legendas em linhas. O valor padrão é en-US.

As opções de reconhecimento incluem:

  • --offline: saída de resultados offline. Substitui --realTime. O modo de saída padrão é offline.
  • --realTime: saída de resultados em tempo real.

A saída em tempo real inclui resultados de eventos Recognizing. A saída offline padrão é somente resultados de eventos Recognized. Essas opções são sempre gravadas no console, nunca em um arquivo de saída. A opção --quiet substitui essa. Para obter mais informações, confira Obter resultados do reconhecimento de fala.

As opções de precisão incluem:

As opções de saída incluem:

  • --help: mostrar esta ajuda e parar
  • --output FILE: emitir as legendas para o file especificado. Este sinalizador é necessário.
  • --srt: emitir as legendas no formato SRT (Texto SubRip). O formato padrão é WebVTT (Web Video Text Tracks). Para obter mais informações sobre formatos de arquivo de legenda SRT e WebVTT, confira Formato de saída de legenda.
  • --maxLineLength LENGTH: definir o número máximo de caracteres por linha para uma legenda como LENGTH. O mínimo é 20. O padrão é 37 (30 para chinês).
  • --lines LINES: definir o número de linhas de uma legenda para LINES. O mínimo é 1. O padrão é 2.
  • --delay MILLISECONDS: quantos MILLISECONDS para atrasar a exibição de cada legenda, para simular uma experiência em tempo real. Essa opção será aplicável somente quando você usar o sinalizador realTime. O mínimo é 0.0. O padrão é 1000.
  • --remainTime MILLISECONDS: quantos MILLISECONDS uma legenda deverá permanecer na tela se não for substituída por outra. O mínimo é 0.0. O padrão é 1000.
  • --quiet: suprimir a saída do console, exceto erros.
  • --profanity OPTION: valores válidos: bruto, remover, mascarar. Para obter mais informações, confira os conceitos de Filtro de profanação.
  • --threshold NUMBER: definir o limite de resultado parcial estável. O valor padrão é 3. Essa opção será aplicável somente quando você usar o sinalizador realTime. Para obter mais informações, confira os conceitos de Obter resultados parciais.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacotes (Go) | Exemplos adicionais no GitHub

Neste guia de início rápido, você vai executar um aplicativo de console para criar legendas com a conversão de fala em texto.

Dica

Experimente o Speech Studio: escolha um videoclipe de exemplo para ver os resultados da legenda processada em tempo real ou offline.

Pré-requisitos

Configurar o ambiente

Verifique se há etapas de instalação específicas da plataforma.

Você também precisa instalar o GStreamer para entrada de áudio compactado.

Criar legendas da fala

Siga estas etapas para criar e executar o exemplo de código de início rápido de legendagem.

  1. Baixe ou copie os arquivos de exemplo scenarios/go/captioning/ do GitHub em um diretório local.

  2. Abra um prompt de comando no mesmo diretório que o captioning.go.

  3. Execute os seguintes comandos para criar um arquivo go.mod vinculado aos componentes do SDK de Fala hospedados no GitHub:

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

    go build
    
  5. Execute o aplicativo com seus argumentos de linha de comando preferenciais. Confira o uso e os argumentos das opções disponíveis. Veja um exemplo:

    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"
    

    Substitua YourSubscriptionKey pela chave do recurso de Fala e substitua YourServiceRegion pela região do recurso de Fala, como westus ou northeurope. Verifique se os caminhos especificados por --input e --output são válidos. Caso contrário, altere os caminhos.

    Importante

    Lembre-se de remover a chave do seu código quando terminar e nunca poste-a publicamente. Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. Consulte o artigo sobre segurança do serviços de IA do Azure para obter mais informações.

Verificar os resultados

O arquivo de saída com legendas completas é gravado em caption.output.txt. Os resultados intermediários são mostrados no console:

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.

O formato de saída do intervalo de horários do SRT (Texto SubRip) é hh:mm:ss,fff. Para obter mais informações, consulte Formato de saída da legenda.

Uso e argumentos

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

As opções de conexão incluem:

  • --key: chave do recurso de Fala.
  • --region REGION: região do recurso de Fala. Exemplos: westus, northeurope

As opções de entrada incluem:

  • --input FILE: entrada de áudio de arquivo. A entrada padrão é o microfone.
  • --format FORMAT: usar o formato de áudio compactado. Válido somente com --file. Os valores válidos são: alaw, any, flac, mp3, mulaw e ogg_opus. O valor padrão é any. Para usar um arquivo wav, não especifique o formato. Essa opção não está disponível com o exemplo de legendagem JavaScript. Para arquivos de áudio compactados, como MP4, instale o GStreamer e confira Como usar uma entrada de áudio compactado.

As opções de idioma incluem:

  • --languages LANG1,LANG2: habilitar a identificação de idiomas especificados. Por exemplo: en-US,ja-JP. Essa opção só está disponível com os exemplos de legendagem C++, C# e Python. Para obter mais informações, confira Identificação de idioma.

As opções de reconhecimento incluem:

  • --recognizing: emitir os resultados do evento Recognizing. A saída padrão é somente os resultados do evento Recognized. Essas opções são sempre gravadas no console, nunca em um arquivo de saída. A opção --quiet substitui essa. Para obter mais informações, confira Obter resultados do reconhecimento de fala.

As opções de precisão incluem:

As opções de saída incluem:

  • --help: mostrar esta ajuda e parar
  • --output FILE: emitir as legendas para o file especificado. Este sinalizador é necessário.
  • --srt: emitir as legendas no formato SRT (Texto SubRip). O formato padrão é WebVTT (Web Video Text Tracks). Para obter mais informações sobre formatos de arquivo de legenda SRT e WebVTT, confira Formato de saída de legenda.
  • --quiet: suprimir a saída do console, exceto erros.
  • --profanity OPTION: valores válidos: bruto, remover, mascarar. Para obter mais informações, confira os conceitos de Filtro de profanação.
  • --threshold NUMBER: definir o limite de resultado parcial estável. O valor padrão é 3. Para obter mais informações, confira os conceitos de Obter resultados parciais.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Amostras adicionais no GitHub

Neste guia de início rápido, você vai executar um aplicativo de console para criar legendas com a conversão de fala em texto.

Dica

Experimente o Speech Studio: escolha um videoclipe de exemplo para ver os resultados da legenda processada em tempo real ou offline.

Pré-requisitos

Configurar o ambiente

Antes de realizar qualquer ação, será necessário instalar o SDK de Fala. O exemplo neste início rápido funciona com o Microsoft Build do OpenJDK 17

  1. Instale o Apache Maven. Em seguida, execute mvn -v para confirmar a instalação bem-sucedida.
  2. Crie um arquivo pom.xml na raiz do projeto e copie nele o seguinte:
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.microsoft.cognitiveservices.speech.samples</groupId>
        <artifactId>quickstart-eclipse</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <build>
            <sourceDirectory>src</sourceDirectory>
            <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                <source>1.8</source>
                <target>1.8</target>
                </configuration>
            </plugin>
            </plugins>
        </build>
        <dependencies>
            <dependency>
            <groupId>com.microsoft.cognitiveservices.speech</groupId>
            <artifactId>client-sdk</artifactId>
            <version>1.37.0</version>
            </dependency>
        </dependencies>
    </project>
    
  3. Instale o SDK de Fala e as dependências.
    mvn clean dependency:copy-dependencies
    
  4. Você também precisa instalar o GStreamer para entrada de áudio compactado.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Criar legendas da fala

Siga estas etapas para criar e executar o exemplo de código de início rápido de legendagem.

  1. Copie os arquivos de exemplo scenarios/java/jre/captioning/ do GitHub para o diretório do projeto. O arquivo pom.xml que você criou na configuração do ambiente também precisa estar nesse diretório.
  2. Abra um prompt de comando e execute este comando para compilar os arquivos de projeto.
    javac Captioning.java -cp ".;target\dependency\*" -encoding UTF-8
    
  3. Execute o aplicativo com seus argumentos de linha de comando preferenciais. Confira o uso e os argumentos das opções disponíveis. Veja um exemplo:
    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

    Verifique se os caminhos especificados por --input e --output são válidos. Caso contrário, altere os caminhos.

    Defina as variáveis de ambiente SPEECH_KEY e SPEECH_REGION conforme descrito acima. Caso contrário, use os argumentos --key e --region.

Verificar os resultados

Ao usar a opção realTime no exemplo acima, os resultados parciais dos eventos Recognizing serão incluídos na saída. Neste exemplo, somente o evento Recognized final inclui as vírgulas. As vírgulas não são as únicas diferenças entre os eventos Recognizing e Recognized. Para obter mais informações, consulte Obter resultados parciais.

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.

Ao usar a opção --offline, os resultados serão estáveis a partir do eventoRecognized final. Os resultados parciais não são incluídos na saída:

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.

O formato de saída do intervalo de horários do SRT (Texto SubRip) é hh:mm:ss,fff. Para obter mais informações, consulte Formato de saída da legenda.

Uso e argumentos

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

As opções de conexão incluem:

  • --key: chave do recurso de Fala. Substitui a variável de ambiente SPEECH_KEY. Será necessário definir a variável de ambiente (recomendada) ou usar a opção --key.
  • --region REGION: região do recurso de Fala. Substitui a variável de ambiente SPEECH_REGION. Será necessário definir a variável de ambiente (recomendada) ou usar a opção --region. Exemplos: westus, northeurope

As opções de entrada incluem:

  • --input FILE: entrada de áudio de arquivo. A entrada padrão é o microfone.
  • --format FORMAT: usar o formato de áudio compactado. Válido somente com --file. Os valores válidos são: alaw, any, flac, mp3, mulaw e ogg_opus. O valor padrão é any. Para usar um arquivo wav, não especifique o formato. Essa opção não está disponível com o exemplo de legendagem JavaScript. Para arquivos de áudio compactados, como MP4, instale o GStreamer e confira Como usar uma entrada de áudio compactado.

As opções de idioma incluem:

  • --language LANG: especifica um idioma usando uma das localidades com suporte correspondentes. Isso é usado ao interromper as legendas em linhas. O valor padrão é en-US.

As opções de reconhecimento incluem:

  • --offline: saída de resultados offline. Substitui --realTime. O modo de saída padrão é offline.
  • --realTime: saída de resultados em tempo real.

A saída em tempo real inclui resultados de eventos Recognizing. A saída offline padrão é somente resultados de eventos Recognized. Essas opções são sempre gravadas no console, nunca em um arquivo de saída. A opção --quiet substitui essa. Para obter mais informações, confira Obter resultados do reconhecimento de fala.

As opções de precisão incluem:

As opções de saída incluem:

  • --help: mostrar esta ajuda e parar
  • --output FILE: emitir as legendas para o file especificado. Este sinalizador é necessário.
  • --srt: emitir as legendas no formato SRT (Texto SubRip). O formato padrão é WebVTT (Web Video Text Tracks). Para obter mais informações sobre formatos de arquivo de legenda SRT e WebVTT, confira Formato de saída de legenda.
  • --maxLineLength LENGTH: definir o número máximo de caracteres por linha para uma legenda como LENGTH. O mínimo é 20. O padrão é 37 (30 para chinês).
  • --lines LINES: definir o número de linhas de uma legenda para LINES. O mínimo é 1. O padrão é 2.
  • --delay MILLISECONDS: quantos MILLISECONDS para atrasar a exibição de cada legenda, para simular uma experiência em tempo real. Essa opção será aplicável somente quando você usar o sinalizador realTime. O mínimo é 0.0. O padrão é 1000.
  • --remainTime MILLISECONDS: quantos MILLISECONDS uma legenda deverá permanecer na tela se não for substituída por outra. O mínimo é 0.0. O padrão é 1000.
  • --quiet: suprimir a saída do console, exceto erros.
  • --profanity OPTION: valores válidos: bruto, remover, mascarar. Para obter mais informações, confira os conceitos de Filtro de profanação.
  • --threshold NUMBER: definir o limite de resultado parcial estável. O valor padrão é 3. Essa opção será aplicável somente quando você usar o sinalizador realTime. Para obter mais informações, confira os conceitos de Obter resultados parciais.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacote (npm) | Exemplos adicionais no GitHub | Código-fonte de biblioteca

Neste guia de início rápido, você vai executar um aplicativo de console para criar legendas com a conversão de fala em texto.

Dica

Experimente o Speech Studio: escolha um videoclipe de exemplo para ver os resultados da legenda processada em tempo real ou offline.

Pré-requisitos

Configurar o ambiente

Para fazer qualquer coisa, instale o SDK de Fala para JavaScript. Se você quiser apenas o nome do pacote a ser instalado, execute npm install microsoft-cognitiveservices-speech-sdk. Para obter instruções de instalação guiadas, confira o Guia de instalação do SDK.

Criar legendas da fala

Siga estas etapas para criar e executar o exemplo de código de início rápido de legendagem.

  1. Copie os arquivos de exemplo scenarios/javascript/node/captioning/ do GitHub para o diretório do projeto.

  2. Abra um prompt de comando no mesmo diretório que o Captioning.js.

  3. Instale o SDK de Fala para JavaScript:

    npm install microsoft-cognitiveservices-speech-sdk
    
  4. Execute o aplicativo com seus argumentos de linha de comando preferenciais. Confira o uso e os argumentos das opções disponíveis. Veja um exemplo:

    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"
    

    Substitua YourSubscriptionKey pela chave do recurso de Fala e substitua YourServiceRegion pela região do recurso de Fala, como westus ou northeurope. Verifique se os caminhos especificados por --input e --output são válidos. Caso contrário, altere os caminhos.

    Observação

    O SDK de Fala para JavaScript não dá suporte o áudio de entrada compactado. Você precisa usar um arquivo WAV, como é mostrado no exemplo.

    Importante

    Lembre-se de remover a chave do seu código quando terminar e nunca poste-a publicamente. Para produção, use uma maneira segura de armazenar e acessar suas credenciais, como o Azure Key Vault. Consulte o artigo sobre segurança do serviços de IA do Azure para obter mais informações.

Verificar os resultados

O arquivo de saída com legendas completas é gravado em caption.output.txt. Os resultados intermediários são mostrados no console:

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.

O formato de saída do intervalo de horários do SRT (Texto SubRip) é hh:mm:ss,fff. Para obter mais informações, consulte Formato de saída da legenda.

Uso e argumentos

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

As opções de conexão incluem:

  • --key: chave do recurso de Fala.
  • --region REGION: região do recurso de Fala. Exemplos: westus, northeurope

As opções de entrada incluem:

  • --input FILE: entrada de áudio de arquivo. A entrada padrão é o microfone.
  • --format FORMAT: usar o formato de áudio compactado. Válido somente com --file. Os valores válidos são: alaw, any, flac, mp3, mulaw e ogg_opus. O valor padrão é any. Para usar um arquivo wav, não especifique o formato. Essa opção não está disponível com o exemplo de legendagem JavaScript. Para arquivos de áudio compactados, como MP4, instale o GStreamer e confira Como usar uma entrada de áudio compactado.

As opções de idioma incluem:

  • --languages LANG1,LANG2: habilitar a identificação de idiomas especificados. Por exemplo: en-US,ja-JP. Essa opção só está disponível com os exemplos de legendagem C++, C# e Python. Para obter mais informações, confira Identificação de idioma.

As opções de reconhecimento incluem:

  • --recognizing: emitir os resultados do evento Recognizing. A saída padrão é somente os resultados do evento Recognized. Essas opções são sempre gravadas no console, nunca em um arquivo de saída. A opção --quiet substitui essa. Para obter mais informações, confira Obter resultados do reconhecimento de fala.

As opções de precisão incluem:

As opções de saída incluem:

  • --help: mostrar esta ajuda e parar
  • --output FILE: emitir as legendas para o file especificado. Este sinalizador é necessário.
  • --srt: emitir as legendas no formato SRT (Texto SubRip). O formato padrão é WebVTT (Web Video Text Tracks). Para obter mais informações sobre formatos de arquivo de legenda SRT e WebVTT, confira Formato de saída de legenda.
  • --quiet: suprimir a saída do console, exceto erros.
  • --profanity OPTION: valores válidos: bruto, remover, mascarar. Para obter mais informações, confira os conceitos de Filtro de profanação.
  • --threshold NUMBER: definir o limite de resultado parcial estável. O valor padrão é 3. Para obter mais informações, confira os conceitos de Obter resultados parciais.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Documentação de referência | Pacotes (Download) | Exemplos adicionais no GitHub

O SDK de Fala para Objective-C dá suporte a obtenção de resultados de legendagem do reconhecimento de fala, mas ainda não incluímos um guia aqui. Selecione outra linguagem de programação para começar e saber mais sobre os conceitos ou confira a referência e exemplos em Objective-C vinculados no início deste artigo.

Documentação de referência | Pacotes (Download) | Exemplos adicionais no GitHub

O SDK de Fala para Swift dá suporte a obtenção de resultados de legendagem do reconhecimento de fala, mas ainda não incluímos um guia aqui. Selecione outra linguagem de programação para começar e saber mais sobre os conceitos ou confira a referência e exemplos em Swift vinculados no início deste artigo.

Documentação de referência | Pacotes (PyPi) | Exemplos adicionais no GitHub

Neste guia de início rápido, você vai executar um aplicativo de console para criar legendas com a conversão de fala em texto.

Dica

Experimente o Speech Studio: escolha um videoclipe de exemplo para ver os resultados da legenda processada em tempo real ou offline.

Pré-requisitos

Configurar o ambiente

O SDK de fala para Python está disponível como um módulo PyPI (índice de pacote do Python). O SDK de Fala para Python é compatível com Windows, Linux e macOS.

  1. Instale uma versão do Python a partir da versão 3.10 ou posterior. Primeiro, verifique o Guia de instalação do SDK para conhecer os demais requisitos
  2. Você também precisa instalar o GStreamer para entrada de áudio compactado.

Definir variáveis de ambiente

O aplicativo deverá ser autenticado para acessar os recursos dos serviços de IA do Azure. Para produção, use uma maneira segura de armazenar e acessar suas credenciais. Por exemplo, após obter uma chave para o recurso Fala, grave-a em uma nova variável de ambiente no computador local que executa o aplicativo.

Dica

Não inclua a chave diretamente no código e nunca a divulgue publicamente. Confira Segurança dos serviços de IA do Azure para obter mais opções de autenticação, como o Azure Key Vault.

Para definir a variável de ambiente da chave de recurso de Fala, abra uma janela do console e siga as instruções para o seu sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente SPEECH_KEY, substitua your-key por uma das chaves do recurso.
  • Para definir a variável de ambiente SPEECH_REGION, substitua your-region por uma das regiões do recurso.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region

Observação

Se precisar acessar as variáveis de ambiente apenas no console atual, você pode definir a variável de ambiente com set em vez de setx.

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas que precisem ler a variável de ambiente, inclusive a janela do console. Por exemplo, se estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Criar legendas da fala

Siga estas etapas para criar e executar o exemplo de código de início rápido de legendagem.

  1. Baixe ou copie os arquivos de exemplo scenarios/python/console/captioning/ do GitHub em um diretório local.
  2. Abra um prompt de comando no mesmo diretório que o captioning.py.
  3. Execute este comando para instalar o SDK de Fala:
    pip install azure-cognitiveservices-speech
    
  4. Execute o aplicativo com seus argumentos de linha de comando preferenciais. Confira o uso e os argumentos das opções disponíveis. Veja um exemplo:
    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

    Verifique se os caminhos especificados por --input e --output são válidos. Caso contrário, altere os caminhos.

    Defina as variáveis de ambiente SPEECH_KEY e SPEECH_REGION conforme descrito acima. Caso contrário, use os argumentos --key e --region.

Verificar os resultados

Ao usar a opção realTime no exemplo acima, os resultados parciais dos eventos Recognizing serão incluídos na saída. Neste exemplo, somente o evento Recognized final inclui as vírgulas. As vírgulas não são as únicas diferenças entre os eventos Recognizing e Recognized. Para obter mais informações, consulte Obter resultados parciais.

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.

Ao usar a opção --offline, os resultados serão estáveis a partir do eventoRecognized final. Os resultados parciais não são incluídos na saída:

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.

O formato de saída do intervalo de horários do SRT (Texto SubRip) é hh:mm:ss,fff. Para obter mais informações, consulte Formato de saída da legenda.

Uso e argumentos

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

As opções de conexão incluem:

  • --key: chave do recurso de Fala. Substitui a variável de ambiente SPEECH_KEY. Será necessário definir a variável de ambiente (recomendada) ou usar a opção --key.
  • --region REGION: região do recurso de Fala. Substitui a variável de ambiente SPEECH_REGION. Será necessário definir a variável de ambiente (recomendada) ou usar a opção --region. Exemplos: westus, northeurope

As opções de entrada incluem:

  • --input FILE: entrada de áudio de arquivo. A entrada padrão é o microfone.
  • --format FORMAT: usar o formato de áudio compactado. Válido somente com --file. Os valores válidos são: alaw, any, flac, mp3, mulaw e ogg_opus. O valor padrão é any. Para usar um arquivo wav, não especifique o formato. Essa opção não está disponível com o exemplo de legendagem JavaScript. Para arquivos de áudio compactados, como MP4, instale o GStreamer e confira Como usar uma entrada de áudio compactado.

As opções de idioma incluem:

  • --language LANG: especifica um idioma usando uma das localidades com suporte correspondentes. Isso é usado ao interromper as legendas em linhas. O valor padrão é en-US.

As opções de reconhecimento incluem:

  • --offline: saída de resultados offline. Substitui --realTime. O modo de saída padrão é offline.
  • --realTime: saída de resultados em tempo real.

A saída em tempo real inclui resultados de eventos Recognizing. A saída offline padrão é somente resultados de eventos Recognized. Essas opções são sempre gravadas no console, nunca em um arquivo de saída. A opção --quiet substitui essa. Para obter mais informações, confira Obter resultados do reconhecimento de fala.

As opções de precisão incluem:

As opções de saída incluem:

  • --help: mostrar esta ajuda e parar
  • --output FILE: emitir as legendas para o file especificado. Este sinalizador é necessário.
  • --srt: emitir as legendas no formato SRT (Texto SubRip). O formato padrão é WebVTT (Web Video Text Tracks). Para obter mais informações sobre formatos de arquivo de legenda SRT e WebVTT, confira Formato de saída de legenda.
  • --maxLineLength LENGTH: definir o número máximo de caracteres por linha para uma legenda como LENGTH. O mínimo é 20. O padrão é 37 (30 para chinês).
  • --lines LINES: definir o número de linhas de uma legenda para LINES. O mínimo é 1. O padrão é 2.
  • --delay MILLISECONDS: quantos MILLISECONDS para atrasar a exibição de cada legenda, para simular uma experiência em tempo real. Essa opção será aplicável somente quando você usar o sinalizador realTime. O mínimo é 0.0. O padrão é 1000.
  • --remainTime MILLISECONDS: quantos MILLISECONDS uma legenda deverá permanecer na tela se não for substituída por outra. O mínimo é 0.0. O padrão é 1000.
  • --quiet: suprimir a saída do console, exceto erros.
  • --profanity OPTION: valores válidos: bruto, remover, mascarar. Para obter mais informações, confira os conceitos de Filtro de profanação.
  • --threshold NUMBER: definir o limite de resultado parcial estável. O valor padrão é 3. Essa opção será aplicável somente quando você usar o sinalizador realTime. Para obter mais informações, confira os conceitos de Obter resultados parciais.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Neste guia de início rápido, você vai executar um aplicativo de console para criar legendas com a conversão de fala em texto.

Dica

Experimente o Speech Studio: escolha um videoclipe de exemplo para ver os resultados da legenda processada em tempo real ou offline.

Pré-requisitos

Configurar o ambiente

Siga estas etapas e consulte o início rápido da CLI de Fala para obter outros requisitos para sua plataforma.

  1. Execute o seguinte comando da CLI do .NET para instalar a CLI de Fala:

    dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
    
  2. Execute os comandos a seguir para configurar a chave e a região do recurso Fala. Substitua SUBSCRIPTION-KEY pela sua chave do recurso de Fala e substitua REGION pela sua região do recurso de Fala.

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

Você também precisa instalar o GStreamer para entrada de áudio compactado.

Criar legendas da fala

Com a CLI de Fala, você pode emitir legendas SRT (Texto SubRip) e WebVTT (Web Video Text Tracks) de qualquer tipo de mídia que contenha áudio.

Para reconhecer o áudio de um arquivo e emitir legendas WebVTT (vtt) e SRT (srt), siga estas etapas.

  1. Verifique se você tem um arquivo de entrada chamado caption.this.mp4 no caminho.

  2. Execute o seguinte comando para gerar legendas do arquivo 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"
    

    As legendas SRT e WebVTT são emitidas no console, conforme é mostrado aqui:

    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 e argumentos

Veja detalhes sobre os argumentos opcionais do comando anterior:

  • --file caption.this.mp4 --format any: entrada de áudio de arquivo. A entrada padrão é o microfone. Para arquivos de áudio compactados, como MP4, instale o GStreamer e confira Como usar uma entrada de áudio compactado.
  • --output vtt file - e --output srt file -: emite legendas WebVTT e SRT para a saída padrão. Para obter mais informações sobre formatos de arquivo de legenda SRT e WebVTT, confira Formato de saída de legenda. Para obter mais informações sobre o argumento --output, confira as opções de saída da CLI de Fala.
  • @output.each.detailed: emite os resultados do eventos com texto, deslocamento e duração. Para obter mais informações, confira Obter resultados do reconhecimento de fala.
  • --property SpeechServiceResponse_StablePartialResultThreshold=5: você pode solicitar que o serviço de Fala retorne menos eventos Recognizing que sejam mais precisos. Neste exemplo, o serviço de Fala precisa afirmar o reconhecimento de uma palavra pelo menos cinco vezes antes de retornar os resultados parciais para você. Para obter mais informações, confira os conceitos de Obter resultados parciais.
  • --profanity masked: você pode especificar se quer mascarar, remover ou mostrar profanação nos resultados do reconhecimento. Para obter mais informações, confira os conceitos de Filtro de profanação.
  • --phrases "Constoso;Jessie;Rehaan": você pode especificar uma lista de frases a serem reconhecidas, como Contoso, Jessie e Rehaan. Para obter mais informações, confira Aprimorar o reconhecimento com a lista de frases.

Limpar os recursos

Você pode usar o portal do Azure ou a CLI (interface de linha de comando) do Azure para remover o recurso de fala que você criou.

Próximas etapas