VocalStack Logo

Documentation

Obter dados de transcrição

Obtenha dados de transcrições pendentes ou concluídas

Sessões de transcrição

Monitore e gerencie o estado da transcrição com sessões

Traduzir uma transcrição

Traduza o texto transcrito para outro idioma

Transcrever áudio a partir de URL

Transcrever fala de áudio pré-gravado em um URL para texto simples

Tokens de autenticação do lado do cliente

Criar um token de autenticação temporário para solicitações do lado do cliente

Pedido e Resposta de Transcrição

Opções de solicitação e respostas comuns para todas as operações de transcrição

Transcrever e Apresentar uma Sessão Poliglota

Crie uma sessão que possa ser usada para transmitir uma transcrição ao vivo por meio de um link compartilhável público

Transcrever de um microfone ou LiveStream

Procurar na documentação
Transcreva falas ao vivo de um microfone ou transmissão ao vivo. Integre-se com o Polyglot para criar um link público compartilhável para a transcrição que os usuários podem ler em qualquer idioma.
Para transcrever de um microfone, devemos enviar continuamente pacotes de fluxo de dados de áudio para a API VocalStack.
JavaScript
import { LiveTranscription } from '@vocalstack/js-sdk'; const sdk = new LiveTranscription({ apiKey: 'YOUR-API-KEY' }); const stream = await sdk.connect({ // Optional: Integrate this stream with a Polyglot session polyglot_id: 'YOUR-POLYGLOT-SESSION-ID', // Optional: language of the speech spoken // (this can be used to improve the transcription accuracy) language: 'en', // Optional: Translate the transcription to these languages translations: ['de'], // Optional: Stop the stream after this many seconds of inactivity timeout_period_s: 60, // Optional: Hard stop the stream after this many seconds max_duration_s: 300, }); // Start the stream stream.start(); // Get audio data from a microphone and send it to the stream // stream.sendBuffer(buffer); // *** This is a placeholder for the actual implementation *** // Manually stop the stream (in this example, after 60 seconds) // If max_duration_s is set, stopping the stream is optional setTimeout(() => stream.stop(), 60000); // Listen for stream transcription data stream.onData((response) => { const { status, data } = response; console.log(status); // 'waiting', 'processing', 'done', 'stopping' or 'error' if (data) { console.log(data.timeline); // an object with the transcription timeline } if (status === 'done') { console.log(data.summary); // a summary of the transcription console.log(data.keywords); // an array of keywords console.log(data.paragraphs); // the entire transcription in paragraph form } });
Obter os dados de fluxo de áudio será diferente com base no ambiente onde você deseja executar a operação de transcrição. Aqui estão alguns exemplos de como você pode fazer isso:
No NextJS você deve instalar um pacote que possa buscar dados de áudio do seu dispositivo, que você pode então encaminhar para a API VocalStack. Aqui está um exemplo:
JavaScript
const mic = require('mic'); // Create a new instance of the microphone utility const micInstance = mic(); // Get the audio input stream const micStream = micInstance.getAudioStream(); // Capture the audio data from the microphone micStream.on('data', (data) => { stream.sendBuffer(data); // send the buffer data to the VocalStack API }); // Start capturing audio from the microphone micInstance.start();
No navegador da web, você pode querer usar o. MediaRecorder (Também pode ser uma boa ideia usar um pacote como o.py, que pode ser encontrado no site do desenvolvedor.) recordrtc which improves browser compatibility)
JavaScript
// Request access to the microphone const mediaStream = await navigator.mediaDevices.getUserMedia({ audio: true }); // Create a MediaRecorder instance to capture audio data const mediaRecorder = new MediaRecorder(mediaStream); // Event handler to process audio data packets mediaRecorder.ondataavailable = async (event) => { const blob = event.data; // this is the audio packet (Blob) const buffer = await blob.arrayBuffer(); // convert the Blob to a Buffer stream.sendBuffer(buffer); // send the buffer data to the VocalStack API }; // Start capturing audio, and send it to the stream every second mediaRecorder.start(1000);
Observe que para acessar a API VocalStack em clientes web, você precisará usar um token de autenticação:
Tokens de autenticação do lado do cliente
Criar um token de autenticação temporário para solicitações do lado do cliente. Implemente solicitações de API com segurança em navegadores da Web sem expor suas chaves de API.
VocalStack API pode ser usado para transcrever qualquer URL HLS LiveStream, incluindo fontes como Youtube Live, Facebook Live e Twitch. Por favor, note que o URL do fluxo deve ser um. .m3u8 extensão de arquivo que representa um arquivo de lista de reprodução HLS (HTTP Live Streaming) válido.
JavaScript
import { LiveTranscription } from '@vocalstack/js-sdk'; const sdk = new LiveTranscription({ apiKey: 'YOUR-API-KEY' }); const stream = await sdk.connect({ // must be a valid HLS streaming protocol livestream_url: 'http://a.files.bbci.co.uk/media/live/manifesto/audio/simulcast/hls/nonuk/sbr_low/ak/bbc_world_service.m3u8', // The rest of these options are the same as for microphone live transcriptons }); stream.start(); stream.onData((response) => { // The response object is the same as the one // returned by microphone transcriptions });
Integrar transcrições ao vivo com o Polyglot é tão simples quanto adicionar um poliglot_id opção para o pedido de transcrição, como demonstrado nos exemplos acima.
O Polyglot cria um link público compartilhável associado às suas transcrições (o link pode ser protegido por senha):
  • Os usuários podem ler sua transcrição em tempo real usando o link.
  • Os usuários podem escolher o idioma em que querem ler a transcrição em tempo real.
  • Os usuários podem ler sua transcrição em um momento posterior, e todas as outras transcrições integradas com sua sessão Polyglot particular.
Você pode usar a API VocalStack e implementar sua própria interface de usuário com marca branca em vez de usar a fornecida pela VocalStack. Nós adoraríamos ouvir sobre isso se você fizer, para que possamos aprender sobre como fazer nosso produto melhor!
Saiba mais sobre como o Polyglot funciona em Vocalstack.com/polyglot.
Transcrever e Apresentar uma Sessão Poliglota
Crie uma sessão que possa ser usada para transmitir uma transcrição ao vivo por meio de um link compartilhável público. Os usuários podem ler transcrições ao vivo em seu idioma preferido e até mesmo transcrições passadas quando sua sessão estiver inativa.
Obter dados de transcrição
Obtenha dados de transcrições pendentes ou concluídas. Isso inclui a linha do tempo da transcrição, palavras-chave, resumo e segmentos de parágrafo.
Tokens de autenticação do lado do cliente
Criar um token de autenticação temporário para solicitações do lado do cliente. Implemente solicitações de API com segurança em navegadores da Web sem expor suas chaves de API.
Scroll Up