VocalStack Logo

Documentation

Получаване на данни за транскрипция

Получаване на данни от чакащи или завършени транскрипции

Сесии за транскрипция

Наблюдавайте и управлявайте състоянието на транскрипцията със сесии

Превод на транскрипция

Превод на транскрибиран текст на друг език

Преписване на аудио от адрес

Транскрипция на реч от предварително записано аудио в URL към обикновен текст

Токени за удостоверяване от страна на клиента

Създаване на временен знак за удостоверяване за клиентски заявки

Заявка и отговор за транскрипция

Общи опции за заявка и отговори за всички операции по транскрипция Използвайте опциите, за да конфигурирате настройките за транскрипция

Преписване и представяне на сесия на полиглот

Създаване на сесия, която може да се използва за излъчване на транскрипция на живо чрез публична споделяща връзка

Преписване от микрофон или поток на живо

Преглед на документацията
Преписвайте реч на живо от микрофон или поток на живо. Интегрирайте с Полиглот, за да създадете публична връзка за споделяне на транскрипцията, която потребителите могат да четат на всеки език.
За да транскрибираме от микрофон, трябва непрекъснато да изпращаме пакети с аудио данни към API.
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 } });
Получаването на аудио потока от данни ще се различава в зависимост от средата, в която искате да изпълните операцията по транскрипция. Ето няколко примера за това как можете да направите това:
В NextJS трябва да инсталирате пакет, който може да извлича аудио данни от вашето устройство, които след това можете да препратите към VocalStack API. Ето един пример:
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();
В уеб браузъра може да искате да използвате. Медиа рекордер (Може да е добра идея да се използва и пакет като, който да се инсталира на компютъра, който ще се използва за изпращане на съобщението.) запис което подобрява съвместимостта на браузъра)
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);
Имайте предвид, че за достъп до уеб клиентите ще трябва да използвате удостоверителен токен:
Токени за удостоверяване от страна на клиента
Създаване на временен знак за удостоверяване за клиентски заявки. Безопасно изпълнявайте заявки в уеб браузъри, без да излагате вашите ключове.
VocalStack API може да се използва за транскрибиране на всеки HLS LiveStream URL, включително източници като Youtube Live, Facebook Live и Twitch. Моля, имайте предвид, че адресът на потока трябва да бъде. .m3u8 файлово разширение, което представлява валиден HLS (HTTP Live Streaming) плейлист файл.
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 });
Интегрирането на транскрипции на живо с Полиглот е толкова просто, колкото добавянето на. полиглот_ид опция за искане на транскрипция, както е показано в примерите по-горе.
Полиглот създава публична връзка, която може да бъде споделена, свързана с вашите транскрипции (връзката може да бъде защитена с парола):
  • Потребителите могат да четат транскрипцията ви в реално време, като използват връзката.
  • Потребителите могат да избират езика, на който да четат транскрипцията в реално време.
  • Потребителите могат да четат транскрипцията ви по-късно, както и всички други транскрипции, интегрирани с конкретната ви сесия.
Можете да използвате VocalStack API и да внедрите свой собствен потребителски интерфейс с бял етикет, вместо да използвате този, предоставен от VocalStack. Ще се радваме да чуем за него, ако го направите, за да можем да научим как да направим продукта си по-добър!
Научете повече за това как работи Полиглот в. Всички права запазени / Полиглот.
Преписване и представяне на сесия на полиглот
Създаване на сесия, която може да се използва за излъчване на транскрипция на живо чрез публична споделяща връзка. Потребителите могат да четат транскрипции на живо на предпочитания от тях език и дори минали транскрипции, когато сесията ви е неактивна.
Получаване на данни за транскрипция
Получаване на данни от чакащи или завършени транскрипции. Това включва графика за транскрипция, ключови думи, резюме и сегменти на абзац.
Токени за удостоверяване от страна на клиента
Създаване на временен знак за удостоверяване за клиентски заявки. Безопасно изпълнявайте заявки в уеб браузъри, без да излагате вашите ключове.
Scroll Up