2 pontos por GN⁺ 2024-08-10 | 3 comentários | Compartilhar no WhatsApp
  • oTranscribe é um app web gratuito que reduz o incômodo de alternar entre um media player e um editor de documentos ao transcrever entrevistas gravadas
  • Ele permite controlar a reprodução e a digitação na mesma tela, com controle de pausa, retrocesso e avanço rápido apenas pelo teclado
  • É possível inserir timestamps interativos na transcrição para ir diretamente a um ponto específico, e o trabalho é salvo automaticamente a cada segundo no armazenamento do navegador
  • Os arquivos de áudio e as transcrições são tratados de forma privada, sem sair do computador, e podem ser exportados para Markdown, texto simples e Google Docs
  • Suporta áudio em mp3/ogg/webm/wav e vídeo em mp4/ogg/webm, mas pressupõe um fluxo de uso em computadores desktop

Fluxo de transcrição concluído em uma única tela

  • oTranscribe é um app web gratuito para transcrever entrevistas gravadas
  • Só pode ser usado em computadores desktop
  • Para evitar alternar entre QuickTime e Word, ele reúne a entrada da transcrição e a reprodução de mídia na mesma tela
  • É possível controlar a reprodução e a formatação com atalhos de teclado
    • ESC para reproduzir/pausar
    • Pausar, retroceder, avançar rapidamente e ajustar a velocidade pelo teclado
    • Ctrl+J para inserir o timestamp atual
    • Ctrl+I para itálico, Ctrl+B para aplicar negrito
  • Ao clicar em um timestamp interativo dentro da transcrição, é possível ir para aquele ponto

Processamento de arquivos, salvamento e exportação

  • Os arquivos de áudio e as transcrições são processados de forma privada, sem sair do computador
  • O trabalho é salvo automaticamente a cada segundo no armazenamento do navegador
  • O histórico da transcrição é salvo como cópia a cada 5 minutos, mantendo até 100 backups
  • É possível salvar manualmente a qualquer momento com Ctrl+S
  • Formatos compatíveis

    • Áudio: mp3, ogg, webm, wav
    • Vídeo: mp4, ogg, webm
    • Arquivos de vídeo podem ser reproduzidos no player integrado
    • Há um recurso para inserir URLs de vídeos do YouTube
  • Exportação

    • Markdown .md
    • Texto simples .txt
    • Formato oTranscribe
    • Google Docs
    • oTranscribe é um projeto open source sob licença MIT
    • A ajuda pode ser consultada em Help

3 comentários

 
xguru 2024-08-11

Hum? Fiquei me perguntando como isso seria possível no navegador... mas então é só uma ferramenta para ouvir e transcrever manualmente, sem IA.

Hoje em dia o Whisper reconhece bem coreano, então fica a dúvida de por que usar algo assim...

 
znjadong 2024-08-14

