{
  "version": "https://jsonfeed.org/version/1",
  "title": "Magneira",
  "home_page_url": "https://magneira.com.br",
  "feed_url": "https://magneira.com.br/tag-speech-to-text.json",
  "description": "Engenharia de software, tecnologia e inteligência artificial",
  "items": [
    {
      "id": "https://magneira.com.br/transcrever-arquivo-mp3-em-texto-com-python-e-google-cloud-speech-to-text.html",
      "url": "https://magneira.com.br/transcrever-arquivo-mp3-em-texto-com-python-e-google-cloud-speech-to-text.html",
      "title": "Transcrever arquivo MP3 em Texto com Python e API do Google Cloud Speech-to-Text",
      "content_html": "<blockquote>\n<p><strong>Publicado originalmente no LinkedIn em 28 de julho de 2024.</strong><br />\nEsta versão foi migrada para o blog da Magneira a partir da publicação original:<br />\n<a href=\"https://www.linkedin.com/pulse/transcrever-arquivo-mp3-em-texto-com-python-e-api-do-magno-fe0lf/\">https://www.linkedin.com/pulse/transcrever-arquivo-mp3-em-texto-com-python-e-api-do-magno-fe0lf/</a></p>\n</blockquote>\n<p>Esta semana, precisei transcrever um áudio de aproximadamente duas horas, gravado durante uma aula e com qualidade de captação limitada. Depois de algumas pesquisas, montei um script em Python para automatizar o processo.</p>\n<h2 id=\"requisitos\">Requisitos<a href=\"#requisitos\" aria-label=\"Link to heading 'Requisitos'\" data-heading-content=\"Requisitos\" class=\"anchor\"></a></h2>\n<ul>\n<li>FFmpeg 7.0.1</li>\n<li>Python 3.12</li>\n</ul>\n<h2 id=\"configuração\">Configuração<a href=\"#configuração\" aria-label=\"Link to heading 'Configuração'\" data-heading-content=\"Configuração\" class=\"anchor\"></a></h2>\n<p>O fluxo converte o MP3 para WAV, divide o áudio em trechos de 60 segundos e envia os segmentos para o Google Cloud Speech-to-Text. Ao final, a transcrição é salva em um arquivo de texto.</p>\n<p>Instale as dependências:</p>\n<pre class=\"marmite-code\"><code class=\"marmite-code-inner language-bash\"><a-f>pip</a-f> install pydub google-cloud-speech</code></pre>\n<p>No Google Cloud Console, crie ou selecione uma Service Account, gere uma chave JSON e configure o caminho desse arquivo no código.</p>\n<p>Também é necessário ter o FFmpeg disponível no <code>PATH</code>.</p>\n<h3 id=\"macos\">macOS<a href=\"#macos\" aria-label=\"Link to heading 'macOS'\" data-heading-content=\"macOS\" class=\"anchor\"></a></h3>\n<pre class=\"marmite-code\"><code class=\"marmite-code-inner language-bash\"><a-f>brew</a-f> install ffmpeg</code></pre>\n<h3 id=\"linux\">Linux<a href=\"#linux\" aria-label=\"Link to heading 'Linux'\" data-heading-content=\"Linux\" class=\"anchor\"></a></h3>\n<pre class=\"marmite-code\"><code class=\"marmite-code-inner language-bash\"><a-f>sudo</a-f> apt update\n<a-f>sudo</a-f> apt install ffmpeg</code></pre>\n<h2 id=\"código\">Código<a href=\"#código\" aria-label=\"Link to heading 'Código'\" data-heading-content=\"Código\" class=\"anchor\"></a></h2>\n<p>O projeto utilizado no artigo está disponível no GitHub:</p>\n<p><a href=\"https://github.com/magnocarvalho/converter-audio-texto-py\">https://github.com/magnocarvalho/converter-audio-texto-py</a></p>\n<p>Ajuste no código os caminhos da credencial JSON, do arquivo MP3 de entrada e do arquivo de texto de saída.</p>\n<h2 id=\"custos\">Custos<a href=\"#custos\" aria-label=\"Link to heading 'Custos'\" data-heading-content=\"Custos\" class=\"anchor\"></a></h2>\n<p>O uso do Google Cloud Speech-to-Text está sujeito à cobrança conforme o volume de áudio processado.</p>\n",
      "summary": "\"Um exemplo em Python para converter um arquivo MP3, dividir o áudio e gerar uma transcrição usando o Google Cloud Speech-to-Text.\"",
      "date_published": "2024-07-28T00:00:00-00:00",
      "image": "",
      "authors": [
        {
          "name": "Magno Carvalho dos Santos",
          "url": "https://github.com/magnocarvalho",
          "avatar": "https://github.com/magnocarvalho.png"
        }
      ],
      "tags": [
        "arquivo",
        "python",
        "google-cloud",
        "speech-to-text",
        "automacao"
      ],
      "language": "en"
    }
  ]
}