Ads Top

Como Criar um Narrador de Texto com Microsoft Azure em C#

Olá meus amigos, na dica de hoje vamos aprender a criar um simples software que usa a api do Azure para converter texto em áudio com vozes bem realistas.
Para quem não sabe o Azure (https://azure.microsoft.com/pt-br/) é uma plataforma de serviços na Nuvem mantido pela gigante da área de tecnologia digital a Microsoft. O Microsoft Azure oferece serviços pagos, porém você pode criar uma conta de avaliação gratuita. Após fazer o seu cadastro você ganha cerca de $200 (duzentos dólares) em crédito para poder experimentar os serviços.

Então vamos usar esses créditos no serviço de Fala (speech) deles.

Como Criar um Narrador de Textos em C#

Para criar o nosso programa de conversão de texto em áudio vamos usar o software chamado Visual Studio da própria Microsoft. Você pode Baixar ele nesse url: https://visualstudio.microsoft.com/pt-br/downloads/

No vídeo baixo explico com mais detalhes todo o processo de configuração do projeto, então não deixe de conferir:

Como funciona esse conversor de texto em fala

Esse software em C# vai funcionar da seguinte forma:

  • Uma vez aberta a janela do programa você só precisará digitar ou colar o texto que deseja obter o áudio.
  • Depois seleciona a voz desejada e clique no botão Salvar Áudio.
  • Agora o software irá comunicar-se com o serviço da Azure, usando a chave (key) da aplicação e o código da localização.
  • O Software irá passar o texto para a Azure que irá retornar o áudio já pronto.
  • Agora o software irá salvar o áudio no formato .wav no local que você definiu durante a criação do software.

Bom, grosso modo é basicamente isso. Note que aqui o foco foi desenvolver um programa funcional, então não fizemos nenhuma melhoria no visual, pois isso fica por sua conta, combinado.

Código do Programa

Veja agora o como ficou o Código do programa narrador:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using Microsoft.CognitiveServices.Speech;
using Microsoft.CognitiveServices.Speech.Audio;

namespace MeuNarrador
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            vozes.SelectedIndex = 0;
        }

        private void btn_criar_audio_Click(object sender, EventArgs e)
        {
            var texto_ = texto.Text;
            string[] array_vozes = { "pt-BR-FranciscaNeural", "pt-BR-AntonioNeural", "pt-BR-Daniel", "pt-BR-HeloisaRUS" };

            var config = SpeechConfig.FromSubscription("key", "brazilsouth");

            config.SpeechSynthesisVoiceName = array_vozes[vozes.SelectedIndex];

            var audioConfig = AudioConfig.FromWavFileOutput("C:\\audios\\fala.wav");
            var synthesizer = new SpeechSynthesizer(config, audioConfig);
            synthesizer.SpeakTextAsync(texto_);
        }
    }
}

Para o Código acima funcionar, você precisar adicionar um elemento de texto e renomeá-lo para “texto”. Adicione também um elemento listbox e o renomeie para “vozes”. Por último adicione também um elemento button e mude o nome dele para “btn_criar_audio”.

Claro que há várias outras configurações necessárias e que foram mostradas no vídeo, então não deixe de ver o vídeo para entender melhor.

Conclusão

Esse conversor de texto em áudio em português do brasil e com vozes naturais de homem e mulher pode ser muito útil em alguns tipos de projetos. Você pode rapidamente obter um áudio .wav para usar em seus vídeos, por exemplo. Sem dúvida essas duas vozes do Antônio e da Francisca são as melhores para narração, pois são muito próximas de uma narração real.

Bom, espero que tenha gostado dessa dica.
Abraços e até um próximo artigo!

Na próxima semana farei mais um review com depoimento e resenha sobre Como Criar um Narrador de Texto com Microsoft Azure em C#.

Espero ter ajudado a esclarecer o que é, como usar, se funciona e se vale a pena mesmo Como Criar um Narrador de Texto com Microsoft Azure em C#. Se você tiver alguma dúvida ou quiser adicionar algum comentário deixe abaixo.

Nenhum comentário:

Tecnologia do Blogger.