Quando há muitos falantes, a pronúncia é pouco clara ou a qualidade da gravação não é boa, pode ser difícil contar com a ajuda da IA. E também há muitos casos em que é necessário um nível de qualidade superior a algo que simplesmente funcione “bem o suficiente”.

 
GN⁺ 2024-08-10
Comentários do Hacker News
  • Nesta semana precisei fazer transcrição com separação de locutores de uma entrevista com várias pessoas falando e testei https://github.com/MahmoudAshraf97/whisper-diarization, que funcionou muito bem
    Ele gera tanto um arquivo com números de locutor atribuídos a cada trecho contínuo de fala quanto um arquivo com timestamps que parecem adequados para usar como legendas

    • Tive bons resultados usando uma API hospedada de separação de locutores do Whisper chamada Spectropic [1] como plataforma
      Foi mais barato, muito mais fácil e mais rápido do que configurar e usar whisper-diarization em um M1. Audiogest [2] é um serviço web construído sobre a Spectropic, mas ainda não usei
      Não tenho relação com isso, sou apenas um cliente satisfeito, embora já tenha trocado bons e-mails com a pessoa que parece ser a desenvolvedora solo dessas ferramentas depois de reportar um bug
      [1] https://spectropic.ai/
      [2] https://audiogest.app/
    • Frequentemente gero legendas com o Whisper para filmes estrangeiros antigos e pouco conhecidos ou para vídeos curtos encontrados em canais estrangeiros no Telegram/Twitter
      Junto com um GPT para tradução, funciona bastante bem
      Se você tiver (V)RAM suficiente, também dá para fazer localmente, mas normalmente não tenho folga e por isso prefiro a API da OpenAI. Vários modelos da família Llama não chegam à qualidade do GPT-4
      Se você só precisa do Whisper e não de tradução, executar localmente é totalmente viável, e até o Whisper de alta qualidade cabe em 4 GB de (V)RAM
    • O problema do OpenAI Whisper é que ele é lento demais em máquinas só com CPU
      O Whisper.CPP é muito mais rápido que o Whisper, então seria ótimo se surgisse uma separação de locutores melhor sobre ele
    • O whisper-dia às vezes tem problemas estranhos que não consegui resolver, então, pessoalmente, o whisperX funcionou melhor para mim: https://github.com/m-bain/whisperX
    • É interessante ver problemas de aprendizado de máquina que tradicionalmente eram muito complexos e difíceis se tornando cada vez mais parecidos com commodities graças à IA
      Coisas como transcrição, tradução automática, OCR e reconhecimento de imagem entram nisso
  • Talvez fique um pouco ambíguo, mas o OTranscribe não é uma ferramenta automática de fala para texto, e sim uma UI para ajudar na transcrição manual
    Então não há IA aqui

    • Isso mesmo, é uma ferramenta projetada para auxiliar na transcrição manual
  • Existe algum app open source/pago/shareware/freeware que faça transcrição em tempo real palavra por palavra durante a gravação, funcione totalmente localmente e use modelos locais open source relativamente modernos?
    No momento uso o otter.ai para transcrição de reuniões em tempo real. Quando estou fazendo multitarefa e alguém me faz uma pergunta, é ótimo poder passar os olhos pela transcrição dos últimos segundos e me situar imediatamente, mas não é perfeito, às vezes há bastante atraso na transcrição do serviço em tempo real e também exige conexão com a internet
    Em compensação, a maioria dos apps baseados em Whisper e, da última vez que vi, o código de demonstração do whisper.cpp exigiam fornecer a gravação inteira de uma vez. Também existem outros que dependem do framework de ditado da Apple e afins, mas atualmente os recursos parecem um pouco defasados
    Fico curioso para saber se alguém realmente usa algo assim

    • Por outra necessidade, relacionada ao fato de eu não ouvir bem, criei minha própria solução local-first que faz transcrição em tempo real palavra por palavra totalmente local
      É uma ferramenta que uso todos os dias para transcrever reuniões, entrevistas etc. Como todos os dados ficam na minha máquina, não preciso me preocupar com privacidade ao transcrever reuniões de trabalho
      É tão rápida quanto o Otter.ai, mas claramente ainda há espaço para melhorar a experiência do usuário e a velocidade. Porém, só funciona em MacBooks com Apple silicon
      Se tiver interesse, podemos conversar por e-mail (veja meu perfil no HN)
    • Estou usando o Transcribro[0] no Android/GrapheneOS
      É software livre e de código aberto e funciona totalmente localmente. Não é em tempo real palavra por palavra, mas não precisa esperar o upload do áudio inteiro para começar a trabalhar. Eu o uso em um Pixel 5a, então nem é um hardware excepcional
      Ele funciona bem o suficiente a ponto de eu também usá-lo para mandar mensagens para minha máquina Linux pelo Telegram quando não quero digitar. É uma gambiarra nada elegante, mas resolve o problema
      Passei algumas horas procurando uma alternativa nativa para Linux ou tentando rodá-lo no Waydroid, mas não encontrei nada que funcionasse tão bem, então decidi não deixar que o “polido” fosse inimigo do “bom o suficiente”
      [0] https://github.com/soupslurpr/Transcribro
    • Os telefones Google Pixel têm esse recurso e ele funciona muito bem
    • Ajudei a programar o oTranscribe+ [0], que faz algo parecido com o que foi pedido
      É um app desktop usando ElectronJS e a versão do oTranscribe da época, e também há uma versão web e PWA [1]
      Na época, o modelo de linguagem usado era o do BSC (Barcelona Supercomputing Center), e a transcrição era feita em WASM com base no Vosk [2]
      [0] https://github.com/projecte-aina/oTranscribe-plus
      [1] https://otranscribe.bsc.es/
      [2] https://github.com/alphacep/vosk-api
    • Sim, é possível. O app TestFlight do WhisperKit oferece suporte aos três em Apple Silicon: https://www.takeargmax.com/blog/whisperkit
      Também seria bom ter separação de locutores, mas estou esperando isso ser adicionado ao Whisper upstream: https://github.com/argmaxinc/WhisperKit/issues/31
  • É um pouco surpreendente que não haja integração com IA
    Se você quer resultados com qualidade de publicação, mesmo os resultados de IA ainda precisam de revisão e verificação de qualidade. É preciso marcar quem falou quando, ou fazer identificação de falantes — algo que pelo menos o Whisper não faz — ou corrigir sobrenomes incomuns etc.
    Então, mesmo para quem usa IA, ainda é necessário um bom instrumento para ajuste/finalização/revisão, e isso provavelmente seria parecido com uma ferramenta de transcrição não assistida

    • Esta ferramenta foi criada há muito tempo por Elliot Bentley, ex-jornalista do WSJ Graphics e hoje na Datawrapper
      Agora ela é mantida pelo Muckrock e não teve mudanças por um bom tempo
      Por isso não há integrações desse tipo. Na época, essa tecnologia nem existia
  • Segundo o FAQ, a resposta para “oTranscribe converte áudio em texto automaticamente?” é “não”
    O oTranscribe torna o trabalho manual de transcrever áudio muito menos doloroso, mas a transcrição em si ainda precisa ser feita por você

  • Atualmente estou usando o app gratuito para iOS do Aiko, que faz transcrição offline com o modelo Whisper da OpenAI
    Até agora tem funcionado bem, e é possível exportar em formatos como SRT, TXT, CSV, JSON e texto com timestamps
    https://sindresorhus.com/aiko

  • Se você precisa de transcrições de arquivos de áudio/vídeo, também pode experimentar meu serviço TurboScribe https://turboscribe.ai/ quando quiser
    É 100% gratuito até 3 arquivos por dia, com limite de 30 minutos por arquivo, e o plano pago é ilimitado, com transcrições de até 10 horas por arquivo
    Também oferece reconhecimento de falantes, formatos comuns de exportação (TXT, DOCX, PDF, SRT, CSV) e ferramentas de IA para trabalhar com transcrições

    • Tive bons resultados com o plano pago do TurboScribe e gosto do fato de ser oferecido como serviço
      Costumo usar em gravações de vídeo de 2 a 3 horas com vários falantes, e a ferramenta de edição para organizar antes de exportar é útil
    • Parece bom. Fico curioso se existe API ou se há planos de disponibilizar uma
  • Fiquei curioso para ver até que ponto seria possível fazer transcrição com o Gemini-1.5-Pro-Experiment-0801, que talvez seja o melhor LLM multimodal no momento, então fiz a transcrição de 5 minutos da entrevista de hoje entre Ezra Klein e Nancy Pelosi
    O resultado está aqui: https://www.gally.net/temp/20240809geminitranscription/index...
    Tirando pequenos problemas de pontuação e maiúsculas/minúsculas, a transcrição do Gemini pareceu quase perfeita. Houve só uma ou duas palavras que pareceram ter sido ouvidas errado, e se eu tivesse transcrito manualmente provavelmente teria errado mais do que isso
    O trecho “And then he comes up with "weird," which becomes viral and the rest, and here he is.” chamou especialmente a atenção
    Como o Gemini conseguiu colocar aspas em “weird”, indicando corretamente que a pessoa estava se referindo à própria palavra usada por Walz? Segundo a Politico, a primeira vez que Walz usou essa palavra na mídia nesse contexto foi em 23 de julho
    https://www.politico.com/news/2024/07/26/trump-vance-weird-0...

    • Talvez tenham existido dois fatores para esse resultado impressionante, inclusive com as aspas bem colocadas: pistas auditivas e o fato de que, sem aspas, a frase fica gramaticalmente estranha e perde o sentido
      É só um palpite, mas é bem possível que LLMs ou outros sistemas de reconhecimento de fala usem o contexto da frase para reconhecer palavras individuais e pontuação, e isso parece um caso em que tudo se encaixou bem
      A audição humana é parecida. Com contexto, dá para entender palavras mesmo quando a fala é muito embolada ou rápida
      No fim, acabamos ouvindo por blocos de frases, não palavra por palavra
    • É bem possível que o modelo consiga captar pistas linguísticas em torno das aspas
      Se houver um arquivo de áudio ou vídeo, eu gostaria de colocá-lo no nosso editor de vídeo com IA para ver como ele pontua a transcrição
  • Também há uma ferramenta de transcrição que usa Whisper e WASM no navegador para transcrever arquivos de vídeo/áudio e gerar arquivos .txt, .srt e .vtt
    Talvez no futuro também passe a oferecer suporte ao Whisper Turbo
    https://video2srt.ccextractor.org/
    Só para constar, estou trabalhando nesse projeto

  • Uso isso bastante. É bom, simples e tem exatamente as ferramentas de que preciso, ou seja, controle de velocidade de reprodução e pausa/reprodução fáceis, sem nada além disso
    Prefiro muito mais isso do que ferramentas de transcrição automática que geram 40 páginas de “hum”, “ahn” e coisas do tipo, que depois precisam ser filtradas e editadas

    • Não daria para colocar a transcrição em um LLM e pedir para remover os hum, ahn e outras muletas?