VocalStack Logo

Documentation

Obtén les dades de transcripció

Obtén dades de les transcripcions pendents o completades

Sessions de transcripció

Monitoritzeu i gestioneu l'estat de la transcripció amb sessions

Tradueix una transcripció

Tradueix el text transcrit a un altre idioma

Transcriu àudio des d' URL

Transcriu la veu d'àudio preenregistrat en un URL a text pla

Tokens d' autenticació del client

Crea un token d' autenticació temporal per a peticions del client

Petició i resposta de transcripció

Opcions de petició i respostes comunes per a totes les operacions de transcripció

Transcriviu i presenteu una sessió poliglota

Crea una sessió que es pot usar per a emetre una transcripció en directe a través d' un enllaç públic compartible

Transcriviu des d'un micròfon o LiveStream

Navega per la documentació
Transcriviu el discurs en directe des d'un micròfon o una transmissió en directe. Integrar amb Polyglot per crear un enllaç públic compartible per a la transcripció que els usuaris puguin llegir en qualsevol idioma.
Per a transcriure des d' un micròfon hem d' enviar contínuament paquets de dades d' àudio a l' 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 } });
L' obtenció de les dades de flux d' àudio variarà en funció de l' entorn on voleu executar l' operació de transcripció. Aquí teniu un parell d' exemples de com podeu fer- ho:
En NextJS hauríeu d'instal·lar un paquet que pugui recuperar dades d'àudio del vostre dispositiu, que després podeu reenviar a l'API VocalStack. Aquí teniu un exemple:
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();
En el navegador web podeu voler usar el MediaRecorder API com es pot veure en el següent exemple. (També pot ser una bona idea utilitzar un paquet com 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);
Tingueu en compte que per accedir a l' API VocalStack en clients web haureu d' usar un token d' autorització:
Tokens d' autenticació del client
Crea un token d' autenticació temporal per a peticions del client. Implementeu de manera segura les peticions de l'API en els navegadors web sense exposar les vostres claus de l'API.
L'API VocalStack es pot utilitzar per transcriure qualsevol URL HLS LiveStream, incloent fonts com Youtube Live, Facebook Live i Twitch. Tingueu en compte que l' URL del flux ha de ser un . m3u8 extensió de fitxer que representa un fitxer de llista de reproducció HLS (HTTP Live Streaming) vàlid.
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 les transcripcions en directe amb Polyglot és tan senzill com afegir un poliglot_ id opció a la sol·licitud de transcripció, com es demostra en els exemples anteriors.
Polyglot crea un enllaç públic compartible associat amb les vostres transcripcions (l' enllaç pot estar protegit per contrasenya):
  • Els usuaris poden llegir la vostra transcripció en temps real usant l'enllaç.
  • Els usuaris poden triar l'idioma en què llegir la transcripció en temps real.
  • Els usuaris poden llegir la vostra transcripció més tard, i totes les altres transcripcions integrades amb la vostra sessió particular de Polyglot.
Podeu utilitzar l'API de VocalStack i implementar la vostra pròpia IU amb etiqueta blanca en lloc d'utilitzar la que proporciona VocalStack. Ens encantaria saber-ho si ho fas, així podrem aprendre sobre com fer el nostre producte millor!
Aprendre més sobre com funciona Polyglot a vocalstack.com/polyglot.
Transcriviu i presenteu una sessió poliglota
Crea una sessió que es pot usar per a emetre una transcripció en directe a través d' un enllaç públic compartible. Els usuaris poden llegir les transcripcions en viu en el seu idioma preferit, i fins i tot les transcripcions passades quan la vostra sessió està inactiva.
Obtén les dades de transcripció
Obtén dades de les transcripcions pendents o completades. Això inclou la línia de temps de transcripció, paraules clau, resum i segments de paràgraf.
Tokens d' autenticació del client
Crea un token d' autenticació temporal per a peticions del client. Implementeu de manera segura les peticions de l'API en els navegadors web sense exposar les vostres claus de l'API.
Scroll Up